Tom G. Christensen 87fd44a463 Latest GNU tar
This is the version used in most Linux dists
2004-01-29 14:13:13 +00:00

117 lines
1.9 KiB
Bash
Executable File

#!/usr/local/bin/bash
#
# This is a generic build.sh script
# It can be used nearly unmodified with many packages
#
# The concept of "method" registering and the logic that implements it was shamelessly
# stolen from jhlj's Compile.sh script :)
#
# Check the following 4 variables before running the script
topdir=tar
version=1.13.25
pkgver=2
source[0]=$topdir-$version.tar.bz2
# If there are no patches, simply comment this
patch[0]=tar-1.13.18-manpage.patch
patch[1]=tar-1.13.19-absolutenames.patch
patch[2]=tar-1.13.19-error.patch
patch[3]= #tar-1.13.22-nolibrt.patch
patch[4]=tar-1.13.25-argv.patch
patch[5]= #tar-1.13.25-autoconf.patch
patch[6]=tar-1.13.25-dots.patch
patch[7]=tar-1.13.25-sock.patch
# Source function library
. ${BUILDPKG_BASE}/scripts/buildpkg.functions
# Fill in pkginfo values if necessary
# using pkgname,name,pkgcat,pkgvendor & pkgdesc
name="GNU tar"
pkgcat="application"
pkgvendor="http://www.gnu.org"
pkgdesc="Creates tar archives"
# Define script functions and register them
METHODS=""
reg() {
METHODS="$METHODS $1"
}
reg prep
prep()
{
generic_prep
}
reg build
build()
{
generic_build
}
reg install
install()
{
generic_install DESTDIR
$RM -f $stagedir$prefix/info/dir
INSTALL="/usr/local/bin/install -D"
setdir source
$INSTALL -m 644 tar.1 $stagedir$prefix/man/man1/tar.1
}
reg pack
pack()
{
generic_pack
}
reg distclean
distclean()
{
clean distclean
}
###################################################
# No need to look below here
###################################################
reg all
all()
{
for METHOD in $METHODS
do
case $METHOD in
all*|*clean) ;;
*) $METHOD
;;
esac
done
}
reg
usage() {
echo Usage $0 "{"$(echo $METHODS | tr " " "|")"}"
exit 1
}
OK=0
for METHOD in $*
do
METHOD=" $METHOD *"
if [ "${METHODS%$METHOD}" == "$METHODS" ] ; then
usage
fi
OK=1
done
if [ $OK = 0 ] ; then
usage;
fi
for METHOD in $*
do
( $METHOD )
done