# $Id$ # function for packing and installing a tree. We only have access # to variables PKGDIR and PKG_DEST # Other variables can be passed on the command line, or in the environment packInstall() { # A proposed implementation for versions and package names. local PCKGVRS=$(basename $PKGDIR) local TGTPKG=$(basename $PKG_DEST) local PACKAGE=$(echo ${TGTPKG} | sed 's/^[0-9]\{3\}-//' | sed 's/^[0-9]\{1\}-//') # version is only accessible from PKGDIR name. Since the format of the # name is not normalized, several hacks are necessary... case $PCKGVRS in expect*|tcl*) local VERSION=$(echo $PCKGVRS | sed 's/^[^0-9]*//') ;; unzip*) local VERSION=$(echo $PCKGVRS | sed 's/^[^0-9]*\([0-9]\)\([0-9]\)/\1.\2/') ;; docbook-xml) local VERSION=4.5 ;; *) local VERSION=$(echo ${PCKGVRS} | sed 's/^.*[-_]\([0-9]\)/\1/' | sed 's/_/./g');; # the last sed above is because some package managers do not want a '_' # in version. esac case $(uname -m) in x86_64) local ARCH=x86_64 ;; *) local ARCH=i686 ;; esac local ARCHIVE_NAME=${PACKAGE}-${VERSION}-1-${ARCH}.pkg.tar.gz pushd $PKG_DEST rm -fv ./usr/share/info/dir # recommended since this directory is already there # on the system # Right now, we have the files in the current directory. They should be moved # to /sources/$PACKAGE/src. mkdir -p ../$PACKAGE/src mv * ../$PACKAGE/src cat > PKGBUILD <