bug-gnu-utils
[Top][All Lists]
Advanced

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

LIBTOOL 1.4.2 Issues


From: Asim Suter
Subject: LIBTOOL 1.4.2 Issues
Date: 26 Jul 2002 13:42:30 -0700

Greetings All,

I am facing certain issues with "libtool" 1.4.2 and
thought I'll explain the issues with details so that
you get a complete picture, so that you can help me.

------------------------------------

Our build infrastructure has "source area", "build area", and "install
area"

say for example, 

Source area:
/auto/asuter/sw/helloworld
/auto/asuter/sw/abclib

Build area:
/auto/asuter/sw/build/helloworld
/auto/asuter/sw/build/abclib

Install area:
/auto/asuter/sw/install/XYZ/usr/bin which corresponds to
"/XYZ/usr/bin" on run machine.
/auto/asuter/sw/install/XYZ//usr/lib which corresponds to
"/XYZ/usr/lib" on run machine.
  

We would want:

1) Our executables to be carrying hardcoded runpath to libraries for
example, helloworld above should carry "/XYZ//usr/lib"
2) Our libraries to be carrying hardcoded runpath to libraries. -
"/XYZ/usr/lib"
3) We do not run our executables in build machine ever so we do not
want any build area paths to be included in executables.
4) We do not prebuild and install libraries in "install area". Instead
all libraries are built on demand using automake _DEPENDENCIES. For
example, if "helloworld" needs a library /auto/asuter/sw/abclib, the
helloworld Makefile.am would have:

helloworld_DEPENDENCIES = /auto/asuter/sw/build/abclib/abclib.la

now when helloworld is compiled, as a dependency it goes to
"/auto/asuter/sw/build/abclib/" directory and builds library. While
this works during libtool "link" stage, it doesn't work during
"relink" stage as libtool doesn't generate
"-L/auto/asuter/sw/build/abclib/.libs" to gcc while it still does
"-labclib"


We have currently following issues:

1) Problem as in (4) above.
2) The executables we generate do carry "/XYZ/usr/lib" (by using
linker option --rpath -Wl,/XYZ/usr/lib) , but in addition if this path
is not available in runmachine, it tries to look into install area ie.
"/auto/asuter/sw/install/XYZ/usr/lib". We would like to get rid of
hardcoding install area paths into executables. If it doesn't find in
"run area" it should fail.
3) We want to avoid relinking to save build time.
4) If I touch/delete abclib.la, and make helloworld again, using
dependency it rebuilds abclib. This is great.
However, if I touch a file say "abclib.c" which affects abclib , and
compile helloworld, dependency finds "abclib.la" still upto date and
doesn't build abclib again.

Kindly Cc address@hidden( if possible ).
I appreciate your help very much!

Regards,
Asim Suter
address@hidden



reply via email to

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