[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [bug-patch] [bug-report] could not generate stdbool.h and xstrndup.o
From: |
Bruno Haible |
Subject: |
Re: [bug-patch] [bug-report] could not generate stdbool.h and xstrndup.o |
Date: |
Wed, 18 Nov 2009 11:07:24 +0100 |
User-agent: |
KMail/1.9.9 |
Yasutaka SHINDOH wrote:
> GNU patch 2.6 has the following bugs.
>
> - could not generate gl/lib/stdbool.h
> - could not compile gl/lib/xstrndup.c (Mac OS X)
The symptoms that I see on MacOS X 10.5:
$ ./configure --prefix=$HOME/data/local-macos CPPFLAGS=-Wall
...
$ make
gcc -std=gnu99 -c -Wall -DHAVE_CONFIG_H -Ded_PROGRAM=\"/bin/ed\" -DENABLE_MERGE
-I. -I./src -I./gl/lib -g -O2 -o gl/lib/argmatch.o gl/lib/argmatch.c
gcc -std=gnu99 -c -Wall -DHAVE_CONFIG_H -Ded_PROGRAM=\"/bin/ed\" -DENABLE_MERGE
-I. -I./src -I./gl/lib -g -O2 -o gl/lib/backupfile.o gl/lib/backupfile.c
gcc -std=gnu99 -c -Wall -DHAVE_CONFIG_H -Ded_PROGRAM=\"/bin/ed\" -DENABLE_MERGE
-I. -I./src -I./gl/lib -g -O2 -o gl/lib/basename.o gl/lib/basename.c
gcc -std=gnu99 -c -Wall -DHAVE_CONFIG_H -Ded_PROGRAM=\"/bin/ed\" -DENABLE_MERGE
-I. -I./src -I./gl/lib -g -O2 -o gl/lib/dirname.o gl/lib/dirname.c
gcc -std=gnu99 -c -Wall -DHAVE_CONFIG_H -Ded_PROGRAM=\"/bin/ed\" -DENABLE_MERGE
-I. -I./src -I./gl/lib -g -O2 -o gl/lib/stripslash.o gl/lib/stripslash.c
gcc -std=gnu99 -c -Wall -DHAVE_CONFIG_H -Ded_PROGRAM=\"/bin/ed\" -DENABLE_MERGE
-I. -I./src -I./gl/lib -g -O2 -o gl/lib/error.o gl/lib/error.c
gcc -std=gnu99 -c -Wall -DHAVE_CONFIG_H -Ded_PROGRAM=\"/bin/ed\" -DENABLE_MERGE
-I. -I./src -I./gl/lib -g -O2 -o gl/lib/exitfail.o gl/lib/exitfail.c
rm -f gl/lib/getopt.h-t gl/lib/getopt.h
{ echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
cat ./gl/lib/getopt.hin; \
} > gl/lib/getopt.h-t
mv -f gl/lib/getopt.h-t gl/lib/getopt.h
gcc -std=gnu99 -c -Wall -DHAVE_CONFIG_H -Ded_PROGRAM=\"/bin/ed\" -DENABLE_MERGE
-I. -I./src -I./gl/lib -g -O2 -o gl/lib/getopt.o gl/lib/getopt.c
gcc -std=gnu99 -c -Wall -DHAVE_CONFIG_H -Ded_PROGRAM=\"/bin/ed\" -DENABLE_MERGE
-I. -I./src -I./gl/lib -g -O2 -o gl/lib/getopt1.o gl/lib/getopt1.c
gcc -std=gnu99 -c -Wall -DHAVE_CONFIG_H -Ded_PROGRAM=\"/bin/ed\" -DENABLE_MERGE
-I. -I./src -I./gl/lib -g -O2 -o gl/lib/hash.o gl/lib/hash.c
gcc -std=gnu99 -c -Wall -DHAVE_CONFIG_H -Ded_PROGRAM=\"/bin/ed\" -DENABLE_MERGE
-I. -I./src -I./gl/lib -g -O2 -o gl/lib/quote.o gl/lib/quote.c
gcc -std=gnu99 -c -Wall -DHAVE_CONFIG_H -Ded_PROGRAM=\"/bin/ed\" -DENABLE_MERGE
-I. -I./src -I./gl/lib -g -O2 -o gl/lib/quotearg.o gl/lib/quotearg.c
gcc -std=gnu99 -c -Wall -DHAVE_CONFIG_H -Ded_PROGRAM=\"/bin/ed\" -DENABLE_MERGE
-I. -I./src -I./gl/lib -g -O2 -o gl/lib/safe-write.o gl/lib/safe-write.c
gcc -std=gnu99 -c -Wall -DHAVE_CONFIG_H -Ded_PROGRAM=\"/bin/ed\" -DENABLE_MERGE
-I. -I./src -I./gl/lib -g -O2 -o gl/lib/xmalloc.o gl/lib/xmalloc.c
gcc -std=gnu99 -c -Wall -DHAVE_CONFIG_H -Ded_PROGRAM=\"/bin/ed\" -DENABLE_MERGE
-I. -I./src -I./gl/lib -g -O2 -o gl/lib/xstrndup.o gl/lib/xstrndup.c
gl/lib/xstrndup.c: In function 'xstrndup':
gl/lib/xstrndup.c:32: warning: implicit declaration of function 'strndup'
gl/lib/xstrndup.c:32: warning: initialization makes pointer from integer
without a cast
gcc -std=gnu99 -c -Wall -DHAVE_CONFIG_H -Ded_PROGRAM=\"/bin/ed\" -DENABLE_MERGE
-I. -I./src -I./gl/lib -g -O2 -o gl/lib/full-write.o gl/lib/full-write.c
gcc -std=gnu99 -c -Wall -DHAVE_CONFIG_H -Ded_PROGRAM=\"/bin/ed\" -DENABLE_MERGE
-I. -I./src -I./gl/lib -g -O2 -o src/merge.o src/merge.c
src/diffseq.h: In function 'compareseq':
src/diffseq.h:474: warning: 'part.xmid' may be used uninitialized in this
function
src/diffseq.h:474: warning: 'part.ymid' may be used uninitialized in this
function
src/diffseq.h:355: warning: 'fxbest' may be used uninitialized in this function
src/diffseq.h:357: warning: 'bxbest' may be used uninitialized in this function
gcc -std=gnu99 -c -Wall -DHAVE_CONFIG_H -Ded_PROGRAM=\"/bin/ed\" -DENABLE_MERGE
-I. -I./src -I./gl/lib -g -O2 -o src/inp.o src/inp.c
gcc -std=gnu99 -c -Wall -DHAVE_CONFIG_H -Ded_PROGRAM=\"/bin/ed\" -DENABLE_MERGE
-I. -I./src -I./gl/lib -g -O2 -o src/maketime.o src/maketime.c
gcc -std=gnu99 -c -Wall -DHAVE_CONFIG_H -Ded_PROGRAM=\"/bin/ed\" -DENABLE_MERGE
-I. -I./src -I./gl/lib -g -O2 -o src/partime.o src/partime.c
gcc -std=gnu99 -c -Wall -DHAVE_CONFIG_H -Ded_PROGRAM=\"/bin/ed\" -DENABLE_MERGE
-I. -I./src -I./gl/lib -g -O2 -o src/patch.o src/patch.c
src/patch.c: In function 'get_some_switches':
src/patch.c:681: warning: passing argument 2 of 'rpl_getopt_long' discards
qualifiers from pointer target type
gcc -std=gnu99 -c -Wall -DHAVE_CONFIG_H -Ded_PROGRAM=\"/bin/ed\" -DENABLE_MERGE
-I. -I./src -I./gl/lib -g -O2 -o src/pch.o src/pch.c
gcc -std=gnu99 -c -Wall -DHAVE_CONFIG_H -Ded_PROGRAM=\"/bin/ed\" -DENABLE_MERGE
-I. -I./src -I./gl/lib -g -O2 -o src/quotesys.o src/quotesys.c
gcc -std=gnu99 -c -Wall -DHAVE_CONFIG_H -Ded_PROGRAM=\"/bin/ed\" -DENABLE_MERGE
-I. -I./src -I./gl/lib -g -O2 -o src/util.o src/util.c
gcc -std=gnu99 -c -Wall -DHAVE_CONFIG_H -Ded_PROGRAM=\"/bin/ed\" -DENABLE_MERGE
-I. -I./src -I./gl/lib -g -O2 -o src/version.o src/version.c
gcc -std=gnu99 -o src/patch -g -O2 gl/lib/argmatch.o gl/lib/backupfile.o
gl/lib/basename.o gl/lib/dirname.o gl/lib/stripslash.o gl/lib/error.o
gl/lib/exitfail.o gl/lib/getopt.o gl/lib/getopt1.o gl/lib/hash.o gl/lib/quote.o
gl/lib/quotearg.o gl/lib/safe-write.o gl/lib/xmalloc.o gl/lib/xstrndup.o
gl/lib/full-write.o src/merge.o src/inp.o src/maketime.o src/partime.o
src/patch.o src/pch.o src/quotesys.o src/util.o src/version.o
Undefined symbols:
"_strndup", referenced from:
_xstrndup in xstrndup.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
make: *** [src/patch] Error 1
The reason is that configure.ac does not use the gl_INIT macro that gnulib-tool
would have generated, and does also not use the gl_FUNC_STRNDUP macro that is
needed as part of the gnulib 'strndup' module.
Cf. <http://lists.gnu.org/archive/html/bug-patch/2009-05/msg00005.html>
Bruno