bug-patch
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug-patch] major config problems with patch 2.6.1


From: Jim Reid
Subject: [bug-patch] major config problems with patch 2.6.1
Date: Mon, 5 Apr 2010 16:09:21 +0100

Hi. There are a number of problems/errors compiling and 2.6.1 on BSD- like platforms. It looks like patch has accidentally been turned into something that only works on Linux. Sigh.

[1] The generated Makefile contains lots of references to library object modules like ${LIBOBJDIR}argmatch$U.o. This blows up when there's an environment variable U which then gets appended into the names of the build targets.

[2] The generated Makefile only works with gnu make. Older versions of patch produced a vanilla Makefile that just worked with any flavour of make.

[3] After fixing [1] by editing the Makefile, gnu make reports an error "git: not found" on FreeBSD8.0, though patch still builds OK.

[4] On FreeBSD 7.2 linking fails:
gcc: gl/lib/strnlen.o: No such file or directory
gmake: *** [src/patch] Error 1
Deleting this bogus target from the Makefile results in patch getting built.

[5] On MacOSX 10.5, linking doubly fails. The first is the same as [4]. After deleting this spurious target, linking now fails:
Undefined symbols:
  "_rpl_strnlen", referenced from:
      _strndup in strndup.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
gnumake: *** [src/patch] Error 1

I've not yet kludged around this: the rat-hole of nested dependent #ifdefs makes my head hurt.

[6] make check dies horribly if bash isn't installed. What's wrong with a simple shell script?

[7] make check fails to work on BSD systems even when bash is installed because the BSD mktemp requires a name/template for the scratch directory or file, unlike the gnu one. Adding a sensible argument like "/tmp/patch-$$" to tests/test-lib.sh
solves that bug.

[8] Some of the test scripts fail because seq is not installed. This is remarkably dumb: why not just use "echo 1 2 3 4 5 > a" instead of "seq 1 5 >a"?

[9] The test scripts don't test the just-compiled patch! They will use whatever patch is found first in the search path.

Perhaps these can be fixed in the next release?








reply via email to

[Prev in Thread] Current Thread [Next in Thread]