diff options
author | Jung-uk Kim <jkim@FreeBSD.org> | 2012-08-29 11:27:23 +0200 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2012-08-29 12:02:26 +0200 |
commit | 34ca8dd9adb62c1154f979887a38483d73da978b (patch) | |
tree | 86907a50ccfefcd088c6c04e56f08542dfaf0caa /solenv | |
parent | cc9c380b157d03ca10d66c66f4500ddaf5e42f7e (diff) |
fdo#54015: At least FreeBSD ld requires -z origin when RPATH contains $ORIGIN
Signed-off-by: Stephan Bergmann <sbergman@redhat.com>:
* bulk replacement of "-Wl,-z,origin,-rpath,..." with
"-Wl,-z,origin -Wl,rpath,..."
* additional hunk for directory/c-sdk/config/FreeBSD.mk in
moz/seamonkey-source-1.1.14.patch did not apply and has been dropped
Change-Id: Ie60c696f041108e819ce8f799cff6f58e63a5ad7
Diffstat (limited to 'solenv')
-rw-r--r-- | solenv/gbuild/platform/unxgcc.mk | 4 | ||||
-rw-r--r-- | solenv/inc/unxgcc.mk | 8 |
2 files changed, 6 insertions, 6 deletions
diff --git a/solenv/gbuild/platform/unxgcc.mk b/solenv/gbuild/platform/unxgcc.mk index bb0db92449b3..cb1493dbc037 100644 --- a/solenv/gbuild/platform/unxgcc.mk +++ b/solenv/gbuild/platform/unxgcc.mk @@ -297,7 +297,7 @@ gb_Library_LAYER := \ $(foreach lib,$(gb_Library_EXTENSIONLIBS),$(lib):OXT) \ define gb_Library__get_rpath -$(if $(1),$(strip '-Wl,-rpath,$(1)' '-Wl,-rpath-link,$(gb_Library_OUTDIRLOCATION)')) +$(if $(1),$(strip '-Wl,-z,origin -Wl,-rpath,$(1)' '-Wl,-rpath-link,$(gb_Library_OUTDIRLOCATION)')) endef define gb_Library_get_rpath @@ -338,7 +338,7 @@ gb_Executable_LAYER := \ define gb_Executable_get_rpath -'-Wl,-rpath,$(call gb_LinkTarget__get_rpath_for_layer,$(call gb_Executable_get_layer,$(1)))' \ +'-Wl,-z,origin -Wl,-rpath,$(call gb_LinkTarget__get_rpath_for_layer,$(call gb_Executable_get_layer,$(1)))' \ -Wl,-rpath-link,$(gb_Library_OUTDIRLOCATION) endef diff --git a/solenv/inc/unxgcc.mk b/solenv/inc/unxgcc.mk index 0e98de77f47d..3ac4956ff216 100644 --- a/solenv/inc/unxgcc.mk +++ b/solenv/inc/unxgcc.mk @@ -191,11 +191,11 @@ LINKFLAGS_SYSBASE:=-Wl,--sysroot=$(SYSBASE) # entry. This will cause both, DT_RPATH and DT_RUNPATH entries, to be created # LINKFLAGSDEFS*=-Wl,-z,defs -LINKFLAGSRUNPATH_URELIB=-Wl,-rpath,\''$$ORIGIN'\',--enable-new-dtags -LINKFLAGSRUNPATH_UREBIN=-Wl,-rpath,\''$$ORIGIN/../lib:$$ORIGIN'\',--enable-new-dtags +LINKFLAGSRUNPATH_URELIB=-Wl,-z,origin -Wl,-rpath,\''$$ORIGIN'\',--enable-new-dtags +LINKFLAGSRUNPATH_UREBIN=-Wl,-z,origin -Wl,-rpath,\''$$ORIGIN/../lib:$$ORIGIN'\',--enable-new-dtags #TODO: drop $ORIGIN once no URE executable is also shipped in OOo -LINKFLAGSRUNPATH_OOO=-Wl,-rpath,\''$$ORIGIN:$$ORIGIN/../ure-link/lib'\',--enable-new-dtags -LINKFLAGSRUNPATH_SDKBIN=-Wl,-rpath,\''$$ORIGIN/../../ure-link/lib'\',--enable-new-dtags +LINKFLAGSRUNPATH_OOO=-Wl,-z,origin -Wl,-rpath,\''$$ORIGIN:$$ORIGIN/../ure-link/lib'\',--enable-new-dtags +LINKFLAGSRUNPATH_SDKBIN=-Wl,-z,origin -Wl,-rpath,\''$$ORIGIN/../../ure-link/lib'\',--enable-new-dtags LINKFLAGSRUNPATH_OXT= LINKFLAGSRUNPATH_NONE= # flag -Wl,-z,noexecstack sets the NX bit on the stack |