libtool
[Top][All Lists]
Advanced

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

Re: DESTDIR installs


From: mlist . gnu . libtool
Subject: Re: DESTDIR installs
Date: 25 Nov 2002 10:18:53 -0800
User-agent: Gnus/5.0808 (Gnus v5.8.8) XEmacs/21.4 (Honest Recruiter)

==> "pw" == Philip Willoughby <address@hidden> writes:

    pw> I have the following in a Makefile.am:
    pw> pkglib_LTLIBRARIES=libapttlog.la
    pw> libapttlog_la_SOURCES=aptt/log/log.c address@hidden@
    pw> -I$(top_srcdir)/src -I$(top_builddir)/src
    pw> address@hidden@

    pw> lib_LTLIBRARIES=libaptttest.la
    pw> libaptttest_la_SOURCES=aptt/test/test.c
    pw> libaptttest_la_LIBADD=libapttlog.la @LTLIBINTL@

    pw> If I run:

    pw> ./configure [Configure args] make make install

    pw> everything installs OK, however, if I run:

    pw> ./configure [Configure args] make make
    pw> DESTDIR=/var/tmp/aptt-0.0.1-1-root/ install

    pw> which I need to work to build an rpm cleanly, I get:

I've always felt that this is a deficiency in the way libtool does
its installs.  Then again, I use a very old version of libtool,
and this may have been fixed by now...

The problem is, the target install directory in libapptlog.la
(${pkglibdir}, I suppose) is used to link libapptest.la, but at
install time, libtool looks in

  ${pkglibdir}

only, and not in

  $DESTDIR${pkglibdir}

also, like it should.

I see two solutions here.  One is to fix libtool so that it
adds -L$DESTDIR${dir} for each -L${dir} found in a dependent
LTLIBRARY.  I'm a little wary of patching libtool, so I usually
use a shell script that pretends to be 'gcc', but adds the
desired $DESTDIR link path support.

The other solution, that I use in RPM spec files, is to seed
the environment from within the spec file:

  %install

  LIBRARY_PATH=${LIBRARY_PATH+":"}$DESTDIR${libdir}
  # add other directories as appropriate
  export LIBRARY_PATH

  make DESTDIR=$RPM_BUILD_ROOT install

Carl





reply via email to

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