GNOME Bugzilla – Bug 686118
"threads.c", line 918: syntax error before or at: {
Last modified: 2012-10-22 21:20:28 UTC
Seems odd that this would show up on Solaris 10 however, it did. Thus : AS=/usr/ccs/bin/as CC=/opt/SUNWspro/bin/cc CFLAGS=-erroff -xstrconst -xildoff -m64 -xmemalign=8s -xnolibmil -Xa -xcode=pic32 -xregs=no%appl -xlibmieee -mc -g -xs -ftrap=%none -xbuiltin=%none -xdebugformat=dwarf -xunroll=1 -xtarget=ultraT2 -xcache=8/16/4:4096/64/16 -D_TS_ERRNO -D_POSIX_PTHREAD_SEMANTICS -D_LARGEFILE64_SOURCE CONFIG_SHELL=/bin/bash CPPFLAGS=-I/usr/local/include -I/usr/local/include/readline -I/usr/sfw/ssl/include CXX=/opt/SUNWspro/bin/CC CXXFLAGS=-erroff -xildoff -m64 -xmemalign=8s -xcode=pic32 -xregs=no%appl -xlibmieee -mc -g -xs -xunroll=1 -xtarget=ultraT2 -xcache=8/16/4:4096/64/16 -R/usr/local/lib -L/usr/local/lib -D_TS_ERRNO -D_POSIX_PTHREAD_SEMANTICS -D_LARGEFILE64_SOURCE EDITOR=/usr/xpg4/bin/vi HOME=/export/home/dclarke LANG=C LC_ALL=C LC_COLLATE=C LC_CTYPE=C LC_MESSAGES=C LC_MONETARY=C LC_NUMERIC=C LC_TIME=C LD=/usr/ccs/bin/ld LD_OPTIONS=-L/usr/local/lib -L/usr/sfw/lib/sparcv9 LD_RUN_PATH=/usr/local/lib/$ISALIST:/usr/sfw/lib/$ISALIST:/usr/local/lib:/usr/sfw/lib M4=/usr/local/bin/gm4 PAGER=/usr/xpg4/bin/more PATH=/usr/local/bin:/usr/xpg6/bin:/usr/xpg4/bin:/usr/ccs/bin:/opt/SUNWspro/bin:/usr/bin:/sbin:/bin:/usr/sbin:/usr/dt/bin:/usr/openwin/bin:/opt/schily/bin PKG_CONFIG_PATH=/usr/local/lib/pkgconfig SED=/usr/local/bin/gsed SHELL=/bin/ksh SRC=/usr/local/src TERM=vt100 TZ=GMT0 USER=dclarke VISUAL=/usr/xpg4/bin/vi $ cc -V cc: Sun C 5.9 SunOS_sparc Patch 124867-16 2010/08/11 usage: cc [ options] files. Use 'cc -flags' for details $ uname -a SunOS node002 5.10 Generic_147440-23 sun4v sparc SUNW,T5240 So that is the compile environment on a Solaris 10 Sparc ( Niagara T5240 machine ) and the configure went smooth : $ ./configure --enable-dependency-tracking --enable-shared --enable-static --enable-rebuild-docs=yes checking build system type... sparc-sun-solaris2.10 checking host system type... sparc-sun-solaris2.10 checking for a BSD-compatible install... ./install-sh -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... ./install-sh -c -d checking for gawk... no checking for mawk... no checking for nawk... nawk checking whether make sets $(MAKE)... yes checking whether make supports nested variables... yes checking for gcc... /opt/SUNWspro/bin/cc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... no checking whether /opt/SUNWspro/bin/cc accepts -g... yes checking for /opt/SUNWspro/bin/cc option to accept ISO C89... none needed checking for style of include used by make... GNU checking dependency style of /opt/SUNWspro/bin/cc... dashXmstdout checking whether ln -s works... yes checking how to run the C preprocessor... /opt/SUNWspro/bin/cc -E checking for rm... /usr/xpg4/bin/rm checking for mv... /usr/xpg4/bin/mv checking for tar... /usr/bin/tar checking for perl... /usr/bin/perl checking for wget... /usr/bin/wget checking for xmllint... /usr/bin/xmllint checking for xsltproc... /usr/bin/xsltproc checking how to print strings... printf checking for a sed that does not truncate output... /usr/local/bin/gsed checking for grep that handles long lines and -e... /usr/xpg4/bin/grep checking for egrep... /usr/xpg4/bin/grep -E checking for fgrep... /usr/xpg4/bin/grep -F checking for non-GNU ld... /usr/ccs/bin/ld checking if the linker (/usr/ccs/bin/ld) is GNU ld... no checking for BSD- or MS-compatible name lister (nm)... /usr/xpg4/bin/nm -p checking the name lister (/usr/xpg4/bin/nm -p) interface... BSD nm checking the maximum length of command line arguments... 786240 checking whether the shell understands some XSI constructs... no checking whether the shell understands "+="... no checking how to convert sparc-sun-solaris2.10 file names to sparc-sun-solaris2.10 format... func_convert_file_noop checking how to convert sparc-sun-solaris2.10 file names to toolchain format... func_convert_file_noop checking for /usr/ccs/bin/ld option to reload object files... -r checking for objdump... no checking how to recognize dependent libraries... pass_all checking for dlltool... no checking how to associate runtime and link libraries... printf %s\n checking for ar... ar checking for archiver @FILE support... no checking for strip... strip checking for ranlib... ranlib checking command to parse /usr/xpg4/bin/nm -p output from /opt/SUNWspro/bin/cc object... ok checking for sysroot... no checking for mt... mt checking if mt is a manifest tool... no checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking for dlfcn.h... yes checking for objdir... .libs checking for /opt/SUNWspro/bin/cc option to produce PIC... -KPIC -DPIC checking if /opt/SUNWspro/bin/cc PIC flag -KPIC -DPIC works... yes checking if /opt/SUNWspro/bin/cc static flag -Bstatic works... no checking if /opt/SUNWspro/bin/cc supports -c -o file.o... conftest*: No such file or directory yes checking if /opt/SUNWspro/bin/cc supports -c -o file.o... (cached) yes checking whether the /opt/SUNWspro/bin/cc linker (/usr/ccs/bin/ld -64) supports shared libraries... yes checking dynamic linker characteristics... solaris2.10 ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... no checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... yes Checking zlib checking zlib.h usability... yes checking zlib.h presence... yes checking for zlib.h... yes checking for gzread in -lz... yes Checking lzma checking lzma.h usability... yes checking lzma.h presence... yes checking for lzma.h... yes checking for lzma_code in -llzma... yes Checking headers checking for dirent.h that defines DIR... yes checking for library containing opendir... none required checking for ANSI C header files... (cached) yes checking fcntl.h usability... yes checking fcntl.h presence... yes checking for fcntl.h... yes checking for unistd.h... (cached) yes checking ctype.h usability... yes checking ctype.h presence... yes checking for ctype.h... yes checking dirent.h usability... yes checking dirent.h presence... yes checking for dirent.h... yes checking errno.h usability... yes checking errno.h presence... yes checking for errno.h... yes checking malloc.h usability... yes checking malloc.h presence... yes checking for malloc.h... yes checking stdarg.h usability... yes checking stdarg.h presence... yes checking for stdarg.h... yes checking for sys/stat.h... (cached) yes checking for sys/types.h... (cached) yes checking for stdint.h... (cached) yes checking for inttypes.h... (cached) yes checking time.h usability... yes checking time.h presence... yes checking for time.h... yes checking ansidecl.h usability... no checking ansidecl.h presence... no checking for ansidecl.h... no checking ieeefp.h usability... yes checking ieeefp.h presence... yes checking for ieeefp.h... yes checking nan.h usability... yes checking nan.h presence... yes checking for nan.h... yes checking math.h usability... yes checking math.h presence... yes checking for math.h... yes checking limits.h usability... yes checking limits.h presence... yes checking for limits.h... yes checking fp_class.h usability... no checking fp_class.h presence... no checking for fp_class.h... no checking float.h usability... yes checking float.h presence... yes checking for float.h... yes checking for stdlib.h... (cached) yes checking for sys/socket.h... yes checking for netinet/in.h... yes checking for arpa/inet.h... yes checking netdb.h usability... yes checking netdb.h presence... yes checking for netdb.h... yes checking sys/time.h usability... yes checking sys/time.h presence... yes checking for sys/time.h... yes checking sys/select.h usability... yes checking sys/select.h presence... yes checking for sys/select.h... yes checking poll.h usability... yes checking poll.h presence... yes checking for poll.h... yes checking sys/mman.h usability... yes checking sys/mman.h presence... yes checking for sys/mman.h... yes checking sys/timeb.h usability... yes checking sys/timeb.h presence... yes checking for sys/timeb.h... yes checking signal.h usability... yes checking signal.h presence... yes checking for signal.h... yes checking for arpa/nameser.h... yes checking for resolv.h... yes checking dl.h usability... no checking dl.h presence... no checking for dl.h... no checking for dlfcn.h... (cached) yes Checking types checking for uint32_t... yes Checking libraries checking for strftime... yes checking for strdup... yes checking for strndup... no checking for strerror... yes checking for finite... yes checking for isnand... yes checking for fp_class... no checking for class... no checking for fpclass... yes checking for strftime... (cached) yes checking for localtime... yes checking for gettimeofday... yes checking for ftime... yes checking for stat... yes checking for _stat... yes checking for signal... yes checking for rand... yes checking for rand_r... yes checking for srand... yes checking for time... yes checking for isascii... yes checking for mmap... yes checking for munmap... yes checking for putenv... yes checking for va_copy... yes checking for library containing gethostent... -lnsl checking for library containing setsockopt... -lsocket checking for library containing connect... none required checking for type of socket length (socklen_t)... socklen_t * checking whether to enable IPv6... yes checking struct sockaddr::ss_family... yes checking for getaddrinfo... yes checking for isnan... yes checking for isinf... no checking for isinf in -lm... no Found python in /bin/python Found Python version 2.6 checking for shl_load... no checking for shl_load in -ldld... no checking for dlopen... yes Checking configuration requirements Enabling multithreaded support checking pthread.h usability... yes checking pthread.h presence... yes checking for pthread.h... yes checking for pthread_join in -lpthread... yes checking iconv.h usability... yes checking iconv.h presence... yes checking for iconv.h... yes checking for iconv... no checking for iconv in -liconv... yes checking for iconv declaration... extern size_t iconv (iconv_t cd, const char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft); Disabling ICU support Enabled Schematron support Enabled Schemas/Relax-NG support checking for printf... yes checking for sprintf... yes checking for fprintf... yes checking for snprintf... yes checking for vfprintf... yes checking for vsprintf... yes checking for vsnprintf... yes checking for sscanf... yes Disabling code coverage for GCC configure: creating ./config.status config.status: creating libxml2.spec config.status: creating Makefile config.status: creating include/Makefile config.status: creating include/libxml/Makefile config.status: creating doc/Makefile config.status: creating doc/examples/Makefile config.status: creating doc/devhelp/Makefile config.status: creating example/Makefile config.status: creating python/Makefile config.status: creating python/tests/Makefile config.status: creating xstc/Makefile config.status: creating include/libxml/xmlversion.h config.status: creating xml2-config config.status: creating libxml-2.0.pc config.status: creating libxml-2.0-uninstalled.pc config.status: creating python/setup.py config.status: creating config.h config.status: executing depfiles commands config.status: executing libtool commands libtoolT: No such file or directory Done configuring $ $ gmake gmake all-recursive gmake[1]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001' Making all in include gmake[2]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/include' Making all in libxml gmake[3]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/include/libxml' gmake[3]: Nothing to be done for `all'. gmake[3]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/include/libxml' gmake[3]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/include' gmake[3]: Nothing to be done for `all-am'. gmake[3]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/include' gmake[2]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/include' Making all in . gmake[2]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001' CC SAX.lo CC entities.lo CC encoding.lo CC error.lo CC parserInternals.lo CC parser.lo CC tree.lo CC hash.lo CC list.lo CC xmlIO.lo CC xmlmemory.lo CC uri.lo CC valid.lo CC xlink.lo CC HTMLparser.lo CC HTMLtree.lo CC debugXML.lo CC xpath.lo CC xpointer.lo CC xinclude.lo CC nanohttp.lo CC nanoftp.lo CC catalog.lo CC globals.lo CC threads.lo "threads.c", line 918: syntax error before or at: { "threads.c", line 918: cannot recover from previous errors cc: acomp failed for threads.c gmake[2]: *** [threads.lo] Error 1 gmake[2]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001' gmake[1]: *** [all-recursive] Error 1 gmake[1]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001' gmake: *** [all] Error 2 $ Looking at the source we see the function in question is /** * xmlCleanupThreads: * * xmlCleanupThreads() is used to to cleanup all the thread related * data of the libxml2 library once processing has ended. * * WARNING: if your application is multithreaded or has plugin support * calling this may crash the application if another thread or * a plugin is still using libxml2. It's sometimes very hard to * guess if libxml2 is in use in the application, some libraries * or plugins may use it without notice. In case of doubt abstain * from calling this function or do it just before calling exit() * to avoid leak reports from valgrind ! */ void xmlCleanupThreads(void) { #ifdef DEBUG_THREADS xmlGenericError(xmlGenericErrorContext, "xmlCleanupThreads()\n"); #endif #ifdef HAVE_PTHREAD_H if ((libxml_is_threaded) && (pthread_key_delete != NULL)) pthread_key_delete(globalkey); once_control = PTHREAD_ONCE_INIT; #elif defined(HAVE_WIN32_THREADS) && !defined(HAVE_COMPILER_TLS) && (!defined(LIBXML_STATIC) || defined(LIBXML_STATIC_FOR_DLL)) if (globalkey != TLS_OUT_OF_INDEXES) { xmlGlobalStateCleanupHelperParams *p; EnterCriticalSection(&cleanup_helpers_cs); p = cleanup_helpers_head; while (p != NULL) { xmlGlobalStateCleanupHelperParams *temp = p; p = p->next; xmlFreeGlobalState(temp->memory); free(temp); } cleanup_helpers_head = 0; LeaveCriticalSection(&cleanup_helpers_cs); TlsFree(globalkey); globalkey = TLS_OUT_OF_INDEXES; } DeleteCriticalSection(&cleanup_helpers_cs); #endif } So perhaps some defines are working against one another here or PTHREAD_ONCE_INIT means something not obvious. Nope. We can find it well defined in /usr/include/pthread.h as : /* pthread_once related values */ #define PTHREAD_ONCE_NOTDONE 0 #define PTHREAD_ONCE_DONE 1 #define PTHREAD_ONCE_INIT {0, 0, 0, PTHREAD_ONCE_NOTDONE} That looks pretty kosher on production Solaris 10. Doing a little look into sys/types.h I see : /* * pthread_once */ typedef struct _once { upad64_t __pthread_once_pad[4]; } pthread_once_t; Okay .. I am fine with that as PTHREAD_ONCE_INIT really is just {0,0,0,0} and so whats the issue here ? That function should boil down to this : void xmlCleanupThreads(void) { if ( (libxml_is_threaded) && ( pthread_key_delete != NULL ) ) pthread_key_delete(globalkey); once_control = PTHREAD_ONCE_INIT; } No reason for that to fail. Let me try a different approach to this. $ gmake distclean $ echo $CFLAGS -erroff -xstrconst -xildoff -m64 -xmemalign=8s -xnolibmil -Xa -xcode=pic32 -xregs=no%appl -xlibmieee -mc -g -xs -ftrap=%none -xbuiltin=%none -xdebugformat=dwarf -xunroll=1 -xtarget=ultraT2 -xcache=8/16/4:4096/64/16 -D_TS_ERRNO -D_POSIX_PTHREAD_SEMANTICS -D_LARGEFILE64_SOURCE $ CFLAGS=$CFLAGS\ \-DHAVE_PTHREAD_H $ export CFLAGS $ ./configure --with-threads --with-iconv=/usr/local --with-zlib=/usr/local --enable-dependency-tracking --enable-shared --enable-static --enable-rebuild-docs=yes checking build system type... sparc-sun-solaris2.10 checking host system type... sparc-sun-solaris2.10 checking for a BSD-compatible install... ./install-sh -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... ./install-sh -c -d checking for gawk... no checking for mawk... no checking for nawk... nawk checking whether make sets $(MAKE)... yes checking whether make supports nested variables... yes checking for gcc... /opt/SUNWspro/bin/cc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... no checking whether /opt/SUNWspro/bin/cc accepts -g... yes checking for /opt/SUNWspro/bin/cc option to accept ISO C89... none needed checking for style of include used by make... GNU checking dependency style of /opt/SUNWspro/bin/cc... dashXmstdout checking whether ln -s works... yes checking how to run the C preprocessor... /opt/SUNWspro/bin/cc -E checking for rm... /usr/xpg4/bin/rm checking for mv... /usr/xpg4/bin/mv checking for tar... /usr/bin/tar checking for perl... /usr/bin/perl checking for wget... /usr/bin/wget checking for xmllint... /usr/bin/xmllint checking for xsltproc... /usr/bin/xsltproc checking how to print strings... printf checking for a sed that does not truncate output... /usr/local/bin/gsed checking for grep that handles long lines and -e... /usr/xpg4/bin/grep checking for egrep... /usr/xpg4/bin/grep -E checking for fgrep... /usr/xpg4/bin/grep -F checking for non-GNU ld... /usr/ccs/bin/ld checking if the linker (/usr/ccs/bin/ld) is GNU ld... no checking for BSD- or MS-compatible name lister (nm)... /usr/xpg4/bin/nm -p checking the name lister (/usr/xpg4/bin/nm -p) interface... BSD nm checking the maximum length of command line arguments... 786240 checking whether the shell understands some XSI constructs... no checking whether the shell understands "+="... no checking how to convert sparc-sun-solaris2.10 file names to sparc-sun-solaris2.10 format... func_convert_file_noop checking how to convert sparc-sun-solaris2.10 file names to toolchain format... func_convert_file_noop checking for /usr/ccs/bin/ld option to reload object files... -r checking for objdump... no checking how to recognize dependent libraries... pass_all checking for dlltool... no checking how to associate runtime and link libraries... printf %s\n checking for ar... ar checking for archiver @FILE support... no checking for strip... strip checking for ranlib... ranlib checking command to parse /usr/xpg4/bin/nm -p output from /opt/SUNWspro/bin/cc object... ok checking for sysroot... no checking for mt... mt checking if mt is a manifest tool... no checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking for dlfcn.h... yes checking for objdir... .libs checking for /opt/SUNWspro/bin/cc option to produce PIC... -KPIC -DPIC checking if /opt/SUNWspro/bin/cc PIC flag -KPIC -DPIC works... yes checking if /opt/SUNWspro/bin/cc static flag -Bstatic works... no checking if /opt/SUNWspro/bin/cc supports -c -o file.o... conftest*: No such file or directory yes checking if /opt/SUNWspro/bin/cc supports -c -o file.o... (cached) yes checking whether the /opt/SUNWspro/bin/cc linker (/usr/ccs/bin/ld -64) supports shared libraries... yes checking dynamic linker characteristics... solaris2.10 ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... no checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... yes Checking zlib checking zlib.h usability... yes checking zlib.h presence... yes checking for zlib.h... yes checking for gzread in -lz... yes Checking lzma checking lzma.h usability... yes checking lzma.h presence... yes checking for lzma.h... yes checking for lzma_code in -llzma... yes Checking headers checking for dirent.h that defines DIR... yes checking for library containing opendir... none required checking for ANSI C header files... (cached) yes checking fcntl.h usability... yes checking fcntl.h presence... yes checking for fcntl.h... yes checking for unistd.h... (cached) yes checking ctype.h usability... yes checking ctype.h presence... yes checking for ctype.h... yes checking dirent.h usability... yes checking dirent.h presence... yes checking for dirent.h... yes checking errno.h usability... yes checking errno.h presence... yes checking for errno.h... yes checking malloc.h usability... yes checking malloc.h presence... yes checking for malloc.h... yes checking stdarg.h usability... yes checking stdarg.h presence... yes checking for stdarg.h... yes checking for sys/stat.h... (cached) yes checking for sys/types.h... (cached) yes checking for stdint.h... (cached) yes checking for inttypes.h... (cached) yes checking time.h usability... yes checking time.h presence... yes checking for time.h... yes checking ansidecl.h usability... no checking ansidecl.h presence... no checking for ansidecl.h... no checking ieeefp.h usability... yes checking ieeefp.h presence... yes checking for ieeefp.h... yes checking nan.h usability... yes checking nan.h presence... yes checking for nan.h... yes checking math.h usability... yes checking math.h presence... yes checking for math.h... yes checking limits.h usability... yes checking limits.h presence... yes checking for limits.h... yes checking fp_class.h usability... no checking fp_class.h presence... no checking for fp_class.h... no checking float.h usability... yes checking float.h presence... yes checking for float.h... yes checking for stdlib.h... (cached) yes checking for sys/socket.h... yes checking for netinet/in.h... yes checking for arpa/inet.h... yes checking netdb.h usability... yes checking netdb.h presence... yes checking for netdb.h... yes checking sys/time.h usability... yes checking sys/time.h presence... yes checking for sys/time.h... yes checking sys/select.h usability... yes checking sys/select.h presence... yes checking for sys/select.h... yes checking poll.h usability... yes checking poll.h presence... yes checking for poll.h... yes checking sys/mman.h usability... yes checking sys/mman.h presence... yes checking for sys/mman.h... yes checking sys/timeb.h usability... yes checking sys/timeb.h presence... yes checking for sys/timeb.h... yes checking signal.h usability... yes checking signal.h presence... yes checking for signal.h... yes checking for arpa/nameser.h... yes checking for resolv.h... yes checking dl.h usability... no checking dl.h presence... no checking for dl.h... no checking for dlfcn.h... (cached) yes Checking types checking for uint32_t... yes Checking libraries checking for strftime... yes checking for strdup... yes checking for strndup... no checking for strerror... yes checking for finite... yes checking for isnand... yes checking for fp_class... no checking for class... no checking for fpclass... yes checking for strftime... (cached) yes checking for localtime... yes checking for gettimeofday... yes checking for ftime... yes checking for stat... yes checking for _stat... yes checking for signal... yes checking for rand... yes checking for rand_r... yes checking for srand... yes checking for time... yes checking for isascii... yes checking for mmap... yes checking for munmap... yes checking for putenv... yes checking for va_copy... yes checking for library containing gethostent... -lnsl checking for library containing setsockopt... -lsocket checking for library containing connect... none required checking for type of socket length (socklen_t)... socklen_t * checking whether to enable IPv6... yes checking struct sockaddr::ss_family... yes checking for getaddrinfo... yes checking for isnan... yes checking for isinf... no checking for isinf in -lm... no Found python in /bin/python Found Python version 2.6 checking for shl_load... no checking for shl_load in -ldld... no checking for dlopen... yes Checking configuration requirements Enabling multithreaded support checking pthread.h usability... yes checking pthread.h presence... yes checking for pthread.h... yes checking for pthread_join in -lpthread... yes checking iconv.h usability... yes checking iconv.h presence... yes checking for iconv.h... yes checking for iconv... no checking for iconv in -liconv... yes checking for iconv declaration... extern size_t iconv (iconv_t cd, const char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft); Disabling ICU support Enabled Schematron support Enabled Schemas/Relax-NG support checking for printf... yes checking for sprintf... yes checking for fprintf... yes checking for snprintf... yes checking for vfprintf... yes checking for vsprintf... yes checking for vsnprintf... yes checking for sscanf... yes Disabling code coverage for GCC configure: creating ./config.status config.status: creating libxml2.spec config.status: creating Makefile config.status: creating include/Makefile config.status: creating include/libxml/Makefile config.status: creating doc/Makefile config.status: creating doc/examples/Makefile config.status: creating doc/devhelp/Makefile config.status: creating example/Makefile config.status: creating python/Makefile config.status: creating python/tests/Makefile config.status: creating xstc/Makefile config.status: creating include/libxml/xmlversion.h config.status: creating xml2-config config.status: creating libxml-2.0.pc config.status: creating libxml-2.0-uninstalled.pc config.status: creating python/setup.py config.status: creating config.h config.status: executing depfiles commands config.status: executing libtool commands libtoolT: No such file or directory Done configuring $ $ gmake gmake all-recursive gmake[1]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001' Making all in include gmake[2]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/include' Making all in libxml gmake[3]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/include/libxml' gmake[3]: Nothing to be done for `all'. gmake[3]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/include/libxml' gmake[3]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/include' gmake[3]: Nothing to be done for `all-am'. gmake[3]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/include' gmake[2]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/include' Making all in . gmake[2]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001' CC SAX.lo CC entities.lo CC encoding.lo CC error.lo CC parserInternals.lo CC parser.lo CC tree.lo CC hash.lo CC list.lo CC xmlIO.lo CC xmlmemory.lo CC uri.lo CC valid.lo CC xlink.lo CC HTMLparser.lo CC HTMLtree.lo CC debugXML.lo CC xpath.lo CC xpointer.lo CC xinclude.lo CC nanohttp.lo CC nanoftp.lo CC catalog.lo CC globals.lo CC threads.lo "threads.c", line 918: syntax error before or at: { "threads.c", line 918: cannot recover from previous errors cc: acomp failed for threads.c gmake[2]: *** [threads.lo] Error 1 gmake[2]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001' gmake[1]: *** [all-recursive] Error 1 gmake[1]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001' gmake: *** [all] Error 2 Well this is just baffling. May as well file this under "no idea what the issue is" and then try a different set of compiler options or a diff compiler entirely. Dennis
okay, upgraded my compiler to the very latest from Oracle and now I can get a bucket of warnings about some code problems as well as this odd error : $ cc -V cc: Sun C 5.12 SunOS_sparc 2011/11/16 $ $ ./configure --with-threads --with-iconv=/usr/local --with-zlib=/usr/local --enable-dependency-tracking --enable-shared --enable-static --enable-rebuild-docs=yes --prefix=/usr/local checking build system type... sparc-sun-solaris2.10 checking host system type... sparc-sun-solaris2.10 checking for a BSD-compatible install... ./install-sh -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... ./install-sh -c -d checking for gawk... no checking for mawk... no checking for nawk... nawk checking whether make sets $(MAKE)... yes checking whether make supports nested variables... yes checking for gcc... /opt/solarisstudio12.3/bin/cc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... no checking whether /opt/solarisstudio12.3/bin/cc accepts -g... yes checking for /opt/solarisstudio12.3/bin/cc option to accept ISO C89... none needed checking for style of include used by make... GNU checking dependency style of /opt/solarisstudio12.3/bin/cc... dashXmstdout checking whether ln -s works... yes checking how to run the C preprocessor... /opt/solarisstudio12.3/bin/cc -E checking for rm... /usr/xpg4/bin/rm checking for mv... /usr/xpg4/bin/mv checking for tar... /usr/bin/tar checking for perl... /usr/bin/perl checking for wget... /usr/bin/wget checking for xmllint... /usr/bin/xmllint checking for xsltproc... /usr/bin/xsltproc checking how to print strings... printf checking for a sed that does not truncate output... /usr/local/bin/gsed checking for grep that handles long lines and -e... /usr/xpg4/bin/grep checking for egrep... /usr/xpg4/bin/grep -E checking for fgrep... /usr/xpg4/bin/grep -F checking for non-GNU ld... /usr/ccs/bin/ld checking if the linker (/usr/ccs/bin/ld) is GNU ld... no checking for BSD- or MS-compatible name lister (nm)... /usr/xpg4/bin/nm -p checking the name lister (/usr/xpg4/bin/nm -p) interface... BSD nm checking the maximum length of command line arguments... 786240 checking whether the shell understands some XSI constructs... no checking whether the shell understands "+="... no checking how to convert sparc-sun-solaris2.10 file names to sparc-sun-solaris2.10 format... func_convert_file_noop checking how to convert sparc-sun-solaris2.10 file names to toolchain format... func_convert_file_noop checking for /usr/ccs/bin/ld option to reload object files... -r checking for objdump... no checking how to recognize dependent libraries... pass_all checking for dlltool... no checking how to associate runtime and link libraries... printf %s\n checking for ar... ar checking for archiver @FILE support... no checking for strip... strip checking for ranlib... ranlib checking command to parse /usr/xpg4/bin/nm -p output from /opt/solarisstudio12.3/bin/cc object... ok checking for sysroot... no checking for mt... mt checking if mt is a manifest tool... no checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking for dlfcn.h... yes checking for objdir... .libs checking for /opt/solarisstudio12.3/bin/cc option to produce PIC... -KPIC -DPIC checking if /opt/solarisstudio12.3/bin/cc PIC flag -KPIC -DPIC works... yes checking if /opt/solarisstudio12.3/bin/cc static flag -Bstatic works... yes checking if /opt/solarisstudio12.3/bin/cc supports -c -o file.o... conftest*: No such file or directory yes checking if /opt/solarisstudio12.3/bin/cc supports -c -o file.o... (cached) yes checking whether the /opt/solarisstudio12.3/bin/cc linker (/usr/ccs/bin/ld -64) supports shared libraries... yes checking dynamic linker characteristics... solaris2.10 ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... no checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... yes Checking zlib checking zlib.h usability... yes checking zlib.h presence... yes checking for zlib.h... yes checking for gzread in -lz... yes Checking lzma checking lzma.h usability... yes checking lzma.h presence... yes checking for lzma.h... yes checking for lzma_code in -llzma... yes Checking headers checking for dirent.h that defines DIR... yes checking for library containing opendir... none required checking for ANSI C header files... (cached) yes checking fcntl.h usability... yes checking fcntl.h presence... yes checking for fcntl.h... yes checking for unistd.h... (cached) yes checking ctype.h usability... yes checking ctype.h presence... yes checking for ctype.h... yes checking dirent.h usability... yes checking dirent.h presence... yes checking for dirent.h... yes checking errno.h usability... yes checking errno.h presence... yes checking for errno.h... yes checking malloc.h usability... yes checking malloc.h presence... yes checking for malloc.h... yes checking stdarg.h usability... yes checking stdarg.h presence... yes checking for stdarg.h... yes checking for sys/stat.h... (cached) yes checking for sys/types.h... (cached) yes checking for stdint.h... (cached) yes checking for inttypes.h... (cached) yes checking time.h usability... yes checking time.h presence... yes checking for time.h... yes checking ansidecl.h usability... no checking ansidecl.h presence... no checking for ansidecl.h... no checking ieeefp.h usability... yes checking ieeefp.h presence... yes checking for ieeefp.h... yes checking nan.h usability... yes checking nan.h presence... yes checking for nan.h... yes checking math.h usability... yes checking math.h presence... yes checking for math.h... yes checking limits.h usability... yes checking limits.h presence... yes checking for limits.h... yes checking fp_class.h usability... no checking fp_class.h presence... no checking for fp_class.h... no checking float.h usability... yes checking float.h presence... yes checking for float.h... yes checking for stdlib.h... (cached) yes checking for sys/socket.h... yes checking for netinet/in.h... yes checking for arpa/inet.h... yes checking netdb.h usability... yes checking netdb.h presence... yes checking for netdb.h... yes checking sys/time.h usability... yes checking sys/time.h presence... yes checking for sys/time.h... yes checking sys/select.h usability... yes checking sys/select.h presence... yes checking for sys/select.h... yes checking poll.h usability... yes checking poll.h presence... yes checking for poll.h... yes checking sys/mman.h usability... yes checking sys/mman.h presence... yes checking for sys/mman.h... yes checking sys/timeb.h usability... yes checking sys/timeb.h presence... yes checking for sys/timeb.h... yes checking signal.h usability... yes checking signal.h presence... yes checking for signal.h... yes checking for arpa/nameser.h... yes checking for resolv.h... yes checking dl.h usability... no checking dl.h presence... no checking for dl.h... no checking for dlfcn.h... (cached) yes Checking types checking for uint32_t... yes Checking libraries checking for strftime... yes checking for strdup... yes checking for strndup... no checking for strerror... yes checking for finite... yes checking for isnand... yes checking for fp_class... no checking for class... no checking for fpclass... yes checking for strftime... (cached) yes checking for localtime... yes checking for gettimeofday... yes checking for ftime... yes checking for stat... yes checking for _stat... yes checking for signal... yes checking for rand... yes checking for rand_r... yes checking for srand... yes checking for time... yes checking for isascii... yes checking for mmap... yes checking for munmap... yes checking for putenv... yes checking for va_copy... yes checking for library containing gethostent... -lnsl checking for library containing setsockopt... -lsocket checking for library containing connect... none required checking for type of socket length (socklen_t)... socklen_t * checking whether to enable IPv6... yes checking struct sockaddr::ss_family... yes checking for getaddrinfo... yes checking for isnan... yes checking for isinf... no checking for isinf in -lm... no Found python in /bin/python Found Python version 2.6 checking for shl_load... no checking for shl_load in -ldld... no checking for dlopen... yes Checking configuration requirements Enabling multithreaded support checking pthread.h usability... yes checking pthread.h presence... yes checking for pthread.h... yes checking for pthread_join in -lpthread... yes checking iconv.h usability... yes checking iconv.h presence... yes checking for iconv.h... yes checking for iconv... no checking for iconv in -liconv... yes checking for iconv declaration... extern size_t iconv (iconv_t cd, const char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft); Disabling ICU support Enabled Schematron support Enabled Schemas/Relax-NG support checking for printf... yes checking for sprintf... yes checking for fprintf... yes checking for snprintf... yes checking for vfprintf... yes checking for vsprintf... yes checking for vsnprintf... yes checking for sscanf... yes Disabling code coverage for GCC configure: creating ./config.status config.status: creating libxml2.spec config.status: creating Makefile config.status: creating include/Makefile config.status: creating include/libxml/Makefile config.status: creating doc/Makefile config.status: creating doc/examples/Makefile config.status: creating doc/devhelp/Makefile config.status: creating example/Makefile config.status: creating python/Makefile config.status: creating python/tests/Makefile config.status: creating xstc/Makefile config.status: creating include/libxml/xmlversion.h config.status: creating xml2-config config.status: creating libxml-2.0.pc config.status: creating libxml-2.0-uninstalled.pc config.status: creating python/setup.py config.status: creating config.h config.status: executing depfiles commands config.status: executing libtool commands libtoolT: No such file or directory Done configuring $ gmake gmake all-recursive gmake[1]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001' Making all in include gmake[2]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/include' Making all in libxml gmake[3]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/include/libxml' gmake[3]: Nothing to be done for `all'. gmake[3]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/include/libxml' gmake[3]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/include' gmake[3]: Nothing to be done for `all-am'. gmake[3]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/include' gmake[2]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/include' Making all in . gmake[2]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001' CC SAX.lo CC entities.lo CC encoding.lo CC error.lo CC parserInternals.lo CC parser.lo "parser.c", line 13492: warning: argument #1 is incompatible with prototype: prototype: pointer to const char : "./include/libxml/encoding.h", line 175 argument : pointer to const unsigned char CC tree.lo CC hash.lo CC list.lo CC xmlIO.lo CC xmlmemory.lo CC uri.lo CC valid.lo CC xlink.lo CC HTMLparser.lo CC HTMLtree.lo CC debugXML.lo CC xpath.lo "xpath.c", line 4870: warning: argument #4 is incompatible with prototype: prototype: pointer to void : "./include/libxml/hash.h", line 128 argument : pointer to function(pointer to struct _xmlXPathParserContext {pointer to const unsigned char cur, pointer to const unsigned char base, int error, pointer to struct _xmlXPathContext {..} context, pointer to struct _xmlXPathObject {..} value, int valueNr, int valueMax, pointer to pointer to struct _xmlXPathObject {..} valueTab, pointer to struct _xmlXPathCompExpr {..} comp, int xptr, pointer to struct _xmlNode {..} ancestor, int valueFrame}, int) returning void "xpath.c", line 4951: warning: assignment type mismatch: pointer to function(pointer to struct _xmlXPathParserContext {pointer to const unsigned char cur, pointer to const unsigned char base, int error, pointer to struct _xmlXPathContext {..} context, pointer to struct _xmlXPathObject {..} value, int valueNr, int valueMax, pointer to pointer to struct _xmlXPathObject {..} valueTab, pointer to struct _xmlXPathCompExpr {..} comp, int xptr, pointer to struct _xmlNode {..} ancestor, int valueFrame}, int) returning void "=" pointer to void "xpath.c", line 7743: warning: statement not reached "xpath.c", line 12010: warning: statement not reached "xpath.c", line 13535: warning: assignment type mismatch: pointer to function(pointer to struct _xmlXPathParserContext {pointer to const unsigned char cur, pointer to const unsigned char base, int error, pointer to struct _xmlXPathContext {..} context, pointer to struct _xmlXPathObject {..} value, int valueNr, int valueMax, pointer to pointer to struct _xmlXPathObject {..} valueTab, pointer to struct _xmlXPathCompExpr {..} comp, int xptr, pointer to struct _xmlNode {..} ancestor, int valueFrame}, int) returning void "=" pointer to void "xpath.c", line 13562: warning: assignment type mismatch: pointer to void "=" pointer to function(pointer to struct _xmlXPathParserContext {pointer to const unsigned char cur, pointer to const unsigned char base, int error, pointer to struct _xmlXPathContext {..} context, pointer to struct _xmlXPathObject {..} value, int valueNr, int valueMax, pointer to pointer to struct _xmlXPathObject {..} valueTab, pointer to struct _xmlXPathCompExpr {..} comp, int xptr, pointer to struct _xmlNode {..} ancestor, int valueFrame}, int) returning void CC xpointer.lo CC xinclude.lo CC nanohttp.lo CC nanoftp.lo CC catalog.lo CC globals.lo CC threads.lo "threads.c", line 918: syntax error before or at: { "threads.c", line 918: warning: syntax error: empty declaration "threads.c", line 939: syntax error before or at: } cc: acomp failed for threads.c gmake[2]: *** [threads.lo] Error 1 gmake[2]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001' gmake[1]: *** [all-recursive] Error 1 gmake[1]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001' gmake: *** [all] Error 2 $
Already raised and fixed last month in git, though apparently the bug wasn't listed in GNOME bugzilla: http://git.gnome.org/browse/libxml2/commit/?id=3f6cfbd1d38d0634a2ddcb9a0a13e1b5a2195a5e Daniel
thank you for the blazing fast response as well as the patch ! Dennis
okay, for whatever reasons gnu patch had a fit with that input so I did it manually : sedna.adbs.ca $ diff threads.c threads.c_backup 149d148 < static pthread_once_t once_control_init = PTHREAD_ONCE_INIT; 919c918 < once_control = once_control_init; --- > once_control = PTHREAD_ONCE_INIT; $ ./configure --with-threads --with-iconv=/usr/local --with-zlib=/usr/local --enable-dependency-tracking --enable-shared --enable-static --enable-rebuild-docs=yes --prefix=/usr/local checking build system type... sparc-sun-solaris2.10 checking host system type... sparc-sun-solaris2.10 checking for a BSD-compatible install... ./install-sh -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... ./install-sh -c -d checking for gawk... no checking for mawk... no checking for nawk... nawk checking whether make sets $(MAKE)... yes checking whether make supports nested variables... yes checking for gcc... /opt/solarisstudio12.3/bin/cc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... no checking whether /opt/solarisstudio12.3/bin/cc accepts -g... yes checking for /opt/solarisstudio12.3/bin/cc option to accept ISO C89... none needed checking for style of include used by make... GNU checking dependency style of /opt/solarisstudio12.3/bin/cc... dashXmstdout checking whether ln -s works... yes checking how to run the C preprocessor... /opt/solarisstudio12.3/bin/cc -E checking for rm... /usr/xpg4/bin/rm checking for mv... /usr/xpg4/bin/mv checking for tar... /usr/bin/tar checking for perl... /usr/bin/perl checking for wget... /usr/bin/wget checking for xmllint... /usr/bin/xmllint checking for xsltproc... /usr/bin/xsltproc checking how to print strings... printf checking for a sed that does not truncate output... /usr/local/bin/gsed checking for grep that handles long lines and -e... /usr/xpg4/bin/grep checking for egrep... /usr/xpg4/bin/grep -E checking for fgrep... /usr/xpg4/bin/grep -F checking for non-GNU ld... /usr/ccs/bin/ld checking if the linker (/usr/ccs/bin/ld) is GNU ld... no checking for BSD- or MS-compatible name lister (nm)... /usr/xpg4/bin/nm -p checking the name lister (/usr/xpg4/bin/nm -p) interface... BSD nm checking the maximum length of command line arguments... 786240 checking whether the shell understands some XSI constructs... no checking whether the shell understands "+="... no checking how to convert sparc-sun-solaris2.10 file names to sparc-sun-solaris2.10 format... func_convert_file_noop checking how to convert sparc-sun-solaris2.10 file names to toolchain format... func_convert_file_noop checking for /usr/ccs/bin/ld option to reload object files... -r checking for objdump... no checking how to recognize dependent libraries... pass_all checking for dlltool... no checking how to associate runtime and link libraries... printf %s\n checking for ar... ar checking for archiver @FILE support... no checking for strip... strip checking for ranlib... ranlib checking command to parse /usr/xpg4/bin/nm -p output from /opt/solarisstudio12.3/bin/cc object... ok checking for sysroot... no checking for mt... mt checking if mt is a manifest tool... no checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking for dlfcn.h... yes checking for objdir... .libs checking for /opt/solarisstudio12.3/bin/cc option to produce PIC... -KPIC -DPIC checking if /opt/solarisstudio12.3/bin/cc PIC flag -KPIC -DPIC works... yes checking if /opt/solarisstudio12.3/bin/cc static flag -Bstatic works... yes checking if /opt/solarisstudio12.3/bin/cc supports -c -o file.o... conftest*: No such file or directory yes checking if /opt/solarisstudio12.3/bin/cc supports -c -o file.o... (cached) yes checking whether the /opt/solarisstudio12.3/bin/cc linker (/usr/ccs/bin/ld -64) supports shared libraries... yes checking dynamic linker characteristics... solaris2.10 ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... no checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... yes Checking zlib checking zlib.h usability... yes checking zlib.h presence... yes checking for zlib.h... yes checking for gzread in -lz... yes Checking lzma checking lzma.h usability... yes checking lzma.h presence... yes checking for lzma.h... yes checking for lzma_code in -llzma... yes Checking headers checking for dirent.h that defines DIR... yes checking for library containing opendir... none required checking for ANSI C header files... (cached) yes checking fcntl.h usability... yes checking fcntl.h presence... yes checking for fcntl.h... yes checking for unistd.h... (cached) yes checking ctype.h usability... yes checking ctype.h presence... yes checking for ctype.h... yes checking dirent.h usability... yes checking dirent.h presence... yes checking for dirent.h... yes checking errno.h usability... yes checking errno.h presence... yes checking for errno.h... yes checking malloc.h usability... yes checking malloc.h presence... yes checking for malloc.h... yes checking stdarg.h usability... yes checking stdarg.h presence... yes checking for stdarg.h... yes checking for sys/stat.h... (cached) yes checking for sys/types.h... (cached) yes checking for stdint.h... (cached) yes checking for inttypes.h... (cached) yes checking time.h usability... yes checking time.h presence... yes checking for time.h... yes checking ansidecl.h usability... no checking ansidecl.h presence... no checking for ansidecl.h... no checking ieeefp.h usability... yes checking ieeefp.h presence... yes checking for ieeefp.h... yes checking nan.h usability... yes checking nan.h presence... yes checking for nan.h... yes checking math.h usability... yes checking math.h presence... yes checking for math.h... yes checking limits.h usability... yes checking limits.h presence... yes checking for limits.h... yes checking fp_class.h usability... no checking fp_class.h presence... no checking for fp_class.h... no checking float.h usability... yes checking float.h presence... yes checking for float.h... yes checking for stdlib.h... (cached) yes checking for sys/socket.h... yes checking for netinet/in.h... yes checking for arpa/inet.h... yes checking netdb.h usability... yes checking netdb.h presence... yes checking for netdb.h... yes checking sys/time.h usability... yes checking sys/time.h presence... yes checking for sys/time.h... yes checking sys/select.h usability... yes checking sys/select.h presence... yes checking for sys/select.h... yes checking poll.h usability... yes checking poll.h presence... yes checking for poll.h... yes checking sys/mman.h usability... yes checking sys/mman.h presence... yes checking for sys/mman.h... yes checking sys/timeb.h usability... yes checking sys/timeb.h presence... yes checking for sys/timeb.h... yes checking signal.h usability... yes checking signal.h presence... yes checking for signal.h... yes checking for arpa/nameser.h... yes checking for resolv.h... yes checking dl.h usability... no checking dl.h presence... no checking for dl.h... no checking for dlfcn.h... (cached) yes Checking types checking for uint32_t... yes Checking libraries checking for strftime... yes checking for strdup... yes checking for strndup... no checking for strerror... yes checking for finite... yes checking for isnand... yes checking for fp_class... no checking for class... no checking for fpclass... yes checking for strftime... (cached) yes checking for localtime... yes checking for gettimeofday... yes checking for ftime... yes checking for stat... yes checking for _stat... yes checking for signal... yes checking for rand... yes checking for rand_r... yes checking for srand... yes checking for time... yes checking for isascii... yes checking for mmap... yes checking for munmap... yes checking for putenv... yes checking for va_copy... yes checking for library containing gethostent... -lnsl checking for library containing setsockopt... -lsocket checking for library containing connect... none required checking for type of socket length (socklen_t)... socklen_t * checking whether to enable IPv6... yes checking struct sockaddr::ss_family... yes checking for getaddrinfo... yes checking for isnan... yes checking for isinf... no checking for isinf in -lm... no Found python in /bin/python Found Python version 2.6 checking for shl_load... no checking for shl_load in -ldld... no checking for dlopen... yes Checking configuration requirements Enabling multithreaded support checking pthread.h usability... yes checking pthread.h presence... yes checking for pthread.h... yes checking for pthread_join in -lpthread... yes checking iconv.h usability... yes checking iconv.h presence... yes checking for iconv.h... yes checking for iconv... no checking for iconv in -liconv... yes checking for iconv declaration... extern size_t iconv (iconv_t cd, const char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft); Disabling ICU support Enabled Schematron support Enabled Schemas/Relax-NG support checking for printf... yes checking for sprintf... yes checking for fprintf... yes checking for snprintf... yes checking for vfprintf... yes checking for vsprintf... yes checking for vsnprintf... yes checking for sscanf... yes Disabling code coverage for GCC configure: creating ./config.status config.status: creating libxml2.spec config.status: creating Makefile config.status: creating include/Makefile config.status: creating include/libxml/Makefile config.status: creating doc/Makefile config.status: creating doc/examples/Makefile config.status: creating doc/devhelp/Makefile config.status: creating example/Makefile config.status: creating python/Makefile config.status: creating python/tests/Makefile config.status: creating xstc/Makefile config.status: creating include/libxml/xmlversion.h config.status: creating xml2-config config.status: creating libxml-2.0.pc config.status: creating libxml-2.0-uninstalled.pc config.status: creating python/setup.py config.status: creating config.h config.status: executing depfiles commands config.status: executing libtool commands libtoolT: No such file or directory Done configuring $ gmake gmake all-recursive gmake[1]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001' Making all in include gmake[2]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/include' Making all in libxml gmake[3]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/include/libxml' gmake[3]: Nothing to be done for `all'. gmake[3]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/include/libxml' gmake[3]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/include' gmake[3]: Nothing to be done for `all-am'. gmake[3]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/include' gmake[2]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/include' Making all in . gmake[2]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001' CC SAX.lo CC entities.lo CC encoding.lo CC error.lo CC parserInternals.lo CC parser.lo CC tree.lo CC hash.lo CC list.lo CC xmlIO.lo CC xmlmemory.lo CC uri.lo CC valid.lo CC xlink.lo CC HTMLparser.lo CC HTMLtree.lo CC debugXML.lo CC xpath.lo "xpath.c", line 4870: warning: argument #4 is incompatible with prototype: prototype: pointer to void : "./include/libxml/hash.h", line 128 argument : pointer to function(pointer to struct _xmlXPathParserContext {pointer to const unsigned char cur, pointer to const unsigned char base, int error, pointer to struct _xmlXPathContext {..} context, pointer to struct _xmlXPathObject {..} value, int valueNr, int valueMax, pointer to pointer to struct _xmlXPathObject {..} valueTab, pointer to struct _xmlXPathCompExpr {..} comp, int xptr, pointer to struct _xmlNode {..} ancestor, int valueFrame}, int) returning void "xpath.c", line 4951: warning: assignment type mismatch: pointer to function(pointer to struct _xmlXPathParserContext {pointer to const unsigned char cur, pointer to const unsigned char base, int error, pointer to struct _xmlXPathContext {..} context, pointer to struct _xmlXPathObject {..} value, int valueNr, int valueMax, pointer to pointer to struct _xmlXPathObject {..} valueTab, pointer to struct _xmlXPathCompExpr {..} comp, int xptr, pointer to struct _xmlNode {..} ancestor, int valueFrame}, int) returning void "=" pointer to void "xpath.c", line 7743: warning: statement not reached "xpath.c", line 12010: warning: statement not reached "xpath.c", line 13535: warning: assignment type mismatch: pointer to function(pointer to struct _xmlXPathParserContext {pointer to const unsigned char cur, pointer to const unsigned char base, int error, pointer to struct _xmlXPathContext {..} context, pointer to struct _xmlXPathObject {..} value, int valueNr, int valueMax, pointer to pointer to struct _xmlXPathObject {..} valueTab, pointer to struct _xmlXPathCompExpr {..} comp, int xptr, pointer to struct _xmlNode {..} ancestor, int valueFrame}, int) returning void "=" pointer to void "xpath.c", line 13562: warning: assignment type mismatch: pointer to void "=" pointer to function(pointer to struct _xmlXPathParserContext {pointer to const unsigned char cur, pointer to const unsigned char base, int error, pointer to struct _xmlXPathContext {..} context, pointer to struct _xmlXPathObject {..} value, int valueNr, int valueMax, pointer to pointer to struct _xmlXPathObject {..} valueTab, pointer to struct _xmlXPathCompExpr {..} comp, int xptr, pointer to struct _xmlNode {..} ancestor, int valueFrame}, int) returning void CC xpointer.lo CC xinclude.lo CC nanohttp.lo CC nanoftp.lo CC catalog.lo CC globals.lo CC threads.lo CC c14n.lo CC xmlstring.lo CC buf.lo CC xmlregexp.lo CC xmlschemas.lo CC xmlschemastypes.lo CC xmlunicode.lo CC xmlreader.lo CC relaxng.lo CC dict.lo CC SAX2.lo CC xmlwriter.lo CC legacy.lo CC chvalid.lo CC pattern.lo CC xmlsave.lo CC xmlmodule.lo CC schematron.lo CC xzlib.lo CCLD libxml2.la CC testdso.lo CCLD testdso.la CC xmllint.o CCLD xmllint CC xmlcatalog.o CCLD xmlcatalog CC testSchemas.o CCLD testSchemas CC testRelax.o CCLD testRelax CC testSAX.o CCLD testSAX CC testHTML.o CCLD testHTML CC testXPath.o CCLD testXPath CC testURI.o CCLD testURI CC testThreads.o CCLD testThreads CC testC14N.o CCLD testC14N CC testAutomata.o CCLD testAutomata CC testRegexp.o CCLD testRegexp CC testReader.o CCLD testReader CC testapi.o CCLD testapi CC testModule.o CCLD testModule CC runtest.o CCLD runtest CC runsuite.o CCLD runsuite CC testchar.o CCLD testchar CC testdict.o CCLD testdict CC runxmlconf.o CCLD runxmlconf CC testrecurse.o CCLD testrecurse CC testlimits.o CCLD testlimits sed -e 's?\@XML_LIBDIR\@?-L/usr/local/lib -R/usr/local/lib?g' \ -e 's?\@XML_INCLUDEDIR\@?-I/usr/local/include/libxml2 -I/usr/local/include?g' \ -e 's?\@VERSION\@?2.9.0?g' \ -e 's?\@XML_LIBS\@?-lxml2 -L/usr/local/lib -R/usr/local/lib -lz -lpthread -L/usr/local/lib -liconv -lm -lsocket -lnsl ?g' \ < ./xml2Conf.sh.in > xml2Conf.tmp \ && mv xml2Conf.tmp xml2Conf.sh gmake[2]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001' Making all in doc gmake[2]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/doc' Making all in . gmake[3]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/doc' gmake[3]: Nothing to be done for `all-am'. gmake[3]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/doc' Making all in devhelp gmake[3]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/doc/devhelp' gmake[3]: Nothing to be done for `all'. gmake[3]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/doc/devhelp' Making all in examples gmake[3]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/doc/examples' CC io1.o CCLD io1 CC io2.o CCLD io2 CC parse1.o CCLD parse1 CC parse2.o CCLD parse2 CC parse3.o CCLD parse3 CC parse4.o CCLD parse4 CC reader1.o CCLD reader1 CC reader2.o CCLD reader2 CC reader3.o CCLD reader3 CC reader4.o CCLD reader4 CC testWriter.o CCLD testWriter CC tree1.o CCLD tree1 CC tree2.o CCLD tree2 CC xpath1.o CCLD xpath1 CC xpath2.o CCLD xpath2 gmake[3]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/doc/examples' gmake[2]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/doc' Making all in example gmake[2]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/example' CC gjobread.o CCLD gjobread gmake[2]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/example' Making all in xstc gmake[2]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/xstc' gmake[2]: Nothing to be done for `all'. gmake[2]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/xstc' Making all in python gmake[2]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/python' gmake all-recursive gmake[3]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/python' Making all in . gmake[4]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/python' CC libxml.lo CC libxml2-py.lo "libxml2-py.c", line 1759: warning: modification of typedef with "int" ignored "libxml2-py.c", line 2336: warning: modification of typedef with "int" ignored CC types.lo CCLD libxml2mod.la gmake[4]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/python' Making all in tests gmake[4]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/python/tests' gmake[4]: Nothing to be done for `all'. gmake[4]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/python/tests' gmake[3]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/python' gmake[2]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/python' gmake[1]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001' $ $ $ gmake check gmake all-recursive gmake[1]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001' Making all in include gmake[2]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/include' Making all in libxml gmake[3]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/include/libxml' gmake[3]: Nothing to be done for `all'. gmake[3]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/include/libxml' gmake[3]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/include' gmake[3]: Nothing to be done for `all-am'. gmake[3]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/include' gmake[2]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/include' Making all in . gmake[2]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001' gmake[2]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001' Making all in doc gmake[2]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/doc' Making all in . gmake[3]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/doc' gmake[3]: Nothing to be done for `all-am'. gmake[3]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/doc' Making all in devhelp gmake[3]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/doc/devhelp' gmake[3]: Nothing to be done for `all'. gmake[3]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/doc/devhelp' Making all in examples gmake[3]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/doc/examples' gmake[3]: Nothing to be done for `all'. gmake[3]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/doc/examples' gmake[2]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/doc' Making all in example gmake[2]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/example' gmake[2]: Nothing to be done for `all'. gmake[2]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/example' Making all in xstc gmake[2]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/xstc' gmake[2]: Nothing to be done for `all'. gmake[2]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/xstc' Making all in python gmake[2]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/python' gmake all-recursive gmake[3]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/python' Making all in . gmake[4]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/python' gmake[4]: Nothing to be done for `all-am'. gmake[4]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/python' Making all in tests gmake[4]: Entering directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/python/tests' gmake[4]: Nothing to be done for `all'. gmake[4]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/python/tests' gmake[3]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/python' gmake[2]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001/python' gmake[1]: Leaving directory `/usr/local/build/libxml2-2.9.0_sparcv9_001' [ -d test ] || ln -s ./test . [ -d result ] || ln -s ./result . ./runtest && ./testrecurse && ./testapi && ./testchar&& ./testdict && ./runxmlconf ## XML regression tests File ./test/ebcdic_566012.xml generated an error ## XML regression tests on memory File ./test/ebcdic_566012.xml generated an error ## XML entity subst regression tests File ./test/ebcdic_566012.xml generated an error ## XML Namespaces regression tests ## Error cases regression tests ## Error cases stream regression tests ## Reader regression tests Result for ./test/ebcdic_566012.xml failed File ./test/ebcdic_566012.xml generated an error ## Reader entities substitution regression tests Result for ./test/ebcdic_566012.xml failed File ./test/ebcdic_566012.xml generated an error ## Reader on memory regression tests Result for ./test/ebcdic_566012.xml failed File ./test/ebcdic_566012.xml generated an error ## Walker regression tests Failed to parse ./test/ebcdic_566012.xml File ./test/ebcdic_566012.xml generated an error ## SAX1 callbacks regression tests Failed to parse ./test/ebcdic_566012.xml File ./test/ebcdic_566012.xml generated an error ## SAX2 callbacks regression tests Failed to parse ./test/ebcdic_566012.xml File ./test/ebcdic_566012.xml generated an error ## XML push regression tests Failed to parse ./test/ebcdic_566012.xml File ./test/ebcdic_566012.xml generated an error ## HTML regression tests ## Push HTML regression tests ## HTML SAX regression tests ## Valid documents regression tests ## Validity checking regression tests ## General documents valid regression tests ## XInclude regression tests ## XInclude xmlReader regression tests ## XInclude regression tests stripping include nodes ## XInclude xmlReader regression tests stripping include nodes ## XPath expressions regression tests ## XPath document queries regression tests ## XPointer document queries regression tests ## xml:id regression tests ## URI parsing tests ## URI base composition tests ## Path URI conversion tests ## Schemas regression tests ## Relax-NG regression tests ## Relax-NG streaming regression tests ## Pattern regression tests ## C14N with comments regression tests ## C14N without comments regression tests ## C14N exclusive without comments regression tests ## C14N 1.1 without comments regression tests ## Catalog and Threads regression tests Total 2828 tests, 10 errors, 0 leaks gmake: *** [runtests] Error 1 $ $ which iconv /usr/local/bin/iconv $ iconv -l | grep -i ebcdic $ beautiful
yeah the EBCDIC issues are due to your specific version of iconv. I suggest to also run testlimits if your machine is powerful enough Daniel
Can you please release 2.9.1 so that this builds on the variety of BSD-based systems that define PTHREAD_ONCE_INIT as a struct initializer can build without patching?