After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 686118 - "threads.c", line 918: syntax error before or at: {
"threads.c", line 918: syntax error before or at: {
Status: RESOLVED FIXED
Product: libxml2
Classification: Platform
Component: general
git master
Other Solaris
: Normal normal
: ---
Assigned To: Daniel Veillard
libxml QA maintainers
Depends on:
Blocks:
 
 
Reported: 2012-10-14 19:33 UTC by Dennis Clarke
Modified: 2012-10-22 21:20 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Dennis Clarke 2012-10-14 19:33:41 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
Comment 1 Dennis Clarke 2012-10-14 23:01:53 UTC
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
$
Comment 2 Daniel Veillard 2012-10-15 02:01:41 UTC
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
Comment 3 Dennis Clarke 2012-10-15 16:36:47 UTC
thank you for the blazing fast response as well as the patch ! 

Dennis
Comment 4 Dennis Clarke 2012-10-15 16:56:54 UTC
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
Comment 5 Daniel Veillard 2012-10-16 01:00:33 UTC
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
Comment 6 John Ralls 2012-10-22 21:20:28 UTC
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?