The Samba-Bugzilla – Attachment 9814 Details for
Bug 10515
Samba-4x fails to build on FreeBSD if previous version is installed.
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
patch for v4-1-test, picked from master
0001-build-fix-ordering-problems-with-lib-provided-and-in.v4-1-test.patch (text/plain), 2.07 KB, created by
Michael Adam
on 2014-03-27 11:26:35 UTC
(
hide
)
Description:
patch for v4-1-test, picked from master
Filename:
MIME Type:
Creator:
Michael Adam
Created:
2014-03-27 11:26:35 UTC
Size:
2.07 KB
patch
obsolete
>From 96f56e4dd9e2af5b94cff0b8bdf1133b9b9421b1 Mon Sep 17 00:00:00 2001 >From: Michael Adam <obnox@samba.org> >Date: Wed, 16 Oct 2013 15:17:18 +0200 >Subject: [PATCH] build: fix ordering problems with lib-provided and internal > RPATHs > >When a library or system (like cups) provides an RPATH, >e.g. with -Wl,-R or -Wl,-rpath, this was added by waf >to the LINKFLAGS, wich was later prepended to our RPATH. >But if the path by chance contains an older version of >one of our internal libraries like talloc, this would lead >to linking the too old talloc into our binaries. > >This has been observed on, e.g., FreeBSD, but it is a general >problem. > >This patch fixes the problem by specially parsing the RPATH >linker options from the pkg-config(, cups-config, ....) output >and putting the paths into the RPATH_<lib> container, which >is then later correctly appended to our internal RPATH. > >Signed-off-by: Michael Adam <obnox@samba.org> > >Reviewed-by: Andrew Bartlett <abartlet@samba.org> >(cherry picked from commit 64f5e24100a764ec198cab9a8d2c43fa86e7027c) >--- > buildtools/wafadmin/Tools/config_c.py | 13 +++++++++++++ > 1 file changed, 13 insertions(+) > >diff --git a/buildtools/wafadmin/Tools/config_c.py b/buildtools/wafadmin/Tools/config_c.py >index a32d8aa..d0bc617 100644 >--- a/buildtools/wafadmin/Tools/config_c.py >+++ b/buildtools/wafadmin/Tools/config_c.py >@@ -73,6 +73,19 @@ def parse_flags(line, uselib, env): > app('CCFLAGS_' + uselib, x) > app('CXXFLAGS_' + uselib, x) > app('LINKFLAGS_' + uselib, x) >+ # >+ # NOTE on special treatment of -Wl,-R and -Wl,-rpath: >+ # >+ # It is important to not put a library provided RPATH >+ # into the LINKFLAGS but in the RPATH instead, since >+ # the provided LINKFLAGS get prepended to our own internal >+ # RPATH later, and hence can potentially lead to linking >+ # in too old versions of our internal libs. >+ # >+ elif x.startswith('-Wl,-R'): >+ app('RPATH_' + uselib, x[6:]) >+ elif x.startswith('-Wl,-rpath,'): >+ app('RPATH_' + uselib, x[11:]) > elif x.startswith('-Wl'): > app('LINKFLAGS_' + uselib, x) > elif x.startswith('-m') or x.startswith('-f'): >-- >1.8.3.2 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 10515
: 9814 |
10375
|
12791