|
diff --git a/mkipks b/mkipks index 21b903c..26c72b9 100755 --- a/ mkipks+++ b/ mkipks |
|
@@ -17,34 +17,34 @@ VERSION_PAT=$(sed -n -e 's/.*QPE_VERSION ".*\..*\.\([0-9]*\).*/\1/p' <$OPIEDIR/i |
17 | SUB_VERSION=$(sed -n -e 's,.*SUB_VERSION \"\(.*\)\".*,\1,p' <$OPIEDIR/include/qpe/version.h) |
17 | SUB_VERSION=$(sed -n -e 's,.*SUB_VERSION \"\(.*\)\".*,\1,p' <$OPIEDIR/include/qpe/version.h) |
18 | if grep -q 'QPE_VERSION .*snapshot' $OPIEDIR/include/qpe/version.h |
18 | if grep -q 'QPE_VERSION .*snapshot' $OPIEDIR/include/qpe/version.h |
19 | then |
19 | then |
20 | VERSION_CVS="$(date +%Y%m%d)" |
20 | VERSION_CVS="$(date +%Y%m%d)" |
21 | SUB_VERSION=$VERSION_CVS |
21 | SUB_VERSION=$VERSION_CVS |
22 | else |
22 | else |
23 | VERSION_CVS="" |
23 | VERSION_CVS="" |
24 | fi |
24 | fi |
25 | |
25 | |
26 | QPE_VERSION=$VERSION_MAJ.$VERSION_MIN.$VERSION_PAT |
26 | QPE_VERSION=$VERSION_MAJ.$VERSION_MIN.$VERSION_PAT |
27 | |
27 | |
28 | ARCH=arm |
28 | ARCH=arm |
29 | STRIP=arm-linux-strip |
29 | STRIP=arm-linux-strip |
30 | STRIP_FILES="*ARM*not stripped" |
30 | STRIP_FILES="*ARM*not stripped" |
31 | |
31 | |
32 | TDIR=/tmp/ipk$$ |
32 | TDIR=/tmp/ipk$$ |
33 | DATADIR=$TDIR/data |
33 | DATADIR=$TDIR |
34 | CTRLDIR=$TDIR/control |
34 | CTRLDIR=$TDIR/CONTROL |
35 | |
35 | |
36 | IMAGEDIR= |
36 | IMAGEDIR= |
37 | VERB= |
37 | VERB= |
38 | LIST= |
38 | LIST= |
39 | RPM= |
39 | RPM= |
40 | |
40 | |
41 | while [ $# -ne 0 ] |
41 | while [ $# -ne 0 ] |
42 | do |
42 | do |
43 | case "$1" in |
43 | case "$1" in |
44 | -v) |
44 | -v) |
45 | VERB=1 |
45 | VERB=1 |
46 | echo >&2 "Packaging for version $VERSION_MAJ.$VERSION_MIN.$VERSION_PAT$VERSION_CVS" |
46 | echo >&2 "Packaging for version $VERSION_MAJ.$VERSION_MIN.$VERSION_PAT$VERSION_CVS" |
47 | ;; -l) |
47 | ;; -l) |
48 | LIST=1 |
48 | LIST=1 |
49 | ;; -i) |
49 | ;; -i) |
50 | shift |
50 | shift |
@@ -174,58 +174,59 @@ do |
174 | echo >>$SPEC "Name: $packagename" |
174 | echo >>$SPEC "Name: $packagename" |
175 | echo >>$SPEC "Group: $section" ########## |
175 | echo >>$SPEC "Group: $section" ########## |
176 | echo >>$SPEC "License: $license" |
176 | echo >>$SPEC "License: $license" |
177 | echo >>$SPEC "Version: ${version%-*}" |
177 | echo >>$SPEC "Version: ${version%-*}" |
178 | echo >>$SPEC "Release: ${version#*-}" |
178 | echo >>$SPEC "Release: ${version#*-}" |
179 | |
179 | |
180 | echo >>$SPEC "%description" |
180 | echo >>$SPEC "%description" |
181 | sed -n -e '/^Description:/,$ p' $i | tail +2 >>$SPEC |
181 | sed -n -e '/^Description:/,$ p' $i | tail +2 >>$SPEC |
182 | echo >>$SPEC "%files" |
182 | echo >>$SPEC "%files" |
183 | echo >>$SPEC "%defattr(-,root,root)" |
183 | echo >>$SPEC "%defattr(-,root,root)" |
184 | /bin/ls $RPMFILES >>$SPEC |
184 | /bin/ls $RPMFILES >>$SPEC |
185 | rpm -bb --target $ARCH-unknown-linux $SPEC |
185 | rpm -bb --target $ARCH-unknown-linux $SPEC |
186 | # rm $SPEC |
186 | # rm $SPEC |
187 | elif [ -z "$IMAGEDIR" ] |
187 | elif [ -z "$IMAGEDIR" ] |
188 | then |
188 | then |
189 | #size=$(du -h -s $DATADIR | sed -e 's/[ ].*//') |
189 | #size=$(du -h -s $DATADIR | sed -e 's/[ ].*//') |
| |
190 | if (which mkfs.jffs2 >/dev/null 2>&1); then |
190 | size=$(mkfs.jffs2 -r $DATADIR | wc -c) |
191 | size=$(mkfs.jffs2 -r $DATADIR | wc -c) |
| |
192 | fi |
191 | echo "Package: $packagename" >$CTRLDIR/control |
193 | echo "Package: $packagename" >$CTRLDIR/control |
| |
194 | if [ ! -z "$size" ]; then |
192 | echo "Installed-Size: $size" >>$CTRLDIR/control |
195 | echo "Installed-Size: $size" >>$CTRLDIR/control |
| |
196 | else |
| |
197 | echo "Warning, no mkfs.jffs2 found, unable to set Installed-Size." |
| |
198 | fi |
| |
199 | echo "Architecture: $ARCH" >>$CTRLDIR/control |
193 | echo "Filename: ./$package.ipk" >>$CTRLDIR/control |
200 | echo "Filename: ./$package.ipk" >>$CTRLDIR/control |
194 | echo "Version: $version" >>$CTRLDIR/control |
201 | echo "Version: $version" >>$CTRLDIR/control |
195 | echo "Depends: $depends" >>$CTRLDIR/control |
202 | [ ! -z "$depends" ] && echo "Depends: $depends" >>$CTRLDIR/control |
196 | echo "Provides: $provides" >>$CTRLDIR/control |
203 | [ ! -z "$provides" ] && echo "Provides: $provides" >>$CTRLDIR/control |
197 | echo "Conflicts: $conflicts" >>$CTRLDIR/control |
204 | [ ! -z "$conflicts" ] && echo "Conflicts: $conflicts" >>$CTRLDIR/control |
198 | egrep -v "^(Files|Version|Depends|Provides|Conflicts):" >>$CTRLDIR/control $i |
205 | egrep -v "^(Files|Version|Depends|Provides|Conflicts|Architecture):" >>$CTRLDIR/control $i |
199 | echo "$DEB_VERSION" >$TDIR/debian-binary |
206 | # echo "$DEB_VERSION" >$TDIR/debian-binary |
200 | base=${i%.control} |
207 | base=${i%.control} |
201 | scripts="preinst postinst prerm postrm" |
208 | scripts="preinst postinst prerm postrm" |
202 | for pf in $scripts |
209 | for pf in $scripts |
203 | do |
210 | do |
204 | if [ -x ${base}.$pf ] |
211 | if [ -x ${base}.$pf ] |
205 | then |
212 | then |
206 | cp ${base}.$pf $CTRLDIR/$pf |
213 | cp ${base}.$pf $CTRLDIR/$pf |
207 | fi |
214 | fi |
208 | done |
215 | done |
209 | if [ "$UID" = 0 ] |
216 | $OPIEDIR/scripts/ipkg-build -o root -g root $TDIR |
210 | then |
| |
211 | chown -R root.root $TDIR |
| |
212 | else |
| |
213 | echo "Warning: You are not root. Unable to squash permissions." |
| |
214 | fi |
| |
215 | ( cd $CTRLDIR; tar cfz ../control.tar.gz ./*; ) |
| |
216 | ( cd $DATADIR; tar cfz ../data.tar.gz ./*; ) |
| |
217 | ( cd $TDIR; rm -rf control data; tar cf - ./debian-binary ./control.tar.gz ./data.tar.gz; ) | gzip >$RDIR/$package.ipk |
| |
218 | RESULT=$package.ipk |
217 | RESULT=$package.ipk |
219 | if [ -n "$VERB" ] |
218 | if [ -n "$VERB" ] |
220 | then |
219 | then |
221 | echo >&2 "Built $RESULT ($size)" |
220 | echo >&2 "Built $RESULT ($size)" |
222 | fi |
221 | fi |
223 | if [ -n "$LIST" ] |
222 | if [ -n "$LIST" ] |
224 | then |
223 | then |
225 | echo $RESULT |
224 | echo $RESULT |
226 | fi |
225 | fi |
227 | fi |
226 | fi |
228 | else |
227 | else |
229 | echo >&2 "Not building $package package" |
228 | echo >&2 "Not building $package package" |
230 | fi |
229 | fi |
231 | done |
230 | done |
| |
231 | # clean up |
| |
232 | rm -rf $TDIR |
|