On Wed, 13 Mar 2024 13:03:57 +0100 Lucas Nussbaum wrote:
> During a rebuild of all packages in sid, your package failed to build
> on amd64.
>
>
> Relevant part (hopefully):
> > /bin/bash ../libtool --tag=CC --mode=link gcc -g -O2
> > -Werror=implicit-function-declaration -ffile-prefix-map=/<>=.
> > -fstack-protector-strong -fstack-clash-protection -Wformat
> > -Werror=format-security -fcf-protection -Wall -pedantic -Wl,-z,relro
> > -Wl,-z,now -o namazu.cgi form.o namazu.o output.o rcfile.o charset.o
> > result.o usage.o cgi.o namazu-cgi.o ../nmz/libnmz.la ../lib/libnmzut.a -lm
> > libtool: link: gcc -g -O2 -Werror=implicit-function-declaration
> > -ffile-prefix-map=/<>=. -fstack-protector-strong
> > -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection
> > -Wall -pedantic -Wl,-z -Wl,relro -Wl,-z -Wl,now -o .libs/namazu.cgi form.o
> > namazu.o output.o rcfile.o charset.o result.o usage.o cgi.o namazu-cgi.o
> > ../nmz/.libs/libnmz.so ../lib/libnmzut.a -lm
> > libtool: link: gcc -g -O2 -Werror=implicit-function-declaration
> > -ffile-prefix-map=/<>=. -fstack-protector-strong
> > -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection
> > -Wall -pedantic -Wl,-z -Wl,relro -Wl,-z -Wl,now -o .libs/namazu form.o
> > namazu.o output.o rcfile.o charset.o result.o usage.o namazu-cmd.o
> > ../nmz/.libs/libnmz.so ../lib/libnmzut.a -lm
> > /usr/bin/ld: ../nmz/.libs/libnmz.so: undefined reference to `_nmz_memcmp'
> > /usr/bin/ld: ../nmz/.libs/libnmz.so: undefined reference to `_nmz_memcmp'
> > collect2: error: ld returned 1 exit status
It was caused by configure script, checking memcmp function:
conftest.c:72:5: note: include '' or provide a declaration of 'exit'
cc1: some warnings being treated as errors
configure:15824: $? = 1
configure: program exited with status 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "namazu"
| #define PACKAGE_TARNAME "namazu"
| #define PACKAGE_VERSION "2.0.21"
| #define PACKAGE_STRING "namazu 2.0.21"
| #define PACKAGE_BUGREPORT "bug-nam...@namazu.org"
| #define PACKAGE_URL ""
| #define PACKAGE "namazu"
| #define VERSION "2.0.21"
| #define MAILING_ADDRESS "bug-nam...@namazu.org"
| #define TRAC_URI "http://www.namazu.org/trac-namazu/trac.cgi;
| #define COPYRIGHT "Copyright (C) 1997-1999 Satoru Takabayashi All
rights reserved.\nCopyright (C) 2000-2011 Namazu Project All rights
reserved."
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_SYS_PARAM_H 1
| #define STDC_HEADERS 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define ENABLE_NLS 1
| #define HAVE_GETTEXT 1
| #define HAVE_DCGETTEXT 1
| #define HAVE_LC_MESSAGES 1
| #define HAVE_LIBM 1
| #define HAVE_FCNTL_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_MALLOC_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_STRING_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_LOCALE_H 1
| #define HAVE_ERRNO_H 1
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 8
| #define SIZEOF_LONG_LONG 8
| #define HAVE_ALLOCA_H 1
| #define HAVE_ALLOCA 1
| #define HAVE_GETPAGESIZE 1
| #define HAVE_VPRINTF 1
| #define HAVE_MMAP 1
| /* end confdefs.h. */
|
| main()
| {
| /* Some versions of memcmp are not 8-bit clean. */
| char c0 = 0x40, c1 = 0x80, c2 = 0x81;
| if (memcmp(, , 1) >= 0 || memcmp(, , 1) >= 0)
| exit (1);
|
| /* The Next x86 OpenStep bug shows up only when comparing 16 bytes
| or more and with at least one buffer not starting on a 4-byte boundary.
| William Lewis provided this test program. */
| {
| char foo[21];
| char bar[21];
| int i;
| for (i = 0; i < 4; i++)
| {
| char *a = foo + i;
| char *b = bar + i;
| strcpy (a, "0111");
| strcpy (b, "1000");
| if (memcmp (a, b, 16) >= 0)
|exit (1);
| }
| exit (0);
| }
| }
|
configure:15835: result: no
The test program didn't include stdlib.h, so
-Werror=implicit-function-declaration caused error then the script
check failed.
I'll try to make a workaround.