1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125
|
#!/bin/sh
##
## This script generate a valid Slackware package
##
##
## Some variables.
##
CWD=`pwd`
if [ "$TMP" = "" ]; then
TMP=/tmp
fi
PACKAGE=@PACKAGE@.tgz
PKG=$TMP/package-ibtk
PREFIX=@prefix@
DOINSTDIR=/install
LIBDIR=$PREFIX/lib
INCDIR=$PREFIX/include/ibtk
##
## Do a little check before doing something.
##
if [ ! -f $LIBDIR/libibtk.a ]; then
echo "Oops, seems ibtk not installed. Please make installation before."
exit;
fi
##
## File lists.
##
LIBS='libibtk.a libibtk.la'
INCLUDES='*.h'
##
## Clean temporary directory.
##
echo "Cleaning temporary directory."
rm -rf $PACKAGE package_descriptions $PKG
##
## Create temporary tree.
##
echo "Create temporary tree."
if [ ! -d $TMP ]; then
mkdir -p $TMP
fi
if [ ! -d $PKG ]; then
mkdir -p $PKG
fi
mkdir -p $PKG/$PREFIX
mkdir -p $PKG/$DOINSTDIR
mkdir -p $PKG/$LIBDIR
mkdir -p $PKG/$INCDIR
##
## Copy all requiered files.
##
echo "Copying library."
for lib in $LIBS; do
cp $LIBDIR/$lib $PKG$LIBDIR
done
echo "Copying header files."
for inc in $INCDIR/$INCLUDES; do
cp $inc $PKG$INCDIR
done
##
## Create doinst.sh script.
##
echo "Create doinst.sh script."
cat > $PKG/$DOINSTDIR/doinst.sh << EOF
ldconfig
EOF
##
## Now build the package
##
echo "Building Slackware package $PACKAGE."
cd $PKG
echo "n" | makepkg $PACKAGE > /dev/null
mv $PACKAGE $CWD
cd $CWD
##
## Clean temporary directory.
##
echo "Cleaning temporary directory."
rm -rf $PKG
##
## Create package description for pkgtool.
##
echo "Create package_descriptions file."
cat > package_descriptions << EOF
@PACKAGE@: ibtk @SPEC_VERSION@.
@PACKAGE@:
@PACKAGE@: Basic toolkit for gatos.
EOF
##
## Warn about requiered files distribution.
##
cat << EOF
*** NOTE ***
you must distribute $PACKAGE and package_descriptions files.
----
EOF
##
## End of SlackBuild
##
########################################################################
|