Browse Source

cleanup _cmd_build

pull/16/head
gorgone 5 years ago
parent
commit
b1792eafb3
  1. 289
      support/functions/_cmd_build
  2. 4
      support/functions/_compress

289
support/functions/_cmd_build

@ -1,58 +1,75 @@
#!/bin/bash #!/bin/bash
_cmd_build(){ _cmd_build(){
[ ! -d "$svndir" ] || [ -f "$workdir/NEED-CHECKOUT" ] && checkout; [ ! -d "$svndir" ] || [ -f "$workdir/NEED-CHECKOUT" ] && checkout
if [ "$_toolchainname" == "native" ];then
log_name="$(date +%F).$(date +%X).$(hostname).log"; if [ "$_toolchainname" == "native" ]
then
log_name="$(date +%F).$(date +%X).$(hostname).log"
else else
log_name="$(date +%F).$(date +%X).$_toolchainname.log"; log_name="$(date +%F).$(date +%X).$_toolchainname.log"
fi; fi
source "$tccfgdir/$_toolchainname";
_reset_config; source "$tccfgdir/$_toolchainname"
echo $WH; _reset_config
ologo >"$ldir/$log_name"; printf $WH
ologo >"$ldir/$log_name"
#set build defaults #set build defaults
CROSS="$tcdir/$_toolchainname/bin/$_compiler"; CROSS="$tcdir/$_toolchainname/bin/$_compiler"
[ "$_stagingdir" == "1" ] && export STAGING_DIR="$tcdir/$_toolchainname"; [ "$_stagingdir" == "1" ] && export STAGING_DIR="$tcdir/$_toolchainname"
[ -f "$configdir/compiler_option" ] && co=$(cat "$configdir/compiler_option") || co="-O2"; [ -f "$configdir/compiler_option" ] && co=$(cat "$configdir/compiler_option") || co="-O2"
#toolchain defaults #toolchain defaults
for defa in $default_use;do for defa in $default_use
USE_vars[$defa]="$defa=1"; do
done; USE_vars[$defa]="$defa=1"
done
#disable by cmd #disable by cmd
for e in ${USE_vars[*]};do for e in ${USE_vars[*]}
for d in ${USE_vars_disable[*]};do do
for d in ${USE_vars_disable[*]}
do
[ "$e" == "$d" ] && USE_vars[${e:0: -2}]=; [ "$e" == "$d" ] && USE_vars[${e:0: -2}]=;
done; done
done;
cd "$svndir"; done
cd "$svndir"
#make clean #make clean
make distclean > /dev/null 2>&1; make distclean > /dev/null 2>&1;
#do enable and disable modules #do enable and disable modules
for am in "${all_cc[@]}";do for am in "${all_cc[@]}"
chose="false"; do
if [ "${am:${#am} - 3}" == "_on" ];then
e="${am:0: -3}";"$svndir/config.sh" -E "$e" |awk '{printf "\033[1;37m"} {printf " | %s : ", $1} {printf "\033[1;32m"} {printf "%s\n", $2}'; chose="false"
fi; if [ "${am:${#am} - 3}" == "_on" ]
if [ "${am:${#am} - 4}" == "_off" ];then then
d="${am:0: -4}";"$svndir/config.sh" -D "$d" |awk '{printf "\033[1;37m"} {printf " | %s : ", $1} {printf "\033[1;31m"} {printf "%s\n", $2}'; e="${am:0: -3}"
fi; "$svndir/config.sh" -E "$e" |awk '{printf "\033[1;37m"} {printf " | %s : ", $1} {printf "\033[1;32m"} {printf "%s\n", $2}'
done; fi
if [ "${am:${#am} - 4}" == "_off" ]
then
d="${am:0: -4}"
"$svndir/config.sh" -D "$d" |awk '{printf "\033[1;37m"} {printf " | %s : ", $1} {printf "\033[1;31m"} {printf "%s\n", $2}'
fi
done
#fix smargo case #fix smargo case
if [ "$(./config.sh -e CARDREADER_SMARGO)" == "Y" ] || [ "${USE_vars[$e]}" == "USE_LIBUSB=1" ];then if [ "$(./config.sh -e CARDREADER_SMARGO)" == "Y" ] || [ "${USE_vars[$e]}" == "USE_LIBUSB=1" ]
silent=$(./config.sh -E CARDREADER_SMARGO); then
check_smargo; silent=$(./config.sh -E CARDREADER_SMARGO)
check_smargo
else else
silent=$(./config.sh -D CARDREADER_SMARGO); silent=$(./config.sh -D CARDREADER_SMARGO)
check_smargo; check_smargo
fi; fi
#fill use variables and set name addons #fill use variables and set name addons
USESTRING=; USESTRING=;
@ -60,23 +77,30 @@ _cmd_build(){
_pcsc=; _pcsc=;
_stapi=; _stapi=;
_stapi5=; _stapi5=;
_do_patch="0"; _do_patch="0"
for e in "${!USE_vars[@]}";do for e in "${!USE_vars[@]}"
for e1 in $_block;do do
for e1 in $_block
do
USE_vars[$e1]=; USE_vars[$e1]=;
done; done
uv=${USE_vars[$e]};
if [ ! "$e" == "USE_CONFDIR" ];then uv=${USE_vars[$e]}
USESTRING="$uv $USESTRING"; if [ ! "$e" == "USE_CONFDIR" ]
if [ "${#USE_vars[$e]}" -gt "5" ];then then
echo -e "$w_l | set : $c_l${USE_vars[$e]}"; USESTRING="$uv $USESTRING"
fi; if [ "${#USE_vars[$e]}" -gt "5" ]
fi; then
printf "\n$y_l | set : ${USE_vars[$e]}"
fi
fi
case "$uv" in case "$uv" in
"USE_LIBUSB=1") "USE_LIBUSB=1")
_usb="-libusb";; # set libusb suffix to name _usb="-libusb";; # set libusb suffix to name
"USE_PCSC=1") "USE_PCSC=1")
_pcsc_on;_pcsc="-pcsc";;# set pcsc suffix to name _pcsc_on
_pcsc="-pcsc";; # set pcsc suffix to name
"USE_PATCH=1") "USE_PATCH=1")
_do_patch="1";; # enable patching _do_patch="1";; # enable patching
"USE_TARGZ=1") "USE_TARGZ=1")
@ -84,62 +108,69 @@ _cmd_build(){
"USE_COMPRESS=1") "USE_COMPRESS=1")
s3cfg_vars[COMPRESS]=1;;# overwrite global s3cfg_vars[COMPRESS]=1;;# overwrite global
"USE_STAPI=1") "USE_STAPI=1")
_stapi="-stapi"; _stapi="-stapi"
STAPI_LIB="STAPI_LIB=$sdir/stapi/liboscam_stapi.a"; STAPI_LIB="STAPI_LIB=$sdir/stapi/liboscam_stapi.a"
echo -e "$w_l | LIB : "$c_l"liboscam_stapi.a"$w_l;; printf "$w_l | LIB : "$c_l"liboscam_stapi.a"$w_l;;
"USE_STAPI5=1") "USE_STAPI5=1")
_stapi5="-stapi5"; _stapi5="-stapi5"
[ "$OPENBOX" == "1" ] && STAPI_LIB="STAPI5_LIB=$sdir/stapi/liboscam_stapi5_OPENBOX.a" && echo -e "$w_l| LIB : "$c_l"liboscam_stapi5_OPENBOX.a"$w_l; [ "$OPENBOX" == "1" ] && STAPI_LIB="STAPI5_LIB=$sdir/stapi/liboscam_stapi5_OPENBOX.a" && printf "$w_l| LIB : "$c_l"liboscam_stapi5_OPENBOX.a"$w_l
[ "$UFS916003" == "1" ] && STAPI_LIB="STAPI5_LIB=$sdir/stapi/liboscam_stapi5_UFS916_0.03.a" && echo -e "$w_l| LIB : "$c_l"liboscam_stapi5_UFS916_0.03.a"$w_l; [ "$UFS916003" == "1" ] && STAPI_LIB="STAPI5_LIB=$sdir/stapi/liboscam_stapi5_UFS916_0.03.a" && printf "$w_l| LIB : "$c_l"liboscam_stapi5_UFS916_0.03.a"$w_l
[ "$UFS916003" == "0" ] && [ "$OPENBOX" == "0" ] && STAPI_LIB="STAPI5_LIB=$sdir/stapi/liboscam_stapi5_UFS916.a" && echo -e "$w_l| LIB : "$c_l"liboscam_stapi5_UFS916.a"$w_l;; [ "$UFS916003" == "0" ] && [ "$OPENBOX" == "0" ] && STAPI_LIB="STAPI5_LIB=$sdir/stapi/liboscam_stapi5_UFS916.a" && printf "$w_l| LIB : "$c_l"liboscam_stapi5_UFS916.a"$w_l;;
esac; esac
done;
done
#change default oscam CONF_DIR #change default oscam CONF_DIR
if [ ! "$CUSTOM_CONFDIR" == "not_set" ]; then if [ ! "$CUSTOM_CONFDIR" == "not_set" ]
CONFDIR="$CUSTOM_CONFDIR"; then
echo -e $w_l" | set : "$r_l"custom CONF_DIR=$CONFDIR"$w_l; CONFDIR="$CUSTOM_CONFDIR"
printf $w_l" | set : "$r_l"custom CONF_DIR=$CONFDIR"$w_l
else else
CONFDIR="$_oscamconfdir_default"; CONFDIR="$_oscamconfdir_default"
fi; fi
#patching #patching
if [ "$_do_patch" == "1" ];then if [ "$_do_patch" == "1" ]
if [ -f "$workdir/SVN-IS-PATCHED" ];then then
quicksvnrestore $_toolchainname; if [ -f "$workdir/SVN-IS-PATCHED" ]
_apply_consolepatch; then
quicksvnrestore $_toolchainname
_apply_consolepatch
else else
_apply_consolepatch; _apply_consolepatch
fi; fi
fi; fi
#echo if build with profile #if build with profile
[ ! "$pf" == "empty" ] && echo -e "$y_l | PROFILE : $pf_name"; [ ! "$pf" == "empty" ] && printf "$y_l | PROFILE : $pf_name"
#echo IF SVN is Patched #IF SVN is Patched
[ -f "$workdir/SVN-IS-PATCHED" ] && echo -e $w_l" | ISPATCHED :$P YES"; [ -f "$workdir/SVN-IS-PATCHED" ] && printf $w_l" | ISPATCHED :$P YES"
#echo max cpu usage #max cpu usage
if [ -f "$configdir/max_cpus" ];then if [ -f "$configdir/max_cpus" ]
cpus="$(cat "$configdir/max_cpus")"; then
[ ! "$cpus" -gt "1" ] && cpus="1"; cpus="$(< "$configdir/max_cpus")"
[ "$cpus" -gt "$(CPUS)" ] && cpus="$(CPUS)"; [ ! "$cpus" -gt "1" ] && cpus="1"
echo -en "$y_l\n | MAX_CPUS : $txt_use $cpus $txt_of $(CPUS) CPU(s)"; [ "$cpus" -gt "$(CPUS)" ] && cpus="$(CPUS)"
printf "$y_l\n | MAX_CPUS : $txt_use $cpus $txt_of $(CPUS) CPU(s)"
else else
cpus="$(CPUS)"; cpus="$(CPUS)"
fi; fi
[ "${s3cfg_vars[USE_VERBOSE]}" == "1" ] && _verbose="V=1";
[ "${s3cfg_vars[USE_VERBOSE]}" == "1" ] && _verbose="V=1"
#killstapi for nonsh4 #killstapi for nonsh4
if [ ! "$_toolchainname" == "sh4" ] || [ ! "$_toolchainname" == "sh_4" ];then if [ ! "$_toolchainname" == "sh4" ] || [ ! "$_toolchainname" == "sh_4" ]
silent=$("$svndir/config.sh" --disable CARDREADER_STAPI CARDREADER_STAPI5); then
fi; silent=$("$svndir/config.sh" --disable CARDREADER_STAPI CARDREADER_STAPI5)
fi
#build #build
timer_start; timer_start
_generate_oscam_name "$_toolchainname"; _generate_oscam_name "$_toolchainname"
_nl; _nl
USESTRING=${USE_vars[@]}; USESTRING=${USE_vars[@]}
make -j"$cpus" $_verbose \ make -j"$cpus" $_verbose \
"CONF_DIR=$CONFDIR" \ "CONF_DIR=$CONFDIR" \
"OSCAM_BIN=$bdir/$oscam_name" \ "OSCAM_BIN=$bdir/$oscam_name" \
@ -150,52 +181,62 @@ fi;
|grep --line-buffered -v 'BFD\|^/' \ |grep --line-buffered -v 'BFD\|^/' \
|grep --line-buffered '^CC\|^GEN\|UseFlags\| CONF_DIR =\|Binary\|LINK\|STRIP\|BUILD\|Addons\|Protocols\|Readers\|CardRdrs\|^/' \ |grep --line-buffered '^CC\|^GEN\|UseFlags\| CONF_DIR =\|Binary\|LINK\|STRIP\|BUILD\|Addons\|Protocols\|Readers\|CardRdrs\|^/' \
|sed -e "s/^|/"$Y" |/g;s/^LINK/"$P" LINK ------->$W/g;s/^STRIP/"$P" STRIP ------>$W/g;s/^CC\|^BUILD/"$G" BUILD ------>$W/g;s/^GEN/"$C" GEN -------->/g; |sed -e "s/^|/"$Y" |/g;s/^LINK/"$P" LINK ------->$W/g;s/^STRIP/"$P" STRIP ------>$W/g;s/^CC\|^BUILD/"$G" BUILD ------>$W/g;s/^GEN/"$C" GEN -------->/g;
s/WEBIF_//g;s/WITH_//g;s/MODULE_//g;s/CS_//g;s/HAVE_//g;s/_CHARSETS//g;s/CW_CYCLE_CHECK/CWCC/g;s/SUPPORT//g;"; s/WEBIF_//g;s/WITH_//g;s/MODULE_//g;s/CS_//g;s/HAVE_//g;s/_CHARSETS//g;s/CW_CYCLE_CHECK/CWCC/g;s/SUPPORT//g;s/=/:/g;"
#calc buildtime #calc buildtime
timer_stop; timer_stop
timer_calc; timer_calc
bt="[ $txt_buildtime $((Tcalc / 60)) min(s) $((Tcalc % 60)) secs ]"; bt="[ $txt_buildtime $((Tcalc / 60)) min(s) $((Tcalc % 60)) secs ]"
#save list_smargo #save list_smargo
cd "$svndir/Distribution"; cd "$svndir/Distribution"
lsmn="$(ls list_smargo* 2> /dev/null)"; lsmn="$(ls list_smargo* 2> /dev/null)"
if [ "${s3cfg_vars[SAVE_LISTSMARGO]}" == "1" ] && [ -f "$svndir/Distribution/$lsmn" ];then
if [ "$_toolchainname" == "native" ];then if [ "${s3cfg_vars[SAVE_LISTSMARGO]}" == "1" ] && [ -f "$svndir/Distribution/$lsmn" ]
echo -e "$g_n"" SAVE -------> $w_l$lsmn$g_l $txt_as$y_l oscam-svn$(REVISION)-$(hostname)-list_smargo"; then
mv -f "$lsmn" "$bdir/oscam-svn$(REVISION)-$(hostname)-list_smargo";
tartmp="oscam-svn$(REVISION)-$(hostname)-list_smargo"; if [ "$_toolchainname" == "native" ]
then
printf "$g_n"" SAVE -------> $w_l$lsmn$g_l $txt_as$y_l oscam-svn$(REVISION)-$(hostname)-list_smargo"
mv -f "$lsmn" "$bdir/oscam-svn$(REVISION)-$(hostname)-list_smargo"
tartmp="oscam-svn$(REVISION)-$(hostname)-list_smargo"
else else
echo -e "$g_n"" SAVE -------> $w_l$lsmn$g_l $txt_as$y_l oscam-svn$(REVISION)-$_toolchainname-list_smargo"; printf "$g_n"" SAVE -------> $w_l$lsmn$g_l $txt_as$y_l oscam-svn$(REVISION)-$_toolchainname-list_smargo"
mv -f "$lsmn" "$bdir/oscam-svn$(REVISION)-$_toolchainname-list_smargo"; mv -f "$lsmn" "$bdir/oscam-svn$(REVISION)-$_toolchainname-list_smargo"
tartmp="oscam-svn$(REVISION)-$_toolchainname-list_smargo"; tartmp="oscam-svn$(REVISION)-$_toolchainname-list_smargo"
fi; fi
fi;
fi
#remove debug binary #remove debug binary
if [ "${s3cfg_vars[delete_oscamdebugbinary]}" == "1" ] && [ -f "$bdir/$oscam_name.debug" ];then if [ "${s3cfg_vars[delete_oscamdebugbinary]}" == "1" ] && [ -f "$bdir/$oscam_name.debug" ]
echo -e "$r_l"" REMOVE -----> $w_l$bdir/$oscam_name.debug";rm "$bdir/$oscam_name.debug"; then
fi; printf "$r_l"" REMOVE -----> $w_l$bdir/$oscam_name.debug"
rm "$bdir/$oscam_name.debug"
fi
#show build time #show build time
echo -e "$g_n""\n TIME -------> $bt\n$re_"; printf "$g_n""\n TIME -------> $bt$re_\n\n"
#compress cam #compress cam
if [ "${s3cfg_vars[COMPRESS]}" == "1" ];then if [ "${s3cfg_vars[COMPRESS]}" == "1" ]
echo -en "$w_l"" ENABLE -----> COMPRESSION:$y_l $txt_wait"; then
compress_cam "$oscam_name"; printf "$w_l"" ENABLE -----> COMPRESSION:$y_l $txt_wait"
fi; compress_cam "$oscam_name"
if [ "${s3cfg_vars[TARGZ]}" == "1" ];then
echo -en "$w_l"" ENABLE -----> TARGZ:$y_l $txt_wait\n";
tar_cam "$oscam_name" "$tartmp";
fi; fi;
if [ "${s3cfg_vars[TARGZ]}" == "1" ]
then
printf "$w_l"" ENABLE -----> TARGZ:$y_l $txt_wait\n"
tar_cam "$oscam_name" "$tartmp"
fi
#link lastlog #link lastlog
ln -sf "$ldir/$log_name" "$workdir/lastbuild.log"; ln -sf "$ldir/$log_name" "$workdir/lastbuild.log"
#build error message #build error message
error_on_build=$(grep -c1 error "$ldir/$log_name"); error_on_build=$(grep -c1 error "$ldir/$log_name")
[ "$error_on_build" -gt "0" ] && echo -e "$r_l\terrors on build found$w_l"; [ "$error_on_build" -gt "0" ] && printf "$r_l\terrors on build found$w_l"
echo -e "$re_$w_l"; printf "$re_$w_l"
exit; exit
}; }

4
support/functions/_compress

@ -76,10 +76,10 @@ tar_cam(){
then then
rm -rf "$adir/$1.tar.gz" rm -rf "$adir/$1.tar.gz"
mv -f "$1.tar.gz" "$adir" mv -f "$1.tar.gz" "$adir"
printf "$c_l"" MOVE -------> $p_l$1.tar.gz $g_l$txt_to $y_n$workdir/archive\n$rs_" printf "$c_l"" MOVE -------> $p_l$1.tar.gz $g_l$txt_to $y_n$workdir/archive$rs_\n\n"
else else
mv -f "$1.tar.gz" "$adir" mv -f "$1.tar.gz" "$adir"
echo -e "$c_l"" MOVE -------> $p_l$1.tar.gz $g_l$txt_to $y_n$workdir/archive\n$rs_" echo -e "$c_l"" MOVE -------> $p_l$1.tar.gz $g_l$txt_to $y_n$workdir/archive$rs_\n\n"
fi fi
else else

Loading…
Cancel
Save