source: ipk/make-ipk@ 4896

Last change on this file since 4896 was 4891, checked in by obi, 15 years ago

[ipk] fix linking

  • Property svn:executable set to *
File size: 9.0 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 [ `which ipkg-build | wc -l` -eq 0 ]; then
14 sudo rm /bin/ipkg-build
15 sudo rm /sbin/ipkg-build
16 sudo ln -s $HOMEDIR/ipkg-utils-050831/ipkg-build /bin
17elif [ `which ipkg-make-index | wc -l` -eq 0 ]; then
18 sudo rm /bin/ipkg-make-index
19 sudo rm /sbin/ipkg-make-index
20 sudo ln -s $HOMEDIR/ipkg-utils-050831/ipkg-make-index /bin
21elif [ `which gzip | wc -l` -eq 0 ]; then
22 echo "[make-ipk] install gzip"
23 echo "[make-ipk] apt-get install gzip"
24 exit
25elif [ `which python2.6 | wc -l` -eq 0 ]; then
26 echo "[make-ipk] install python2.6 | search python2.6_2.6.1-1_i386.deb"
27 exit
28elif [ `which wput | wc -l` -eq 0 ]; then
29 echo "[make-ipk] install wput v0.6.2"
30 echo "[make-ipk] apt-get install wput"
31 exit
32fi
33
34if [ "$MAKETYPE" = "online" ];then
35 WPUTCHECK=`wput --version | tr " " "\n" | tail -n1 | sed 's/\.//' | sed 's/\.//'`
36 echo WPUTCHECK $WPUTCHECK
37 if [ "$WPUTCHECK" -gt "061" ]; then
38 echo "[make-flash] wput0.6.2 ok"
39 else
40 echo "[make-ipk] install wput0.6.2"
41 echo "[make-ipk] cd /src"
42 echo "[make-ipk] wget ftp://ftp.sunfreeware.com/pub/freeware/SOURCES/wput-0.6.2.tar.gz"
43 echo "[make-ipk] tar -zxvf wput-0.6.2.tar.gz"
44 echo "[make-ipk] cd wput-0.6.2"
45 echo "[make-ipk] ./configure"
46 echo "[make-ipk] make"
47 echo "[make-ipk] make install"
48 exit
49 fi
50fi
51
52if [ $# -ne 6 ]; then
53 echo "|---------------------------------------------------------------------------|"
54 echo "| |"
55 echo "| IPK Make Script |"
56 echo "| |"
57 echo '| use ./make-ipk <group> <svnuser> <svnpass> <svnurl> <svnport> <maketype> |'
58 echo "| |"
59 echo "| for group <dev|update> |"
60 echo "| for svnuser <your> |"
61 echo "| for svnpass <your> |"
62 echo "| for svnurl <your> |"
63 echo "| for svnport <your> |"
64 echo "| for maketype <online|offline> |"
65 echo "| |"
66 echo "|---------------------------------------------------------------------------|"
67 echo "| v1.0@dev-team |"
68 echo "|---------------------------------------------------------------------------|"
69 exit 1
70fi
71
72if [ $GROUP = "dev" ] || [ $GROUP = "update" ];then
73 echo "group=$GROUP"
74else
75 echo "group <dev|update>"
76 exit 1
77fi
78
79if [ $MAKETYPE = "online" ] || [ $MAKETYPE = "offline" ];then
80 echo "maketype=$MAKETYPE"
81else
82 echo "maketype <online|offline>"
83 exit 1
84fi
85
86rm -r "$HOME"/ipk/BUILD > /dev/null 2>&1
87rm -r "$HOME"/ipk/BUILDRELEASE > /dev/null 2>&1
88
89mkdir -p "$HOME"/ipk/BUILD
90mkdir -p "$HOME"/ipk/BUILDRELEASE
91
92svn co --username $SVNUSER --password $SVNPASS svn://"$SVNURL":"$SVNPORT"/ufs910/image/scripts $HOMEDIR/scripts
93svn co --username $SVNUSER --password $SVNPASS svn://"$SVNURL":"$SVNPORT"/ufs910/image/config $HOMEDIR/config
94
95. ./config/make-config
96
97cp -a "$HOME"/ipk/source/* "$HOME"/ipk/BUILD
98ls -1 "$HOME"/ipk/BUILD > aaf-flashbeta.txt
99cp -a "$HOME"/ipk/bootvideos "$HOME"/ipk/BUILDRELEASE/boot
100
101LIST_LINE=`cat aaf-flashbeta.txt`
102ALLOWED=`cat "$HOME"/ipk/aaf-flashbeta_allowed`
103
104cd "$HOME"/ipk/BUILD
105chmod -R 755 `find "$HOME"/ipk/BUILD -type d -name "CONTROL"`
106chmod -R 755 `find "$HOME"/ipk/BUILD -type d -name "bin"`
107chmod -R 755 `find "$HOME"/ipk/BUILD -type d -name "sbin"`
108chmod -R 755 `find "$HOME"/ipk/BUILD -type d -name "emu"`
109
110for ROUND in $ALLOWED; do
111 for DIR in $LIST_LINE; do
112 echo $DIR > $TMP
113 if [ ! `grep "$ROUND" $TMP | wc -l` -eq 0 ]; then
114 echo ROUND $ROUND == $DIR DIR
115 echo $DIR >> $NEXT_LIST
116 fi
117 done
118done
119
120LIST=`cat $NEXT_LIST`
121
122echo LIST: $LIST
123
124rm -r `find "$HOME"/ipk/BUILD -type d -name "*.svn"`
125
126################### SHRINK PYTHON FILES #########################
127
128"$HOME"/ipk/scripts/kf-pyshrink.sh ./ "$HOME"/ipk/BUILD "$PYTHONVER" "$SKIPPEDSHRINK"
129
130###
131cd $HOMEDIR
132echo make py var
133ls -R -1 "$HOME"/ipk/BUILD | grep "/" | sed 's/.$//' > tmp.txt
134LINE=`cat tmp.txt`
135for DIR in $LINE; do
136 cd $HOMEDIR
137 cd $DIR
138 echo dir $DIR
139 ls -1 *.py > "$HOME"/ipk/pylist.tmp
140 PYLINE=`cat "$HOME"/ipk/pylist.tmp`
141 for RPY in $PYLINE; do
142 python2.6 -OO "$HOME"/ipk/scripts/mkpyc.py $RPY
143 PYO=`echo "$RPY" | sed "s/.py$/.pyo/"`
144 PYC=`echo "$RPY" | sed "s/.py$/.pyc/"`
145 mv $PYO $PYC
146 if [ $? -ne 0 ]; then
147 echo "Fehler beim kompilieren $RPY"
148 fi
149 done
150done
151cd $HOMEDIR
152###
153rm "$HOME"/ipk/pylist.tmp
154rm -r `find "$HOME"/ipk/BUILD -type f -name "*.py" -print`
155rm -r `find "$HOME"/ipk/BUILD -type f -name "*.po" -print`
156
157rm -r "$HOME"/ipk/preview
158mkdir "$HOME"/ipk/preview
159
160################### SHRINK PNG FILES #########################
161
162PNGFILES=`find "$HOME"/ipk/BUILD -type f -name "*.png" -print`
163
164for DIR in $PNGFILES; do
165 echo "PNG: $DIR"
166 /usr/bin/advpng -4 -z $DIR #> /dev/null 2>&1
167done
168
169################### STRIPPED ALL FILES #########################
170
171FILEALL=`find "$HOME"/ipk/BUILD -name "*" -print`
172
173if ( test -f "$HOME"/ipk/scripts/sh4-linux-strip ); then
174 echo ""
175 echo "Files strippen"
176 echo ""
177 for FILE in $FILEALL
178 do
179 echo $FILE | grep ".ko" >/dev/null 2>&1
180 if [ $? -eq 0 ]; then param="--strip-unneeded --remove-section=.comment"; else param="-s --remove-section=.comment"; fi
181 "$HOME"/ipk/scripts/sh4-linux-strip $param $FILE > /dev/null 2>&1
182 if [ $? -eq 0 ]; then
183 echo "Strippe: $FILE"
184 fi
185 done
186else
187 echo ""
188 echo "Files strippen konnte nicht durchgefuehrt werden, da sh4-linux-strip fehlt."
189fi
190
191
192for DIR in $LIST; do
193 echo "$DIR"
194 NAME=`cat "$HOME"/ipk/BUILD/"$DIR"/CONTROL/control | grep Package: | tr " " "\n" | tr "-" "\n" | tail -n 1 | cut -d . -f1 | head -n1`
195# ARCH=`cat "$HOME"/ipk/BUILD/"$DIR"/CONTROL/control | grep Architecture: | tr " " "\n" | tail -n 1`
196# cp "$HOME"/ipk/BUILD/"$DIR"/preview/prev.png "$HOME"/ipk/preview/enigma2-pluginpreview-"$NAME"_"$ARCH".ipk.png
197 cp "$HOME"/ipk/BUILD/"$DIR"/preview/prev.png "$HOME"/ipk/preview/enigma2-pluginpreview-"$NAME".png
198 rm -r "$HOME"/ipk/BUILD/"$DIR"/preview
199done
200
201
202cd "$HOME"/ipk/BUILDRELEASE
203
204for DIR in $LIST; do
205 ipkg-build "$HOME"/ipk/BUILD/"$DIR"
206done
207
208date=`date`
209echo "make-index"
210rm Packages*
211
212ipkg-make-index -l Packages.filelist -p Packages -v .
213
214echo "Here is the public AAF-Flash-PlugList" > PlugList
215echo "" >> PlugList
216cat Packages | grep Filename: | sed "s/Filename: enigma2-plugin-//" | sed "s/.ipk//" | sed "s/_sh4//" | sed "s/_/ V/" >> PlugList
217rm test.txt
218echo "" >> PlugList
219echo "mfg AAF-TEAM @ $date" >> PlugList
220echo "done"
221
222rm .tmp*
223rm tmprc
224
225cd "$HOME"/ipk/
226tar czvf Packages.preview.tar.gz ./preview
227
228mv "$HOME"/ipk/Packages.preview.tar.gz "$HOME"/ipk/BUILDRELEASE
229
230cd "$HOME"/ipk/BUILDRELEASE
231
232PACKAGESLIST=`ls -1 Packages*`
233IPKLIST=`ls -1 *.ipk`
234
235if [ $GROUP = "update" ] && [ $MAKETYPE = "online" ];then
236 for ROUND in $PACKAGESLIST; do
237 wput -u "$PUBLICRELEASEUPDATEURL"/"$WWWMAIN"/"$IPKGCROSS_RELEASE"/"$ROUND"
238 done
239 for ROUND in $IPKLIST; do
240 wput -u "$PUBLICRELEASEUPDATEURL"/"$WWWMAIN"/"$IPKGCROSS_RELEASE"/"$ROUND"
241 done
242 wput "$PUBLICRELEASEUPDATEURL"/"$WWWMAIN"/"$IPKGCROSS_RELEASE"/PlugList
243 wput "$PUBLICRELEASEUPDATEURL"/"$WWWMAIN"/"$IPKGCROSS_RELEASE"/Packages.preview.tar.gz
244 cd boot
245 BOOTLIST=`ls -1`
246 for ROUND in $BOOTLIST; do
247 wput -u "$PUBLICRELEASEUPDATEURL"/"$WWWMAIN"/"$IPKGCROSS_RELEASE"/boot/"$ROUND"
248 done
249elif [ $GROUP = "dev" ] && [ $MAKETYPE = "online" ];then
250 BTIME=`date +"%Y.%m.%d_%H.%M.%S"`
251 echo quote USER $URLBETAUSER >"$HOME"/ipk/ftp.txt
252 echo quote PASS $URLBETAPASS >>"$HOME"/ipk/ftp.txt
253# echo cd "$WWWMAIN"/"$IPKGCROSS_BETA" >>"$HOME"/ipk/ftp.txt
254# echo cd "$WWWMAIN" >>"$HOME"/ipk//ftp.txt
255 echo del "$WWWMAIN"/"$IPKGCROSS_BETA"/Packages >>"$HOME"/ipk/ftp.txt
256 echo del "$WWWMAIN"/"$IPKGCROSS_BETA"/Packages.filelist >>"$HOME"/ipk/ftp.txt
257 echo del "$WWWMAIN"/"$IPKGCROSS_BETA"/Packages.gz >>"$HOME"/ipk/ftp.txt
258 echo del "$WWWMAIN"/"$IPKGCROSS_BETA"/PlugList >>"$HOME"/ipk/ftp.txt
259 echo del "$WWWMAIN"/"$IPKGCROSS_BETA"/Packages.preview.tar.gz >>"$HOME"/ipk/ftp.txt
260
261# echo rename aaf-flash-beta aaf-flash-beta_old_"$URLBETAUSER"_"$BTIME" >>"$HOME"/ipk/ftp.txt
262 echo quit >>"$HOME"/ipk/ftp.txt
263 ftp -n "$URLBETA" < "$HOME"/ipk/ftp.txt
264
265 sleep 5
266 for ROUND in $PACKAGESLIST; do
267 wput "$BETARELEASEUPDATEURL"/"$WWWMAIN"/"$IPKGCROSS_BETA"/"$ROUND"
268 done
269 for ROUND in $IPKLIST; do
270 wput "$BETARELEASEUPDATEURL"/"$WWWMAIN"/"$IPKGCROSS_BETA"/"$ROUND"
271 done
272 wput "$BETARELEASEUPDATEURL"/"$WWWMAIN"/"$IPKGCROSS_BETA"/PlugList
273 wput "$BETARELEASEUPDATEURL"/"$WWWMAIN"/"$IPKGCROSS_BETA"/Packages.preview.tar.gz
274
275 cd boot
276 BOOTLIST=`ls -1`
277 for ROUND in $BOOTLIST; do
278 wput -u "$BETARELEASEUPDATEURL"/"$WWWMAIN"/"$IPKGCROSS_BETA"/boot/"$ROUND"
279 done
280fi
281
282echo "[make-ipk] done"
283
284exit 0
Note: See TracBrowser for help on using the repository browser.