diff --git a/configure/os/CONFIG.Common.UnixCommon b/configure/os/CONFIG.Common.UnixCommon index 585bc5442..ff4374398 100644 --- a/configure/os/CONFIG.Common.UnixCommon +++ b/configure/os/CONFIG.Common.UnixCommon @@ -17,8 +17,12 @@ VALID_BUILDS = Host Ioc GNU_DIR = /usr/local #------------------------------------------------------- -SHRLIB_SEARCH_DIRS := $(foreach dir,$(SHRLIB_SEARCH_DIRS), \ - $(shell perl $(TOOLS)/fullPathName.pl $(dir))) +FULLPATHTOP= $(shell perl $(TOOLS)/fullPathName.pl $(TOP)) +# Get fullpathname of modules relative to TOP +SHRLIB_SEARCH_FULLPATHTOP = $(SHRLIB_SEARCH_DIRS:$(TOP)/%=$(FULLPATHTOP)/%) +# Get fullpathname of other relative dirs +SHRLIB_SEARCH_FULLPATHDIRS = $(SHRLIB_SEARCH_FULLPATHTOP:.%= \ + $(shell perl $(TOOLS)/fullPathName.pl .%) #------------------------------------------------------- # Unix prefix and suffix definitions diff --git a/configure/os/CONFIG.Common.hpux-parisc b/configure/os/CONFIG.Common.hpux-parisc index fbbb01649..cf5c09cf5 100644 --- a/configure/os/CONFIG.Common.hpux-parisc +++ b/configure/os/CONFIG.Common.hpux-parisc @@ -26,7 +26,7 @@ LOADABLE_SHRLIB_SUFFIX = .sl # Set runtime path for shared libraries empty:= # trick from the make docs... space:= $(empty) $(empty) -RUNTIME_LDFLAGS = -Wl,+b$(subst $(space),:,$(sort $(SHRLIB_SEARCH_DIRS))),+s +RUNTIME_LDFLAGS = -Wl,+b$(subst $(space),:,$(sort $(SHRLIB_SEARCH_FULLPATHDIRS))),+s ifeq ($(BUILD_CLASS),CROSS) GNU_TARGET=parisc-hp-unix diff --git a/configure/os/CONFIG.Common.solaris-sparc b/configure/os/CONFIG.Common.solaris-sparc index 6510dcbdf..d6b999771 100644 --- a/configure/os/CONFIG.Common.solaris-sparc +++ b/configure/os/CONFIG.Common.solaris-sparc @@ -28,7 +28,7 @@ OP_SYS_CPPFLAGS += -DSOLARIS=$(SOLARIS_VERSION) $(COMPILER_CPPFLAGS) OP_SYS_LDFLAGS += $(COMPILER_LDFLAGS) # Set runtime path for shared libraries -RUNTIME_LDFLAGS = $(SHRLIB_SEARCH_DIRS:%=-R%) +RUNTIME_LDFLAGS = $(SHRLIB_SEARCH_FULLPATHDIRS:%=-R%) ifeq ($(BUILD_CLASS),CROSS) GNU_TARGET=sparc-sun-solaris2 diff --git a/configure/os/CONFIG.Common.solaris-x86 b/configure/os/CONFIG.Common.solaris-x86 index e5ebf8c0a..026f97100 100644 --- a/configure/os/CONFIG.Common.solaris-x86 +++ b/configure/os/CONFIG.Common.solaris-x86 @@ -29,7 +29,7 @@ OP_SYS_LDFLAGS += $(COMPILER_LDFLAGS) ARCH_DEP_CPPFLAGS = -D_X86_ # Set runtime path for shared libraries -RUNTIME_LDFLAGS = $(SHRLIB_SEARCH_DIRS:%=-R%) +RUNTIME_LDFLAGS = $(SHRLIB_SEARCH_FULLPATHDIRS:%=-R%) ifeq ($(BUILD_CLASS),CROSS) GNU_TARGET=x86-sun-solaris2 diff --git a/configure/os/CONFIG.Common.win32-x86-cygwin b/configure/os/CONFIG.Common.win32-x86-cygwin index 9e61cf4a8..75594b26c 100644 --- a/configure/os/CONFIG.Common.win32-x86-cygwin +++ b/configure/os/CONFIG.Common.win32-x86-cygwin @@ -28,7 +28,7 @@ ARCH_DEP_CPPFLAGS += -D_X86_ OP_SYS_CPPFLAGS += -DCYGWIN32 -U_WIN32 # Set runtime path for shared libraries -RUNTIME_LDFLAGS = $(SHRLIB_SEARCH_DIRS:%=-Wl,-rpath,%) +RUNTIME_LDFLAGS = $(SHRLIB_SEARCH_FULLPATHDIRS:%=-Wl,-rpath,%) LDLIBS_READLINE = -lcygreadline5 -lcygcurses7