diff options
-rw-r--r-- | bfd/ChangeLog | 2 | ||||
-rw-r--r-- | bfd/configure.host | 24 |
2 files changed, 18 insertions, 8 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index fe0bd4d..f17271f 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,5 +1,7 @@ Thu Feb 15 11:29:13 1996 Ian Lance Taylor <ian@cygnus.com> + * configure.host: Set RPATH_ENVVAR. + * Makefile.in: Rebuild dependencies. * elflink.c (_bfd_elf_create_linker_section): Remove unused diff --git a/bfd/configure.host b/bfd/configure.host index 1657407..9af40de 100644 --- a/bfd/configure.host +++ b/bfd/configure.host @@ -21,6 +21,7 @@ # SHLINK may be set to the name to link the shared library to # ALLLIBS may be set to libraries to build # HLDFLAGS LDFLAGS specific to the host +# RPATH_ENVVAR environment variable used to find shared libraries HDEFINES= host64=false @@ -94,6 +95,8 @@ esac # If we are configuring with --enable-shared, adjust the shared # library support based on the host. This support must work for both # the BFD and the opcodes libraries. +HLDFLAGS= +RPATH_ENVVAR=LD_LIBRARY_PATH SHLIB_CC='$(CC)' SHLIB_CFLAGS='-shared' if [ "${shared}" = "true" ]; then @@ -109,8 +112,6 @@ if [ "${shared}" = "true" ]; then fi fi - base_shlib=`echo ${SHLIB} | sed -e 's,^.*/\([^/]*\)$,\1,'` - case "${host}" in *-dec-osf*) # -fpic is not needed on the Alpha. @@ -120,22 +121,28 @@ if [ "${shared}" = "true" ]; then # HP/UX uses .sl for shared libraries. SHLINK=`echo ${SHLINK} | sed -e 's/so$/sl/'` SHLIB_CFLAGS='-shared $(PICFLAG)' + HLDFLAGS='-Wl,+s,+b,$(libdir)' + RPATH_ENVVAR=SHLIB_PATH ;; *-*-irix5*) # -fpic is not needed on Irix 5. PICFLAG= - SHLIB_CFLAGS="-shared -Wl,-soname,${base_shlib}" + SHLIB_CFLAGS='-shared -Wl,-soname,$(SONAME)' + HLDFLAGS='-Wl,-rpath,$(libdir)' ;; *-*-linux*aout*) ;; *-*-linux*) - SHLIB_CFLAGS="-shared -Wl,-soname,${base_shlib}" + SHLIB_CFLAGS='-shared -Wl,-soname,$(SONAME)' + HLDFLAGS='-Wl,-rpath,$(libdir)' ;; *-*-sysv4* | *-*-solaris*) - SHLIB_CFLAGS="-shared -h ${base_shlib}" + SHLIB_CFLAGS='-shared -h $(SONAME)' + HLDFLAGS='-R $(libdir)' ;; *-*-sunos*) - ALLLIBS=`echo ${ALLLIBS} | sed -e 's/\$(SHLINK)//'` + # Build a libTARGET-bfd.so.VERSION symlink in the object directory. + ALLLIBS=`echo ${ALLLIBS} | sed -e 's/\$(SHLINK)/stamp-tshlink/'` ;; esac fi @@ -143,15 +150,16 @@ fi # On SunOS, if the linker supports the -rpath option, use it to # prevent ../bfd and ../opcodes from being included in the run time # search path. -HLDFLAGS= case "${host}" in *-*-sunos*) echo 'main () { }' > conftest.c - ${CC} -o conftest -Wl,-rpath= conftest.c >/dev/null 2>conftest.t + ${CC-gcc} -o conftest -Wl,-rpath= conftest.c >/dev/null 2>conftest.t if grep 'unrecognized' conftest.t >/dev/null 2>&1; then : elif grep 'No such file' conftest.t >/dev/null 2>&1; then : + elif [ "${shared}" = "true" ]; then + HLDFLAGS='-Wl,-rpath=$(libdir)' else HLDFLAGS='-Wl,-rpath=' fi |