2000-06-16 20:58:45 +02:00
|
|
|
#!/bin/sh
|
|
|
|
|
#
|
|
|
|
|
# mksolpkg
|
|
|
|
|
# a script to generate a native solaris package
|
|
|
|
|
#
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if [ `whoami` != "root" ]; then
|
|
|
|
|
echo "you must be root to run this script"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
# an ugly hack to get various bits of info
|
|
|
|
|
ver=`grep VERSION pkginfo | sed 's/"/ /g' | awk '{print $2}'`
|
|
|
|
|
basedir=`grep BASEDIR pkginfo | sed 's/"/ /g' | awk '{print $2}'`
|
|
|
|
|
name=`grep NAME pkginfo | sed 's/"/ /g' | awk '{print $2}'`
|
|
|
|
|
pkg=`grep PKG pkginfo | sed 's/"/ /g' | awk '{print $2}'`
|
|
|
|
|
arch=`grep ARCH pkginfo | sed 's/"/ /g' | awk '{print $2}'`
|
|
|
|
|
march=`uname -p`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if [ "$arch" != "$march" ]; then
|
|
|
|
|
echo "Warning: you have listed \"$arch\" in the pkginfo file but this machine"
|
|
|
|
|
echo " has a \"$march\" processor"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
oslabel=`uname -s`-`uname -r`-$march
|
|
|
|
|
fname=$name-$ver-$oslabel
|
|
|
|
|
|
2004-10-04 03:10:51 +02:00
|
|
|
cp -f prototype $basedir
|
2000-06-16 20:58:45 +02:00
|
|
|
cp -f pkginfo $basedir
|
|
|
|
|
cd $basedir
|
|
|
|
|
|
|
|
|
|
pkgmk -o -r `pwd`
|
|
|
|
|
|
|
|
|
|
cd /var/spool/pkg
|
|
|
|
|
pkgtrans -s `pwd` /tmp/$fname all
|
|
|
|
|
cd /tmp
|
|
|
|
|
gzip -f $fname
|
|
|
|
|
|
|
|
|
|
echo "Your $oslabel package is left in /tmp/$fname.gz"
|
|
|
|
|
|
2004-10-04 03:10:51 +02:00
|
|
|
# cleanup
|
2000-06-16 20:58:45 +02:00
|
|
|
rm -f $basedir/prototype $basedir/pkginfo
|
|
|
|
|
rm -fr /var/spool/pkg/$pkg
|
|
|
|
|
|