summaryrefslogtreecommitdiff
path: root/mkipks
authorkergoth <kergoth>2002-08-29 19:57:13 (UTC)
committer kergoth <kergoth>2002-08-29 19:57:13 (UTC)
commit598b2f4c404c2e12f59c2abc765f58bb8d0862a3 (patch) (side-by-side diff)
treecbf2e207033ca7afdd4aa3368b919000f79fe78d /mkipks
parent4b864b9a6509d3b43be34d39264a9c23f5240641 (diff)
downloadopie-598b2f4c404c2e12f59c2abc765f58bb8d0862a3.zip
opie-598b2f4c404c2e12f59c2abc765f58bb8d0862a3.tar.gz
opie-598b2f4c404c2e12f59c2abc765f58bb8d0862a3.tar.bz2
We use new ipk format now.
Diffstat (limited to 'mkipks') (more/less context) (ignore whitespace changes)
-rwxr-xr-xmkipks35
1 files changed, 18 insertions, 17 deletions
diff --git a/mkipks b/mkipks
index 21b903c..26c72b9 100755
--- a/mkipks
+++ b/mkipks
@@ -27,14 +27,14 @@ QPE_VERSION=$VERSION_MAJ.$VERSION_MIN.$VERSION_PAT
ARCH=arm
STRIP=arm-linux-strip
STRIP_FILES="*ARM*not stripped"
TDIR=/tmp/ipk$$
-DATADIR=$TDIR/data
-CTRLDIR=$TDIR/control
+DATADIR=$TDIR
+CTRLDIR=$TDIR/CONTROL
IMAGEDIR=
VERB=
LIST=
RPM=
@@ -184,40 +184,39 @@ do
/bin/ls $RPMFILES >>$SPEC
rpm -bb --target $ARCH-unknown-linux $SPEC
# rm $SPEC
elif [ -z "$IMAGEDIR" ]
then
#size=$(du -h -s $DATADIR | sed -e 's/[ ].*//')
- size=$(mkfs.jffs2 -r $DATADIR | wc -c)
+ if (which mkfs.jffs2 >/dev/null 2>&1); then
+ size=$(mkfs.jffs2 -r $DATADIR | wc -c)
+ fi
echo "Package: $packagename" >$CTRLDIR/control
+ if [ ! -z "$size" ]; then
echo "Installed-Size: $size" >>$CTRLDIR/control
+ else
+ echo "Warning, no mkfs.jffs2 found, unable to set Installed-Size."
+ fi
+ echo "Architecture: $ARCH" >>$CTRLDIR/control
echo "Filename: ./$package.ipk" >>$CTRLDIR/control
echo "Version: $version" >>$CTRLDIR/control
- echo "Depends: $depends" >>$CTRLDIR/control
- echo "Provides: $provides" >>$CTRLDIR/control
- echo "Conflicts: $conflicts" >>$CTRLDIR/control
- egrep -v "^(Files|Version|Depends|Provides|Conflicts):" >>$CTRLDIR/control $i
- echo "$DEB_VERSION" >$TDIR/debian-binary
+ [ ! -z "$depends" ] && echo "Depends: $depends" >>$CTRLDIR/control
+ [ ! -z "$provides" ] && echo "Provides: $provides" >>$CTRLDIR/control
+ [ ! -z "$conflicts" ] && echo "Conflicts: $conflicts" >>$CTRLDIR/control
+ egrep -v "^(Files|Version|Depends|Provides|Conflicts|Architecture):" >>$CTRLDIR/control $i
+# echo "$DEB_VERSION" >$TDIR/debian-binary
base=${i%.control}
scripts="preinst postinst prerm postrm"
for pf in $scripts
do
if [ -x ${base}.$pf ]
then
cp ${base}.$pf $CTRLDIR/$pf
fi
done
- if [ "$UID" = 0 ]
- then
- chown -R root.root $TDIR
- else
- echo "Warning: You are not root. Unable to squash permissions."
- fi
- ( cd $CTRLDIR; tar cfz ../control.tar.gz ./*; )
- ( cd $DATADIR; tar cfz ../data.tar.gz ./*; )
- ( cd $TDIR; rm -rf control data; tar cf - ./debian-binary ./control.tar.gz ./data.tar.gz; ) | gzip >$RDIR/$package.ipk
+ $OPIEDIR/scripts/ipkg-build -o root -g root $TDIR
RESULT=$package.ipk
if [ -n "$VERB" ]
then
echo >&2 "Built $RESULT ($size)"
fi
if [ -n "$LIST" ]
@@ -226,6 +225,8 @@ do
fi
fi
else
echo >&2 "Not building $package package"
fi
done
+# clean up
+rm -rf $TDIR