source: ipk/runipk.sh@ 2923

Last change on this file since 2923 was 2923, checked in by obi, 16 years ago

[ipk] finished

  • Property svn:executable set to *
File size: 5.8 KB
Line 
1#!/bin/sh
2HOMEDIR=`pwd`
3TMP=.tmp
4NEXT_LIST=.tmp2
5
6GROUP=$1
7SVNUSER=$2
8SVNPASS=$3
9SVNURL=$4
10SVNPORT=$5
11MAKETYPE=$6
12
13if [ $# -ne 6 ]; then
14 echo "|---------------------------------------------------------------------------|"
15 echo "| |"
16 echo "| IPK Make Script |"
17 echo "| |"
18 echo '| use ./runipk.sh <group> <svnuser> <svnpass> <svnurl> <svnport> <maketype> |'
19 echo "| |"
20 echo "| for group <dev|update> |"
21 echo "| for svnuser <your> |"
22 echo "| for svnpass <your> |"
23 echo "| for svnurl <your> |"
24 echo "| for svnport <your> |"
25 echo "| for maketype <online|offline> |"
26 echo "| |"
27 echo "|---------------------------------------------------------------------------|"
28 echo "| v1.0@dev-team |"
29 echo "|---------------------------------------------------------------------------|"
30 exit 1
31fi
32
33if [ $GROUP = "dev" ] || [ $GROUP = "update" ];then
34 echo "group=$GROUP"
35else
36 echo "group <dev|update>"
37 exit 1
38fi
39
40if [ $MAKETYPE = "online" ] || [ $MAKETYPE = "offline" ];then
41 echo "maketype=$MAKETYPE"
42else
43 echo "maketype <online|offline>"
44 exit 1
45fi
46
47rm -r "$HOME"/ipk/WWW/*.ipk > /dev/null 2>&1
48rm -r "$HOME"/ipk/WWW/Packages* > /dev/null 2>&1
49rm -r "$HOME"/ipk/WWW/PlugList > /dev/null 2>&1
50rm -r "$HOME"/ipk/WWW/boot > /dev/null 2>&1
51rm -r "$HOME"/ipk/*.ipk > /dev/null 2>&1
52rm -r "$HOME"/ipk/Packages* > /dev/null 2>&1
53rm -r "$HOME"/ipk/PlugList > /dev/null 2>&1
54rm -r "$HOME"/ipk/boot > /dev/null 2>&1
55
56svn co --username $SVNUSER --password $SVNPASS svn://"$SVNURL":"$SVNPORT"/ufs910/image/scripts $HOMEDIR/scripts
57svn co --username $SVNUSER --password $SVNPASS svn://"$SVNURL":"$SVNPORT"/ufs910/image/config $HOMEDIR/config
58
59. ./config/make-config
60
61if [ $GROUP = "dev" ];then
62 mkdir -p "$WWWLOCAL"/"$WWWMAIN"/"$IPKGCROSS_BETA"
63 ln -s "$WWWLOCAL"/"$WWWMAIN"/"$IPKGCROSS_BETA" "$HOME"/ipk/WWW
64 ln -s "$HOME"/ipk/source "$WWWLOCAL"/"$WWWMAIN"/"$IPKGCROSS_BETA"/source
65elif [ $GROUP = "update" ];then
66 mkdir -p "$WWWLOCAL"/"$WWWMAIN"/"$IPKGCROSS_RELEASE"
67 ln -s "$WWWLOCAL"/"$WWWMAIN"/"$IPKGCROSS_RELEASE" "$HOME"/ipk/WWW
68 ln -s "$HOME"/ipk/source "$WWWLOCAL"/"$WWWMAIN"/"$IPKGCROSS_RELEASE"/source
69fi
70
71ls -1 "$HOME"/ipk/source > aaf-flashbeta.txt
72LIST_LINE=`cat aaf-flashbeta.txt`
73ALLOWED=`cat "$HOME"/ipk/aaf-flashbeta_allowed`
74
75
76cd "$HOME"/ipk/WWW
77chmod -R 755 `find "$HOME"/ipk/source -type d -name "CONTROL"`
78chmod -R 755 `find "$HOME"/ipk/source -type d -name "bin"`
79chmod -R 755 `find "$HOME"/ipk/source -type d -name "sbin"`
80chmod -R 755 `find "$HOME"/ipk/source -type d -name "emu"`
81
82# for externel files
83#cp "$HOME"/WWW/civer/*.ipk ~/WWW
84
85for ROUND in $ALLOWED; do
86 for DIR in $LIST_LINE; do
87 echo $DIR > $TMP
88 if [ ! `grep "$ROUND" $TMP | wc -l` -eq 0 ]; then
89 echo ROUND $ROUND == $DIR DIR
90 echo $DIR >> $NEXT_LIST
91 fi
92 done
93done
94
95LIST=`cat $NEXT_LIST`
96
97echo LIST: $LIST
98
99rm -r `find "$HOME"/ipk -type d -name "*.svn"`
100
101###
102cd $HOMEDIR
103echo make py var
104ls -R -1 "$HOME"/ipk | grep "/" | sed 's/.$//' > tmp.txt
105LINE=`cat tmp.txt`
106for DIR in $LINE; do
107 cd $HOMEDIR
108 cd $DIR
109 echo dir $DIR
110 ls -1 *.py > $HOMEDIR/pylist.tmp
111 PYLINE=`cat $HOMEDIR/pylist.tmp`
112 for RPY in $PYLINE; do
113 python2.6 -OO $HOMEDIR/source/mkpyc.py $RPY
114 PYO=`echo "$RPY" | sed "s/.py$/.pyo/"`
115 PYC=`echo "$RPY" | sed "s/.py$/.pyc/"`
116 mv $PYO $PYC
117 if [ $? -ne 0 ]; then
118 echo "Fehler beim kompilieren $RPY"
119 fi
120 done
121done
122cd $HOMEDIR
123###
124
125rm -r `find "$HOME"/ipk/source -type d -name "*.py"`
126
127for DIR in $LIST; do
128 ipkg-build "$HOME"/ipk/source/"$DIR"
129done
130
131mkdir "$HOME"/ipk/WWW/boot
132cp -a "$HOME"/ipk/bootvideos/* "$HOME"/ipk/WWW/boot
133mv *.ipk "$HOME"/ipk/WWW/
134
135if [ $GROUP = "dev" ];then
136 cd "$WWWLOCAL"/"$WWWMAIN"/"$IPKGCROSS_BETA"
137elif [ $GROUP = "update" ];then
138 cd "$WWWLOCAL"/"$WWWMAIN"/"$IPKGCROSS_RELEASE"
139fi
140
141date=`date`
142echo "make-index"
143ipkg-make-index . > Packages
144echo "pack Packages"
145gzip Packages
146ipkg-make-index . > Packages
147echo "Here is the public AAF-Flash-PlugList" > PlugList
148echo "" >> PlugList
149cat Packages | grep Filename: | sed "s/Filename: enigma2-plugin-//" | sed "s/.ipk//" | sed "s/_sh4//" | sed "s/_/ V/" >> PlugList
150rm test.txt
151echo "" >> PlugList
152echo "mfg AAF-TEAM @ $date" >> PlugList
153echo "done"
154
155rm .tmp*
156rm tmprc
157
158
159PACKAGESLIST=`ls -1 Packages*`
160IPKLIST=`ls -1 *.ipk`
161pwd
162
163if [ $GROUP = "update" ] && [ $MAKETYPE = "online" ];then
164 for ROUND in $PACKAGESLIST; do
165 wput -u "$PUBLICRELEASEUPDATEURL"/"$WWWMAIN"/"$IPKGCROSS_RELEASE"/"$ROUND"
166 done
167 for ROUND in $IPKLIST; do
168 wput -u "$PUBLICRELEASEUPDATEURL"/"$WWWMAIN"/"$IPKGCROSS_RELEASE"/"$ROUND"
169 done
170 wput "$PUBLICRELEASEUPDATEURL"/"$WWWMAIN"/"$IPKGCROSS_RELEASE"/PlugList
171 cd boot
172 BOOTLIST=`ls -1`
173 for ROUND in $BOOTLIST; do
174 wput -u "$PUBLICRELEASEUPDATEURL"/"$WWWMAIN"/"$IPKGCROSS_RELEASE"/boot/"$ROUND"
175 done
176elif [ $GROUP = "dev" ] && [ $MAKETYPE = "online" ];then
177 for ROUND in $PACKAGESLIST; do
178 echo round $ROUND
179 wput -u "$BETARELEASEUPDATEURL"/"$WWWMAIN"/"$IPKGCROSS_BETA"/"$ROUND"
180 done
181 for ROUND in $IPKLIST; do
182 wput -u "$BETARELEASEUPDATEURL"/"$WWWMAIN"/"$IPKGCROSS_BETA"/"$ROUND"
183 done
184 wput "$BETARELEASEUPDATEURL"/"$WWWMAIN"/"$IPKGCROSS_BETA"/PlugList
185 cd boot
186 BOOTLIST=`ls -1`
187 for ROUND in $BOOTLIST; do
188 wput -u "$BETARELEASEUPDATEURL"/"$WWWMAIN"/"$IPKGCROSS_BETA"/boot/"$ROUND"
189 done
190fi
191
192exit 0
Note: See TracBrowser for help on using the repository browser.