[tlbuild] Bug in libpng affecting Solaris 10

Mojca Miklavec mojca.miklavec.lists at gmail.com
Thu Jan 21 20:19:43 CET 2016


On 20 January 2016 at 17:10, Karl Berry wrote:
>     I did that, but I didn't manage to get anything useful out of it at
>
> Also, I belatedly remembered that it is necessary to add -E, so the rest
> of the compiler doesn't run.  Sorry.  In short, ... -E -dD -o /tmp/foo ...
> outputs all the #define's as they are made, so it's possible to
> trace where things are coming from.

I could do that now, but I don't see the reason to debug any further.
The reason for the failure seems pretty clear to me and the following
is enough to trigger the failure:

    #define _POSIX_SOURCE 1
    #include <stdio.h>

See also some further comments (which I also mentioned earlier in the thread):
    https://sourceforge.net/p/libpng/bugs/245/#a56e

>     If you don't want to apply this to the sources, can you please at
>     least send me an attempt of a TeX Live-specific patch that does this?
>
> Try running make LIBPNG_USER_CPPFLAGS="-Dwhatever ...".
> I just added that variable to libpng/Makefile[.am] for this purpose.
>
> I don't think it's a good idea to start trying to embed
> compiler-version-specific system-version-specific package-version-specific
> build options into the Makefiles.

It most probably wouldn't have to be compiler-version-specific or
system-version-specific, but anyway ...

I tried defining that flag and the TL builds succeeds now. Thanks.

Just for fun I also tried defining
    export CPPFLAGS="-D_XOPEN_SOURCE=600"
for the complete build, but that leads to problems like:

../../../source/libs/zziplib/zziplib-0.13.62/zzip/stat.c: In function
'zzip_dir_stat':
../../../source/libs/zziplib/zziplib-0.13.62/zzip/stat.c:44:37: error:
'strcasecmp' undeclared (first use in this function)
     cmp = (flags & ZZIP_CASELESS) ? strcasecmp : strcmp;
                                     ^
../../../source/libs/zziplib/zziplib-0.13.62/zzip/stat.c:44:37: note:
each undeclared identifier is reported only once for each function it
appears in

The "undeclared" function is POSIX.1-2001. So these kind of problems
are probably expected.

> Many builds require various options
> (I'd like to know about them to record them in source/README, if not
> already there) and I don't see anything to be gained by putting autoconf
> (and me) into the loop of defining them.

Solaris also has a special README.

Mojca


More information about the tlbuild mailing list