tech-toolchain archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: "Fixing" new ld(1) DT_NEEDED handling



On Mon, Oct 14, 2013 at 03:34:56PM +0200, Martin Husemann wrote:
> The joyent/smartos bulk builds are done with the Solaris tools.
> And I wonder this too.

I looked at one example (that I know builds on SmartOS) and found multiple
things:

First, the upstream configure itselfs has lots of special stuff:

    if test "$SOLARIS_SUNPRO_CC"; then
       LDFLAGS="$LDFLAGS -z ignore -R '\$\$ORIGIN:\$\$ORIGIN/..' -z lazyload -z 
combreloc -z muldefs"
       LIBS="-lCrun -lCstd -lc $LIBS"
       AC_DEFINE(NSCAP_DISABLE_DEBUG_PTR_TYPES)
       CFLAGS="$CFLAGS -xlibmieee -xstrconst -xbuiltin=%all 
-D__FUNCTION__=__func__"
       CXXFLAGS="$CXXFLAGS -xlibmieee -xbuiltin=%all 
-features=tmplife,tmplrefstatic,extensions,no%except -norunpath 
-D__FUNCTION__=__func__ -template=no%extdef"
       LDFLAGS="-xildoff $LDFLAGS"


(not sure which strike here)

and second the Makefile adds various flags depending on OS:

Makefile:LDFLAGS.SunOS+=                -lm
Makefile:LDFLAGS.DragonFly=     -lplc4 -lnspr4
Makefile:LDFLAGS.FreeBSD=       -lplc4 -lnspr4
Makefile:LDFLAGS.Linux=         -lnspr4


This all stops making any sense to me.
Let's leave it as is and drop this thread.

Martin


Home | Main Index | Thread Index | Old Index