libtool
[Top][All Lists]
Advanced

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

old solaris problem


From: Thien-Thi Nguyen
Subject: old solaris problem
Date: Thu, 17 Feb 2011 10:23:25 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux)

In the GNU Serveez configure.ac, i see:

  dnl
  dnl Check if libtool copes with SunOS/Solaris.  GNU libtool 1.4.2 and less
  dnl fail to create self-contained shared libraries.  This is due to the gcc
  dnl - native linker combination.  The below macro adds the -liberty path
  dnl and -lgcc to the linker line if necessary.
  dnl
  SVZ_LIBTOOL_SOLARIS

(full macro source below).  I don't know how to evaluate the relevance
of this comment given the (much newer) Libtool 2.4 i use locally and am
considering imposing as the prereq in configure.ac.  IOW, if i specify:

  LT_PREREQ([2.4])

would it be safe to remove this check/workaround?  I would appreciate any
pointers on discussion or documentation regarding this, or (even better) a
simple "yeah, no sweat, libtool 2.4 DTRT" from someone more knowledgable.
FWIW, the current libtool prereq is 1.9b (first release to have ‘LT_INIT’).

Following is the macro definition.  Thanks for reading this.

  AC_DEFUN([SVZ_LIBTOOL_SOLARIS],[
  AS_IF([SVZ_Y([GCC]) && SVZ_Y([enable_shared])],
   [AS_CASE([$host_os],[solaris*],[
        LIBERTY=`gcc --print-file-name=libiberty.a`
        LIBERTY="-L`dirname $LIBERTY 2>/dev/null`"
        SERVEEZ_LDFLAGS="$SERVEEZ_LDFLAGS $LIBERTY"
        GCCLIB=`gcc --print-libgcc-file-name`
        GCCDIR="-L`dirname $GCCLIB 2>/dev/null`"
        GCCFILE=`basename $GCCLIB 2>/dev/null`
        GCCFILE="-l`echo "$GCCFILE" | sed -e 's/lib\(.*\)\.a/\1/'`"
        SERVEEZ_LDFLAGS="$SERVEEZ_LDFLAGS $GCCDIR"
        SERVEEZ_LIBS="$SERVEEZ_LIBS $GCCFILE"
        AC_MSG_WARN([
    The configure script added
    '$LIBERTY $GCCDIR $GCCFILE'
    to your linker line.  This may not be what you want.  Please report
    to <address@hidden> if we failed to build shared libraries
    for '$host_os'.])
        AS_UNSET([LIBERTY])
        AS_UNSET([GCCLIB])
        AS_UNSET([GCCDIR])
        AS_UNSET([GCCFILE])])])
  ])



reply via email to

[Prev in Thread] Current Thread [Next in Thread]