diff options
Diffstat (limited to 'source/a/patch')
3 files changed, 7 insertions, 175 deletions
diff --git a/source/a/patch/patch.281537bcd92515ae3b9f154acd579ce97260f99b.diff b/source/a/patch/patch.281537bcd92515ae3b9f154acd579ce97260f99b.diff deleted file mode 100644 index b882b725..00000000 --- a/source/a/patch/patch.281537bcd92515ae3b9f154acd579ce97260f99b.diff +++ /dev/null @@ -1,78 +0,0 @@ -From 281537bcd92515ae3b9f154acd579ce97260f99b Mon Sep 17 00:00:00 2001 -From: Andreas Gruenbacher <agruen@linbit.com> -Date: Thu, 13 Sep 2012 14:13:08 +0000 -Subject: In a git-style diff, make sure not to unlink the original by accident - -* src/patch.c (main): Fail if a file is not empty as expected. -(output_files): In a git-style diff, make sure not to unlink the original when -making a backup of an unmodified file. -* tests/create-delete: Fix failed-file-deletion test and add -successful-file-deletion test. ---- -diff --git a/src/patch.c b/src/patch.c -index 1c6fb4b..ce81bbe 100644 ---- a/src/patch.c -+++ b/src/patch.c -@@ -508,6 +508,7 @@ main (int argc, char **argv) - && ! (merge && somefailed)) - { - mismatch = true; -+ somefailed = true; - if (verbosity != SILENT) - say ("File %s is not empty after patch, as expected\n", - quotearg (outname)); -@@ -1865,7 +1866,7 @@ output_files (struct stat const *st) - output_file_now (file_to_output->from, &from_needs_removal, - from_st, file_to_output->to, - file_to_output->mode, file_to_output->backup); -- if (from_needs_removal) -+ if (file_to_output->to && from_needs_removal) - unlink (file_to_output->from); - - if (st && st->st_dev == from_st->st_dev && st->st_ino == from_st->st_ino) -diff --git a/tests/create-delete b/tests/create-delete -index 9a6e1bb..7eed11f 100644 ---- a/tests/create-delete -+++ b/tests/create-delete -@@ -176,12 +176,37 @@ EOF - echo data > target - cat > p.diff <<EOF - diff --git a/target b/target --index 1..0 -+deleted file mode 100644 -+index 1269488..0000000 - EOF - - check 'patch -p1 -b < p.diff || echo status: $?' <<EOF - patching file target - File target is not empty after patch, as expected -+status: 1 -+EOF -+ -+check 'cat target' <<EOF -+data -+EOF -+ -+# Patch creates a backup file even when the original file remains unchanged: -+check 'cat target.orig' <<EOF -+data -+EOF -+ -+cat > p.diff <<EOF -+diff --git a/target b/target -+deleted file mode 100644 -+index 1269488..0000000 -+--- a/target -++++ /dev/null -+@@ -1 +0,0 @@ -+-data -+EOF -+ -+check 'patch -p1 -b -f < p.diff || echo status: $?' <<EOF -+patching file target - EOF - - ncheck 'test ! -e target' --- -cgit v0.9.0.2 - diff --git a/source/a/patch/patch.99f2638763845d8173a0c9f9209ac2b4be947165.diff b/source/a/patch/patch.99f2638763845d8173a0c9f9209ac2b4be947165.diff deleted file mode 100644 index 14c342a5..00000000 --- a/source/a/patch/patch.99f2638763845d8173a0c9f9209ac2b4be947165.diff +++ /dev/null @@ -1,88 +0,0 @@ -From 99f2638763845d8173a0c9f9209ac2b4be947165 Mon Sep 17 00:00:00 2001 -From: Andreas Gruenbacher <agruen@linbit.com> -Date: Tue, 18 Sep 2012 10:51:17 +0000 -Subject: Fix file truncation when switching from git diff to non-git diff - -* src/patch.c (main): Output queued output files only when switching from a git -diff to a non-git diff. This can modify the input file, so make sure to -stat() it again. -* tests/concat-git-diff: Add test case growing a file with a git diff and then -with a non-git diff; without this fix; the result would be truncated. ---- -diff --git a/src/patch.c b/src/patch.c -index 0bce8fb..0b0fdd4 100644 ---- a/src/patch.c -+++ b/src/patch.c -@@ -196,8 +196,12 @@ main (int argc, char **argv) - - if (have_git_diff != pch_git_diff ()) - { -+ if (have_git_diff) -+ { -+ output_files (NULL); -+ inerrno = -1; -+ } - have_git_diff = ! have_git_diff; -- output_files (NULL); - } - - if (TMPREJNAME_needs_removal) -diff --git a/tests/concat-git-diff b/tests/concat-git-diff -index 927eb5a..c78da53 100644 ---- a/tests/concat-git-diff -+++ b/tests/concat-git-diff -@@ -56,11 +56,7 @@ check 'cat f' <<EOF - three - EOF - --cat > f <<EOF --1 --2 --3 --EOF -+seq 3 > f - - cat > concat2.diff <<EOF - diff --git a/f b/f -@@ -95,3 +91,38 @@ a - 3 - b - EOF -+ -+seq 3 > f -+ -+cat > concat3.diff <<EOF -+diff --git a/f b/f -+index 01e79c3..0d0b976 100644 -+--- a/f -++++ b/f -+@@ -1,3 +1,4 @@ -+ 1 -+ 2 -+ 3 -++b -+diff a/f b/f -+--- a/f -++++ b/f -+@@ -1,3 +1,4 @@ -++a -+ 1 -+ 2 -+ 3 -+EOF -+ -+check 'patch -p1 < concat3.diff || echo "Status: $?"' <<EOF -+patching file f -+patching file f -+EOF -+ -+check 'cat f' <<EOF -+a -+1 -+2 -+3 -+b -+EOF --- -cgit v0.9.0.2 - diff --git a/source/a/patch/patch.SlackBuild b/source/a/patch/patch.SlackBuild index 1607b405..28880a27 100755 --- a/source/a/patch/patch.SlackBuild +++ b/source/a/patch/patch.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2005-2009, 2010, 2012 Patrick J. Volkerding, Sebeka, Minnesota, USA +# Copyright 2005-2009, 2010, 2012, 2015 Patrick J. Volkerding, Sebeka, Minnesota, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -20,13 +20,14 @@ # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -VERSION=2.7 -BUILD=${BUILD:-2} +PKGNAM=patch +VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} +BUILD=${BUILD:-1} # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then case "$( uname -m )" in - i?86) export ARCH=i486 ;; + i?86) export ARCH=i586 ;; arm*) export ARCH=arm ;; # Unless $ARCH is already set, use uname -m for all other archs: *) export ARCH=$( uname -m ) ;; @@ -40,8 +41,8 @@ PKG=$TMP/package-patch rm -rf $PKG mkdir -p $TMP $PKG -if [ "$ARCH" = "i486" ]; then - SLKCFLAGS="-O2 -march=i486 -mtune=i686" +if [ "$ARCH" = "i586" ]; then + SLKCFLAGS="-O2 -march=i586 -mtune=i686" elif [ "$ARCH" = "s390" ]; then SLKCFLAGS="-O2" elif [ "$ARCH" = "x86_64" ]; then @@ -55,9 +56,6 @@ rm -rf patch-${VERSION} tar xvf $CWD/patch-${VERSION}.tar.xz || exit 1 cd patch-${VERSION} || exit 1 -zcat $CWD/patch.281537bcd92515ae3b9f154acd579ce97260f99b.diff.gz | patch -p1 --verbose || exit 1 -zcat $CWD/patch.99f2638763845d8173a0c9f9209ac2b4be947165.diff.gz | patch -p1 --verbose || exit 1 - chown -R root:root . find . \ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ |