diff --git a/tar/build.sh b/tar/build.sh index 8045500..6c54c4e 100755 --- a/tar/build.sh +++ b/tar/build.sh @@ -1,41 +1,26 @@ -#!/usr/local/bin/bash +#!/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 :) +# build.sh helper functions +. ${BUILDPKG_BASE}/scripts/build.sh.functions # +########################################################### # Check the following 4 variables before running the script topdir=tar -version=1.13.25 -pkgver=2 +version=1.20 +pkgver=1 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 +#patch[0]= # 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" -} +# Global settings +export CPPFLAGS="-I$prefix/include" +export LDFLAGS="-L$prefix/lib -R$prefix/lib" reg prep prep() @@ -49,15 +34,17 @@ build() generic_build } +reg check +check() +{ + generic_check +} + 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 - + doc ChangeLog README NEWS COPYING } reg pack @@ -75,42 +62,4 @@ 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 +build_sh $* diff --git a/tar/meta/pkgdef b/tar/meta/pkgdef new file mode 100644 index 0000000..a5ed119 --- /dev/null +++ b/tar/meta/pkgdef @@ -0,0 +1,9 @@ +[tar] +pkgname="${pkgprefix}${topdir}" +name="$topdir - GNU tar" +pkgcat="application" +pkgvendor="http://www.gnu.org/software/tar/" +shortdesc="Creates tar archives" +pkgver="$pkgver" +files(-,root,bin) +* diff --git a/tar/meta/relnotes b/tar/meta/relnotes new file mode 100644 index 0000000..bd83629 --- /dev/null +++ b/tar/meta/relnotes @@ -0,0 +1,27 @@ +PACKAGE DETAILS +--------------- +Name: %%PKGNAME%% +Version: %%SOURCE_AND_VER%% +Vendor: %%VENDOR%% +Packager: %%PKGEDBY%% + +Source (sha1sum): +%%SOURCE_SHA1SUM%% + +BUILD DETAILS +------------- +Compiler: +%%COMPILER%% + +Environment: +%%ENVIRONMENT%% + +Configure: +%%CONFIGURE%% + +KNOWN DEPENDENCIES +------------------ +%%DEPENDENCIES%% + +ERRORS/MISCELLANEOUS +-------------------- diff --git a/tar/src/tar-1.13.18-manpage.patch b/tar/src/tar-1.13.18-manpage.patch deleted file mode 100644 index 4bacf41..0000000 --- a/tar/src/tar-1.13.18-manpage.patch +++ /dev/null @@ -1,339 +0,0 @@ ---- tar-1.13.18/tar.1.manpage Mon Oct 30 12:52:03 2000 -+++ tar-1.13.18/tar.1 Mon Oct 30 12:56:15 2000 -@@ -0,0 +1,336 @@ -+.\" @(#)tar.1 1.13.14 2000/10/30 Bero; -+.TH TAR 1 "30 October 2000" -+.SH NAME -+tar \- The GNU version of the tar archiving utility -+.SH SYNOPSIS -+.B tar -+[ -+.B \- -+] -+.B A --catenate --concatenate \||\| c --create \||\| d --diff --compare \||\| r --append \||\| t --list \||\| u --update \||\| x -extract --get -+[ -+.B --atime-preserve -+] -+[ -+.B -b, --block-size N -+] -+[ -+.B -B, --read-full-blocks -+] -+[ -+.B -C, --directory DIR -+] -+[ -+.B --checkpoint -+] -+[ -+.B -f, --file [HOSTNAME:]F -+] -+[ -+.B --force-local -+] -+[ -+.B -F, --info-script F --new-volume-script F -+] -+[ -+.B -G, --incremental -+] -+[ -+.B -g, --listed-incremental F -+] -+[ -+.B -h, --dereference -+] -+[ -+.B -i, --ignore-zeros -+] -+[ -+.B -j, -I, --bzip -+] -+[ -+.B --ignore-failed-read -+] -+[ -+.B -k, --keep-old-files -+] -+[ -+.B -K, --starting-file F -+] -+[ -+.B -l, --one-file-system -+] -+[ -+.B -L, --tape-length N -+] -+[ -+.B -m, --modification-time -+] -+[ -+.B -M, --multi-volume -+] -+[ -+.B -N, --after-date DATE, --newer DATE -+] -+[ -+.B -o, --old-archive, --portability -+] -+[ -+.B -O, --to-stdout -+] -+[ -+.B -p, --same-permissions, --preserve-permissions -+] -+[ -+.B -P, --absolute-paths -+] -+[ -+.B --preserve -+] -+[ -+.B -R, --record-number -+] -+[ -+.B --remove-files -+] -+[ -+.B -s, --same-order, --preserve-order -+] -+[ -+.B --same-owner -+] -+[ -+.B -S, --sparse -+] -+[ -+.B -T, --files-from=F -+] -+[ -+.B --null -+] -+[ -+.B --totals -+] -+[ -+.B -v, --verbose -+] -+[ -+.B -V, --label NAME -+] -+[ -+.B --version -+] -+[ -+.B -w, --interactive, --confirmation -+] -+[ -+.B -W, --verify -+] -+[ -+.B --exclude FILE -+] -+[ -+.B -X, --exclude-from FILE -+] -+[ -+.B -Z, --compress, --uncompress -+] -+[ -+.B -z, --gzip, --ungzip -+] -+[ -+.B --use-compress-program PROG -+] -+[ -+.B --block-compress -+] -+[ -+.B -[0-7][lmh] -+] -+.TP -+.I filename1 [ filename2, ... filenameN ] -+.TP -+.I directory1 [ directory2, ...directoryN ] -+.SH DESCRIPTION -+.LP -+This manual page documents the GNU version of -+.B tar -+, an archiving program designed to store and extract files from -+an archive file known as a -+.IR tarfile. -+A -+.IR tarfile -+may be made on a tape drive, however, it is also common -+to write a -+.IR tarfile -+to a normal file. -+The first argument to -+.B tar -+must be one of the options: -+.BR Acdrtux , -+followed by any optional functions. -+The final arguments to -+.B tar -+are the names of the files or directories which should be archived. The use -+of a directory name always implies that the subdirectories below should be -+included in the archive. -+.SH "FUNCTION LETTERS" -+.TP -+.B One of the following options must be used: -+.TP -+.B -A, --catenate, --concatenate -+append tar files to an archive -+.TP -+.B -c, --create -+create a new archive -+.TP -+.B -d, --diff, --compare -+find differences between archive and file system -+.TP -+.B --delete -+delete from the archive (not for use on mag tapes!) -+.TP -+.B -r, --append -+append files to the end of an archive -+.TP -+.B -t, --list -+list the contents of an archive -+.TP -+.B -u, --update -+only append files that are newer than copy in archive -+.TP -+.B -x, --extract, --get -+extract files from an archive -+.SH "OTHER OPTIONS" -+.TP -+.B --atime-preserve -+don't change access times on dumped files -+.TP -+.B -b, --block-size N -+block size of Nx512 bytes (default N=20) -+.TP -+.B -B, --read-full-blocks -+reblock as we read (for reading 4.2BSD pipes) -+.TP -+.B -C, --directory DIR -+change to directory DIR -+.TP -+.B --checkpoint -+print directory names while reading the archive -+.TP -+.B -f, --file [HOSTNAME:]F -+use archive file or device F (default /dev/rmt0) -+.TP -+.B --force-local -+archive file is local even if has a colon -+.TP -+.B -F, --info-script F --new-volume-script F -+run script at end of each tape (implies -M) -+.TP -+.B -G, --incremental -+create/list/extract old GNU-format incremental backup -+.TP -+.B -g, --listed-incremental F -+create/list/extract new GNU-format incremental backup -+.TP -+.B -h, --dereference -+don't dump symlinks; dump the files they point to -+.TP -+.B -i, --ignore-zeros -+ignore blocks of zeros in archive (normally mean EOF) -+.TP -+.B -j, -I, --bzip -+filter the archive through bzip2. Note: -I is deprecated and may get a -+different meaning in the near future. -+.TP -+.B --ignore-failed-read -+don't exit with non-zero status on unreadable files -+.TP -+.B -k, --keep-old-files -+keep existing files; don't overwrite them from archive -+.TP -+.B -K, --starting-file F -+begin at file F in the archive -+.TP -+.B -l, --one-file-system -+stay in local file system when creating an archive -+.TP -+.B -L, --tape-length N -+change tapes after writing N*1024 bytes -+.TP -+.B -m, --modification-time -+don't extract file modified time -+.TP -+.B -M, --multi-volume -+create/list/extract multi-volume archive -+.TP -+.B -N, --after-date DATE, --newer DATE -+only store files newer than DATE -+.TP -+.B -o, --old-archive, --portability -+write a V7 format archive, rather than ANSI format -+.TP -+.B -O, --to-stdout -+extract files to standard output -+.TP -+.B -p, --same-permissions, --preserve-permissions -+extract all protection information -+.TP -+.B -P, --absolute-paths -+don't strip leading `/'s from file names -+.TP -+.B --preserve -+like -p -s -+.TP -+.B -R, --record-number -+show record number within archive with each message -+.TP -+.B --remove-files -+remove files after adding them to the archive -+.TP -+.B -s, --same-order, --preserve-order -+list of names to extract is sorted to match archive -+.TP -+.B --same-owner -+create extracted files with the same ownership -+.TP -+.B -S, --sparse -+handle sparse files efficiently -+.TP -+.B -T, --files-from=F -+get names to extract or create from file F -+.TP -+.B --null -+-T reads null-terminated names, disable -C -+.TP -+.B --totals -+print total bytes written with --create -+.TP -+.B -v, --verbose -+verbosely list files processed -+.TP -+.B -V, --label NAME -+create archive with volume name NAME -+.TP -+.B --version -+print tar program version number -+.TP -+.B -w, --interactive, --confirmation -+ask for confirmation for every action -+.TP -+.B -W, --verify -+attempt to verify the archive after writing it -+.TP -+.B --exclude FILE -+exclude file FILE -+.TP -+.B -X, --exclude-from FILE -+exclude files listed in FILE -+.TP -+.B -Z, --compress, --uncompress -+filter the archive through compress -+.TP -+.B -z, --gzip, --ungzip -+filter the archive through gzip -+.TP -+.B --use-compress-program PROG -+filter the archive through PROG (which must accept -d) diff --git a/tar/src/tar-1.13.19-absolutenames.patch b/tar/src/tar-1.13.19-absolutenames.patch deleted file mode 100644 index 644151c..0000000 --- a/tar/src/tar-1.13.19-absolutenames.patch +++ /dev/null @@ -1,23 +0,0 @@ ---- tar-1.13.19/src/extract.c~ Sat Jan 13 00:59:29 2001 -+++ tar-1.13.19/src/extract.c Mon Aug 20 08:50:49 2001 -@@ -932,10 +932,19 @@ - { - struct stat st1, st2; - int e; -+ size_t skiplinkcrud; -+ -+ if (absolute_names_option) -+ skiplinkcrud = 0; -+ else { -+ skiplinkcrud = FILESYSTEM_PREFIX_LEN (current_link_name); -+ while (ISSLASH (current_link_name[skiplinkcrud])) -+ skiplinkcrud++; -+ } - - /* MSDOS does not implement links. However, djgpp's link() actually - copies the file. */ -- status = link (current_link_name, CURRENT_FILE_NAME); -+ status = link (current_link_name + skiplinkcrud, CURRENT_FILE_NAME); - - if (status == 0) - break; diff --git a/tar/src/tar-1.13.19-error.patch b/tar/src/tar-1.13.19-error.patch deleted file mode 100644 index 4be8770..0000000 --- a/tar/src/tar-1.13.19-error.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- tar-1.13.19/src/incremen.c.sux Thu May 17 14:16:47 2001 -+++ tar-1.13.19/src/incremen.c Thu May 17 14:17:00 2001 -@@ -182,8 +182,11 @@ - struct directory *directory; /* for checking if already already seen */ - enum children children; - -+ if (! dirp) { -- if (! dirp) - savedir_error (path); -+ errno = 1; -+ return NULL; -+ } - errno = 0; - - name_buffer_size = strlen (path) + NAME_FIELD_SIZE; diff --git a/tar/src/tar-1.13.22-nolibrt.patch b/tar/src/tar-1.13.22-nolibrt.patch deleted file mode 100644 index 10f4362..0000000 --- a/tar/src/tar-1.13.22-nolibrt.patch +++ /dev/null @@ -1,19 +0,0 @@ ---- tar-1.13.22/configure.ac.rt Thu Sep 13 14:06:03 2001 -+++ tar-1.13.22/configure.ac Thu Sep 13 14:06:50 2001 -@@ -166,12 +166,13 @@ - # - # Solaris 2.5.1 needs -lposix4 to get the clock_gettime function. - # Solaris 7 prefers the library name -lrt to the obsolescent name -lposix4. -+# We don't want that dependency, though. Check for something weird. ;) - tar_LDADD= - tar_save_LIBS="$LIBS" --AC_SEARCH_LIBS(clock_gettime, [rt posix4]) --AC_CHECK_FUNCS(clock_gettime) -+AC_SEARCH_LIBS(clock_gettyme, [rt posix4]) -+AC_CHECK_FUNCS(clock_gettyme) - if test " $LIBS" != " $tar_save_LIBS"; then -- tar_LDADD="$ac_cv_search_clock_gettime" -+ tar_LDADD="$ac_cv_search_clock_gettyme" - LIBS="$tar_save_LIBS" - fi - AC_SUBST(tar_LDADD) diff --git a/tar/src/tar-1.13.25-argv.patch b/tar/src/tar-1.13.25-argv.patch deleted file mode 100644 index 77137d9..0000000 --- a/tar/src/tar-1.13.25-argv.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- tar-1.13.25/src/tar.c 2001-09-21 02:11:27.000000000 +0200 -+++ tar-1.13.25/src/tar.c 2002-06-16 18:19:04.000000000 +0200 -@@ -534,7 +534,7 @@ - /* Allocate a new argument array, and copy program name in it. */ - - new_argc = argc - 1 + strlen (argv[1]); -- new_argv = xmalloc (new_argc * sizeof (char *)); -+ new_argv = xmalloc ((new_argc + 1) * sizeof (char *)); - in = argv; - out = new_argv; - *out++ = *in++; -@@ -562,6 +562,10 @@ - while (in < argv + argc) - *out++ = *in++; - -+ /* K&R standard requires a NULL termination */ -+ -+ *out = NULL; -+ - /* Replace the old option list by the new one. */ - - argc = new_argc; diff --git a/tar/src/tar-1.13.25-autoconf.patch b/tar/src/tar-1.13.25-autoconf.patch deleted file mode 100644 index 00574d4..0000000 --- a/tar/src/tar-1.13.25-autoconf.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- tar-1.13.25/configure.ac.253 Tue Apr 9 19:21:01 2002 -+++ tar-1.13.25/configure.ac Tue Apr 9 19:21:22 2002 -@@ -234,7 +234,7 @@ - jm_FUNC_MALLOC - jm_FUNC_MKTIME - jm_FUNC_REALLOC --test "$ac_cv_func_strstr" = yes || LIBOBJS="$LIBOBJS strstr.o" -+test "$ac_cv_func_strstr" = yes || AC_LIBOBJ(strstr) - - AC_CACHE_CHECK(for remote shell, tar_cv_path_RSH, - [if test -n "$RSH"; then diff --git a/tar/src/tar-1.13.25-dots.patch b/tar/src/tar-1.13.25-dots.patch deleted file mode 100644 index dcc3d02..0000000 --- a/tar/src/tar-1.13.25-dots.patch +++ /dev/null @@ -1,16 +0,0 @@ ---- tar-1.13.25/src/misc.c.orig Mon Aug 27 00:14:26 2001 -+++ tar-1.13.25/src/misc.c Mon May 27 11:29:31 2002 -@@ -214,6 +214,13 @@ - return 0; - } - while (! ISSLASH (*p)); -+ -+ do -+ { -+ if (! *p++) -+ return 0; -+ } -+ while ( ISSLASH (*p)); - } - } - diff --git a/tar/src/tar-1.13.25-sock.patch b/tar/src/tar-1.13.25-sock.patch deleted file mode 100644 index 716ef78..0000000 --- a/tar/src/tar-1.13.25-sock.patch +++ /dev/null @@ -1,36 +0,0 @@ ---- tar-1.13.25/src/create.c.sock Tue Oct 23 15:00:52 2001 -+++ tar-1.13.25/src/create.c Tue Oct 23 15:02:33 2001 -@@ -1128,6 +1128,16 @@ - } - else if (is_avoided_name (p)) - return; -+ else if (S_ISSOCK (current_stat.st_mode)) -+ { -+ WARN ((0, 0, _("%s: socket ignored"), quotearg_colon (p))); -+ return; -+ } -+ else if (S_ISDOOR (current_stat.st_mode)) -+ { -+ WARN ((0, 0, _("%s: door ignored"), quotearg_colon (p))); -+ return; -+ } - else - { - /* Check for multiple links. -@@ -1507,16 +1517,6 @@ - type = BLKTYPE; - else if (S_ISFIFO (current_stat.st_mode)) - type = FIFOTYPE; -- else if (S_ISSOCK (current_stat.st_mode)) -- { -- WARN ((0, 0, _("%s: socket ignored"), quotearg_colon (p))); -- return; -- } -- else if (S_ISDOOR (current_stat.st_mode)) -- { -- WARN ((0, 0, _("%s: door ignored"), quotearg_colon (p))); -- return; -- } - else - goto unknown; - }