[SCM] Samba Shared Repository - branch master updated
Andrew Tridgell
tridge at samba.org
Wed Dec 8 04:46:01 MST 2010
The branch, master has been updated
via 735c1cd s4-pkgconfig: add @LIB_RPATH@ to our link flags
via 8b3ae1a waf: added --disable-symbol-versions configure option
via af1b098 s4-ldb: added @LIB_RPATH@ to the ldb pc file
via 92961d2 waf: support @LIB_RPATH@ in pc files
from 2079a6d s4-acl: Changed the mechanism of attribute removal to speed it up.
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit 735c1cd2da15167748e92ba6de48fdb5169db587
Author: Andrew Tridgell <tridge at samba.org>
Date: Wed Dec 8 20:41:37 2010 +1100
s4-pkgconfig: add @LIB_RPATH@ to our link flags
this is only set when rpath is used on install. It ensures that
applications that link against Samba libraries get the rpath right
Autobuild-User: Andrew Tridgell <tridge at samba.org>
Autobuild-Date: Wed Dec 8 12:46:00 CET 2010 on sn-devel-104
commit 8b3ae1a3b80a07f40d17a59e4f334e2df496b535
Author: Andrew Tridgell <tridge at samba.org>
Date: Wed Dec 8 19:00:00 2010 +1100
waf: added --disable-symbol-versions configure option
some people may not want symbol versions.
commit af1b098441b0d49dd5caf80a6950171135ca5e79
Author: Andrew Tridgell <tridge at samba.org>
Date: Wed Dec 8 18:47:54 2010 +1100
s4-ldb: added @LIB_RPATH@ to the ldb pc file
commit 92961d28281653906f58f01817cf58b02f85168c
Author: Andrew Tridgell <tridge at samba.org>
Date: Wed Dec 8 18:47:39 2010 +1100
waf: support @LIB_RPATH@ in pc files
this will be used to get the needed -Wl,-rpath options into our pc
files
Pair-Programmed-With: Andrew Bartlett <abartlet at samba.org>
-----------------------------------------------------------------------
Summary of changes:
buildtools/wafsamba/pkgconfig.py | 8 ++++++--
buildtools/wafsamba/wscript | 11 ++++++++---
lib/talloc/pytalloc-util.pc.in | 2 +-
lib/talloc/talloc.pc.in | 2 +-
lib/tdb/tdb.pc.in | 2 +-
lib/tevent/tevent.pc.in | 2 +-
lib/torture/torture.pc.in | 2 +-
lib/util/samba-util.pc.in | 2 +-
librpc/ndr.pc.in | 2 +-
librpc/ndr_standard.pc.in | 2 +-
source4/auth/gensec/gensec.pc.in | 2 +-
source4/dsdb/samdb.pc.in | 2 +-
source4/lib/ldb/ldb.pc.in | 2 +-
source4/lib/ldb/pyldb-util.pc.in | 2 +-
source4/lib/policy/policy.pc.in | 2 +-
source4/lib/registry/registry.pc.in | 2 +-
source4/librpc/dcerpc.pc.in | 2 +-
source4/librpc/dcerpc_atsvc.pc.in | 2 +-
source4/librpc/dcerpc_samr.pc.in | 2 +-
source4/param/samba-hostconfig.pc.in | 2 +-
source4/rpc_server/dcerpc_server.pc.in | 2 +-
21 files changed, 33 insertions(+), 24 deletions(-)
Changeset truncated at 500 lines:
diff --git a/buildtools/wafsamba/pkgconfig.py b/buildtools/wafsamba/pkgconfig.py
index 1a41c80..4abf8d6 100644
--- a/buildtools/wafsamba/pkgconfig.py
+++ b/buildtools/wafsamba/pkgconfig.py
@@ -54,10 +54,14 @@ def PKG_CONFIG_FILES(bld, pc_files, vnum=None):
source=f+'.in',
target=f)
t.vars = []
- for v in [ 'PREFIX', 'EXEC_PREFIX' ]:
- t.vars.append(t.env[v])
+ if t.env.RPATH_ON_INSTALL:
+ t.env.LIB_RPATH = t.env.RPATH_ST % t.env.LIBDIR
+ else:
+ t.env.LIB_RPATH = ''
if vnum:
t.env.PACKAGE_VERSION = vnum
+ for v in [ 'PREFIX', 'EXEC_PREFIX', 'LIB_RPATH' ]:
+ t.vars.append(t.env[v])
bld.INSTALL_FILES(dest, f, flat=True, destname=base)
Build.BuildContext.PKG_CONFIG_FILES = PKG_CONFIG_FILES
diff --git a/buildtools/wafsamba/wscript b/buildtools/wafsamba/wscript
index f355125..5756df4 100644
--- a/buildtools/wafsamba/wscript
+++ b/buildtools/wafsamba/wscript
@@ -61,6 +61,9 @@ def set_options(opt):
gr.add_option('--nonshared-binary',
help=("Disable use of shared libs for the listed binaries"),
action="store", dest='NONSHARED_BINARIES', default='')
+ gr.add_option('--disable-symbol-versions',
+ help=("Disable use of the --version-script linker option"),
+ action="store_true", dest='disable_symbol_versions', default=False)
opt.add_option('--with-modulesdir',
help=("modules directory [PREFIX/modules]"),
@@ -288,9 +291,11 @@ def configure(conf):
# the user can of course always override it.
conf.env.PRIVATELIBDIR = conf.env.LIBDIR
- if not conf.env.DISABLE_SHARED and conf.CHECK_LIBRARY_SUPPORT(rpath=support_rpath,
- version_script=True,
- msg='-Wl,--version-script support'):
+ if (not conf.env.DISABLE_SHARED and
+ not Options.options.disable_symbol_versions and
+ conf.CHECK_LIBRARY_SUPPORT(rpath=support_rpath,
+ version_script=True,
+ msg='-Wl,--version-script support')):
conf.env.HAVE_LD_VERSION_SCRIPT = True
else:
conf.env.HAVE_LD_VERSION_SCRIPT = False
diff --git a/lib/talloc/pytalloc-util.pc.in b/lib/talloc/pytalloc-util.pc.in
index b17b373..bc704b4 100644
--- a/lib/talloc/pytalloc-util.pc.in
+++ b/lib/talloc/pytalloc-util.pc.in
@@ -7,5 +7,5 @@ Name: pytalloc-util
Description: Utility functions for using talloc objects with Python
Version: @TALLOC_VERSION@
Libs: -L${libdir} -lpytalloc-util
-Cflags: -I${includedir}
+Cflags: @LIB_RPATH@ -I${includedir}
URL: http://talloc.samba.org/
diff --git a/lib/talloc/talloc.pc.in b/lib/talloc/talloc.pc.in
index 5ce2109..437281a 100644
--- a/lib/talloc/talloc.pc.in
+++ b/lib/talloc/talloc.pc.in
@@ -6,6 +6,6 @@ includedir=@includedir@
Name: talloc
Description: A hierarchical pool based memory system with destructors
Version: @TALLOC_VERSION@
-Libs: -L${libdir} -ltalloc
+Libs: @LIB_RPATH@ -L${libdir} -ltalloc
Cflags: -I${includedir}
URL: http://talloc.samba.org/
diff --git a/lib/tdb/tdb.pc.in b/lib/tdb/tdb.pc.in
index 6f8f553..b78419e 100644
--- a/lib/tdb/tdb.pc.in
+++ b/lib/tdb/tdb.pc.in
@@ -6,6 +6,6 @@ includedir=@includedir@
Name: tdb
Description: A trivial database
Version: @PACKAGE_VERSION@
-Libs: -L${libdir} -ltdb
+Libs: @LIB_RPATH@ -L${libdir} -ltdb
Cflags: -I${includedir}
URL: http://tdb.samba.org/
diff --git a/lib/tevent/tevent.pc.in b/lib/tevent/tevent.pc.in
index b1dd439..1091ff0 100644
--- a/lib/tevent/tevent.pc.in
+++ b/lib/tevent/tevent.pc.in
@@ -8,5 +8,5 @@ Description: An event system library
Version: @PACKAGE_VERSION@
Requires: talloc
Libs: -L${libdir} -ltevent
-Cflags: -I${includedir}
+Cflags: @LIB_RPATH@ -I${includedir}
URL: http://samba.org/
diff --git a/lib/torture/torture.pc.in b/lib/torture/torture.pc.in
index 6582816..459b35c 100644
--- a/lib/torture/torture.pc.in
+++ b/lib/torture/torture.pc.in
@@ -8,5 +8,5 @@ Name: torture
Description: Samba torture (test) suite
Requires: talloc
Version: 0.0.1
-Libs: -L${libdir} -ltorture
+Libs: @LIB_RPATH@ -L${libdir} -ltorture
Cflags: -I${includedir} -DHAVE_IMMEDIATE_STRUCTURES=1
diff --git a/lib/util/samba-util.pc.in b/lib/util/samba-util.pc.in
index e61ee44..a49c1d0 100644
--- a/lib/util/samba-util.pc.in
+++ b/lib/util/samba-util.pc.in
@@ -7,5 +7,5 @@ Name: samba-util
Description: Samba utility functions
Requires: talloc tevent
Version: 0.0.1
-Libs: -L${libdir} -lsamba-util
+Libs: @LIB_RPATH@ -L${libdir} -lsamba-util
Cflags: -I${includedir} -DHAVE_IMMEDIATE_STRUCTURES=1
diff --git a/librpc/ndr.pc.in b/librpc/ndr.pc.in
index 9cff0ca..f7a1651 100644
--- a/librpc/ndr.pc.in
+++ b/librpc/ndr.pc.in
@@ -7,5 +7,5 @@ Name: ndr
Description: Network Data Representation Core Library
Requires: samba-hostconfig talloc
Version: 0.0.1
-Libs: -L${libdir} -lndr
+Libs: @LIB_RPATH@ -L${libdir} -lndr
Cflags: -I${includedir} -DHAVE_IMMEDIATE_STRUCTURES=1 -D_GNU_SOURCE=1
diff --git a/librpc/ndr_standard.pc.in b/librpc/ndr_standard.pc.in
index 80eace1..d400ef1 100644
--- a/librpc/ndr_standard.pc.in
+++ b/librpc/ndr_standard.pc.in
@@ -7,5 +7,5 @@ Name: ndr-standard
Description: NDR marshallers for the standard set of DCE/RPC interfaces
Requires: ndr
Version: 0.0.1
-Libs: -L${libdir} -lndr-standard
+Libs: @LIB_RPATH@ -L${libdir} -lndr-standard
Cflags: -I${includedir} -DHAVE_IMMEDIATE_STRUCTURES=1 -D_GNU_SOURCE=1
diff --git a/source4/auth/gensec/gensec.pc.in b/source4/auth/gensec/gensec.pc.in
index f50d2a8..f32226d 100644
--- a/source4/auth/gensec/gensec.pc.in
+++ b/source4/auth/gensec/gensec.pc.in
@@ -7,5 +7,5 @@ modulesdir=${prefix}/modules/gensec
Name: gensec
Description: Generic Security Library
Version: @PACKAGE_VERSION@
-Libs: -L${libdir} -lgensec
+Libs: @LIB_RPATH@ -L${libdir} -lgensec
Cflags: -I${includedir} -DHAVE_IMMEDIATE_STRUCTURES=1
diff --git a/source4/dsdb/samdb.pc.in b/source4/dsdb/samdb.pc.in
index 1a0b6d9..691f73e 100644
--- a/source4/dsdb/samdb.pc.in
+++ b/source4/dsdb/samdb.pc.in
@@ -6,5 +6,5 @@ includedir=@includedir@
Name: samdb
Description: Sam Database
Version: @PACKAGE_VERSION@
-Libs: -L${libdir} -lsamdb
+Libs: @LIB_RPATH@ -L${libdir} -lsamdb
Cflags: -I${includedir} -DHAVE_IMMEDIATE_STRUCTURES=1
diff --git a/source4/lib/ldb/ldb.pc.in b/source4/lib/ldb/ldb.pc.in
index 01482f6..aeba17a 100644
--- a/source4/lib/ldb/ldb.pc.in
+++ b/source4/lib/ldb/ldb.pc.in
@@ -9,7 +9,7 @@ Description: An LDAP-like embedded database
Version: @PACKAGE_VERSION@
Requires.private: tdb
Requires: talloc
-Libs: -L${libdir} -lldb
+Libs: @LIB_RPATH@ -L${libdir} -lldb
Libs.private: @LDAP_LIBS@
Cflags: -I${includedir}
Modulesdir: ${modulesdir}
diff --git a/source4/lib/ldb/pyldb-util.pc.in b/source4/lib/ldb/pyldb-util.pc.in
index 2afca04..348ae8b 100644
--- a/source4/lib/ldb/pyldb-util.pc.in
+++ b/source4/lib/ldb/pyldb-util.pc.in
@@ -8,6 +8,6 @@ Name: pyldb-util
Description: Python bindings for LDB
Version: @PACKAGE_VERSION@
Requires: ldb
-Libs: -L${libdir} -lpyldb-util
+Libs: @LIB_RPATH@ -L${libdir} -lpyldb-util
Cflags: -I${includedir}
URL: http://ldb.samba.org/
diff --git a/source4/lib/policy/policy.pc.in b/source4/lib/policy/policy.pc.in
index 4848cbc..fe5c66d 100644
--- a/source4/lib/policy/policy.pc.in
+++ b/source4/lib/policy/policy.pc.in
@@ -8,5 +8,5 @@ Description: Active Directory Group Policy library
Requires: talloc
Requires.private: ldb
Version: @PACKAGE_VERSION@
-Libs: -L${libdir} -lpolicy
+Libs: @LIB_RPATH@ -L${libdir} -lpolicy
Cflags: -I${includedir} -DHAVE_IMMEDIATE_STRUCTURES=1
diff --git a/source4/lib/registry/registry.pc.in b/source4/lib/registry/registry.pc.in
index 386817d..e923931 100644
--- a/source4/lib/registry/registry.pc.in
+++ b/source4/lib/registry/registry.pc.in
@@ -8,5 +8,5 @@ Description: Windows-style registry library
Requires: talloc
Requires.private: ldb
Version: @PACKAGE_VERSION@
-Libs: -L${libdir} -lregistry
+Libs: @LIB_RPATH@ -L${libdir} -lregistry
Cflags: -I${includedir} -DHAVE_IMMEDIATE_STRUCTURES=1
diff --git a/source4/librpc/dcerpc.pc.in b/source4/librpc/dcerpc.pc.in
index 798b8df..b79507a 100644
--- a/source4/librpc/dcerpc.pc.in
+++ b/source4/librpc/dcerpc.pc.in
@@ -7,5 +7,5 @@ Name: dcerpc
Description: DCE/RPC client library
Requires: ndr
Version: @PACKAGE_VERSION@
-Libs: -L${libdir} -ldcerpc
+Libs: @LIB_RPATH@ -L${libdir} -ldcerpc
Cflags: -I${includedir} -DHAVE_IMMEDIATE_STRUCTURES=1
diff --git a/source4/librpc/dcerpc_atsvc.pc.in b/source4/librpc/dcerpc_atsvc.pc.in
index 030df93..f781f23 100644
--- a/source4/librpc/dcerpc_atsvc.pc.in
+++ b/source4/librpc/dcerpc_atsvc.pc.in
@@ -7,5 +7,5 @@ Name: dcerpc_atsvc
Description: DCE/RPC client library - ATSVC
Requires.private: dcerpc ndr
Version: @PACKAGE_VERSION@
-Libs: -L${libdir} -ldcerpc-atsvc
+Libs: @LIB_RPATH@ -L${libdir} -ldcerpc-atsvc
Cflags: -I${includedir} -DHAVE_IMMEDIATE_STRUCTURES=1
diff --git a/source4/librpc/dcerpc_samr.pc.in b/source4/librpc/dcerpc_samr.pc.in
index c034b0f..1c80aa9 100644
--- a/source4/librpc/dcerpc_samr.pc.in
+++ b/source4/librpc/dcerpc_samr.pc.in
@@ -7,5 +7,5 @@ Name: dcerpc_samr
Description: DCE/RPC client library - SAMR
Requires.private: dcerpc ndr
Version: @PACKAGE_VERSION@
-Libs: -L${libdir} -ldcerpc-samr
+Libs: @LIB_RPATH@ -L${libdir} -ldcerpc-samr
Cflags: -I${includedir} -DHAVE_IMMEDIATE_STRUCTURES=1
diff --git a/source4/param/samba-hostconfig.pc.in b/source4/param/samba-hostconfig.pc.in
index 7a6072c..307f27b 100644
--- a/source4/param/samba-hostconfig.pc.in
+++ b/source4/param/samba-hostconfig.pc.in
@@ -6,5 +6,5 @@ includedir=@includedir@
Name: samba-hostconfig
Description: Host-wide Samba configuration
Version: @PACKAGE_VERSION@
-Libs: -L${libdir} -lsamba-hostconfig
+Libs: @LIB_RPATH@ -L${libdir} -lsamba-hostconfig
Cflags: -I${includedir} -DHAVE_IMMEDIATE_STRUCTURES=1
diff --git a/source4/rpc_server/dcerpc_server.pc.in b/source4/rpc_server/dcerpc_server.pc.in
index d521436..18150ad 100644
--- a/source4/rpc_server/dcerpc_server.pc.in
+++ b/source4/rpc_server/dcerpc_server.pc.in
@@ -7,5 +7,5 @@ Name: dcerpc_server
Description: DCE/RPC server library
Requires: dcerpc
Version: @PACKAGE_VERSION@
-Libs: -L${libdir} -ldcerpc-server
+Libs: @LIB_RPATH@ -L${libdir} -ldcerpc-server
Cflags: -I${includedir} -DHAVE_IMMEDIATE_STRUCTURES=1
--
Samba Shared Repository
More information about the samba-cvs
mailing list