[Top][All Lists]
[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?
- [bug-patch] major config problems with patch 2.6.1,
Jim Reid <=