#!/bin/sh HOMEDIR=`pwd` TMP=.tmp NEXT_LIST=.tmp2 GROUP=$1 SVNUSER=$2 SVNPASS=$3 SVNURL=$4 SVNPORT=$5 MAKETYPE=$6 if [ $# -ne 6 ]; then echo "|---------------------------------------------------------------------------|" echo "| |" echo "| IPK Make Script |" echo "| |" echo '| use ./runipk.sh |' echo "| |" echo "| for group |" echo "| for svnuser |" echo "| for svnpass |" echo "| for svnurl |" echo "| for svnport |" echo "| for maketype |" echo "| |" echo "|---------------------------------------------------------------------------|" echo "| v1.0@dev-team |" echo "|---------------------------------------------------------------------------|" exit 1 fi if [ $GROUP = "dev" ] || [ $GROUP = "update" ];then echo "group=$GROUP" else echo "group " exit 1 fi if [ $MAKETYPE = "online" ] || [ $MAKETYPE = "offline" ];then echo "maketype=$MAKETYPE" else echo "maketype " exit 1 fi rm -r "$HOME"/ipk/WWW/*.ipk > /dev/null 2>&1 rm -r "$HOME"/ipk/WWW/Packages* > /dev/null 2>&1 rm -r "$HOME"/ipk/WWW/PlugList > /dev/null 2>&1 rm -r "$HOME"/ipk/WWW/boot > /dev/null 2>&1 rm -r "$HOME"/ipk/*.ipk > /dev/null 2>&1 rm -r "$HOME"/ipk/Packages* > /dev/null 2>&1 rm -r "$HOME"/ipk/PlugList > /dev/null 2>&1 rm -r "$HOME"/ipk/boot > /dev/null 2>&1 svn co --username $SVNUSER --password $SVNPASS svn://"$SVNURL":"$SVNPORT"/ufs910/image/scripts $HOMEDIR/scripts svn co --username $SVNUSER --password $SVNPASS svn://"$SVNURL":"$SVNPORT"/ufs910/image/config $HOMEDIR/config . ./config/make-config if [ $GROUP = "dev" ];then mkdir -p "$WWWLOCAL"/"$WWWMAIN"/"$IPKGCROSS_BETA" ln -s "$WWWLOCAL"/"$WWWMAIN"/"$IPKGCROSS_BETA" "$HOME"/ipk/WWW ln -s "$HOME"/ipk/source "$WWWLOCAL"/"$WWWMAIN"/"$IPKGCROSS_BETA"/source elif [ $GROUP = "update" ];then mkdir -p "$WWWLOCAL"/"$WWWMAIN"/"$IPKGCROSS_RELEASE" ln -s "$WWWLOCAL"/"$WWWMAIN"/"$IPKGCROSS_RELEASE" "$HOME"/ipk/WWW ln -s "$HOME"/ipk/source "$WWWLOCAL"/"$WWWMAIN"/"$IPKGCROSS_RELEASE"/source fi ls -1 "$HOME"/ipk/source > aaf-flashbeta.txt LIST_LINE=`cat aaf-flashbeta.txt` ALLOWED=`cat "$HOME"/ipk/aaf-flashbeta_allowed` cd "$HOME"/ipk/WWW chmod -R 755 `find "$HOME"/ipk/source -type d -name "CONTROL"` chmod -R 755 `find "$HOME"/ipk/source -type d -name "bin"` chmod -R 755 `find "$HOME"/ipk/source -type d -name "sbin"` chmod -R 755 `find "$HOME"/ipk/source -type d -name "emu"` # for externel files #cp "$HOME"/WWW/civer/*.ipk ~/WWW for ROUND in $ALLOWED; do for DIR in $LIST_LINE; do echo $DIR > $TMP if [ ! `grep "$ROUND" $TMP | wc -l` -eq 0 ]; then echo ROUND $ROUND == $DIR DIR echo $DIR >> $NEXT_LIST fi done done LIST=`cat $NEXT_LIST` echo LIST: $LIST rm -r `find "$HOME"/ipk -type d -name "*.svn"` ### cd $HOMEDIR echo make py var ls -R -1 "$HOME"/ipk | grep "/" | sed 's/.$//' > tmp.txt LINE=`cat tmp.txt` for DIR in $LINE; do cd $HOMEDIR cd $DIR echo dir $DIR ls -1 *.py > $HOMEDIR/pylist.tmp PYLINE=`cat $HOMEDIR/pylist.tmp` for RPY in $PYLINE; do python2.6 -OO $HOMEDIR/source/mkpyc.py $RPY PYO=`echo "$RPY" | sed "s/.py$/.pyo/"` PYC=`echo "$RPY" | sed "s/.py$/.pyc/"` mv $PYO $PYC if [ $? -ne 0 ]; then echo "Fehler beim kompilieren $RPY" fi done done cd $HOMEDIR ### rm -r `find "$HOME"/ipk/source -type d -name "*.py"` for DIR in $LIST; do ipkg-build "$HOME"/ipk/source/"$DIR" done mkdir "$HOME"/ipk/WWW/boot cp -a "$HOME"/ipk/bootvideos/* "$HOME"/ipk/WWW/boot mv *.ipk "$HOME"/ipk/WWW/ cd "$HOME"/ipk/WWW date=`date` echo "make-index" ipkg-make-index . > Packages echo "pack Packages" gzip Packages ipkg-make-index . > Packages echo "Here is the public AAF-Flash-PlugList" > PlugList echo "" >> PlugList cat Packages | grep Filename: | sed "s/Filename: enigma2-plugin-//" | sed "s/.ipk//" | sed "s/_sh4//" | sed "s/_/ V/" >> PlugList rm test.txt echo "" >> PlugList echo "mfg AAF-TEAM @ $date" >> PlugList echo "done" rm .tmp* rm tmprc PACKAGESLIST=`ls -1 "$HOME"/ipk/WWW/Packages*` IPKLIST=`ls -1 "$HOME"/ipk/WWW/*.ipk` BOOTLIST=`ls -1 "$HOME"/ipk/WWW/boot` pwd if [ $GROUP = "update" ] && [ $MAKETYPE = "online" ];then for ROUND in $PACKAGESLIST; do wput "$PUBLICRELEASEUPDATEURL"/"$WWWMAIN"/"$IPKGCROSS_RELEASE"/"$ROUND" done for ROUND in $IPKLIST; do wput "$PUBLICRELEASEUPDATEURL"/"$WWWMAIN"/"$IPKGCROSS_RELEASE"/"$ROUND" done wput "$PUBLICRELEASEUPDATEURL"/"$WWWMAIN"/"$IPKGCROSS_RELEASE"/PlugList cd boot for ROUND in $BOOTLIST; do wput "$PUBLICRELEASEUPDATEURL"/"$WWWMAIN"/"$IPKGCROSS_RELEASE"/boot/"$ROUND" done elif [ $GROUP = "dev" ] && [ $MAKETYPE = "online" ];then for ROUND in $PACKAGESLIST; do wput "$BETARELEASEUPDATEURL"/"$WWWMAIN"/"$IPKGCROSS_BETA"/"$ROUND" done for ROUND in $IPKLIST; do wput "$BETARELEASEUPDATEURL"/"$WWWMAIN"/"$IPKGCROSS_BETA"/"$ROUND" done wput "$BETARELEASEUPDATEURL"/"$WWWMAIN"/"$IPKGCROSS_BETA"/PlugList cd boot for ROUND in $BOOTLIST; do wput "$BETARELEASEUPDATEURL"/"$WWWMAIN"/"$IPKGCROSS_BETA"/boot/"$ROUND" done fi exit 0