diff options
| author | Jelmer Vernooij <jelmer@samba.org> | 2010-06-20 11:49:08 +0200 | 
|---|---|---|
| committer | Jelmer Vernooij <jelmer@samba.org> | 2010-06-20 11:49:08 +0200 | 
| commit | 9bcd0daba2cdd2acd6fc0e3de44f5138f2f3303f (patch) | |
| tree | f24d7e9c4b4fcdcb768040129a878f96a62f2bc3 | |
| parent | 44c01a5eb45a0cd5ca3de8be5c4680de75418dce (diff) | |
| download | samba-9bcd0daba2cdd2acd6fc0e3de44f5138f2f3303f.tar.gz samba-9bcd0daba2cdd2acd6fc0e3de44f5138f2f3303f.tar.bz2 samba-9bcd0daba2cdd2acd6fc0e3de44f5138f2f3303f.zip  | |
ldb: Change LDBSAMBA back to subsystem, update comments, use different
ABI file based on whether ldb_ildap is included.
| -rw-r--r-- | source4/lib/ldb-samba/wscript_build | 14 | ||||
| -rw-r--r-- | source4/lib/ldb/wscript | 9 | 
2 files changed, 16 insertions, 7 deletions
diff --git a/source4/lib/ldb-samba/wscript_build b/source4/lib/ldb-samba/wscript_build index 717a8465a7..970f495eca 100644 --- a/source4/lib/ldb-samba/wscript_build +++ b/source4/lib/ldb-samba/wscript_build @@ -1,11 +1,15 @@  #!/usr/bin/env python +# LDBSAMBA gets included in the ldb build when we are building ldb_ildap  +# as a built-in module and this delutes the symbols in the ldb library with  +# the symbols of all of ldb_ildap's dependencies.  -# It is important that this is a library! -# Otherwise samba specific symbols end up in -# 'ldb' and we fail the ABI check, when not using -# a system 'ldb'. -bld.SAMBA_LIBRARY('LDBSAMBA', +# However, LDBSAMBA has to be a subsystem, otherwise we end up with an unusable +# build when building against the system ldb. + +# When adding/modifying public symbols in LDBSAMBA, please make sure that  +# lib/ldb/ABI/ldb-samba-X.sigs gets updated. +bld.SAMBA_SUBSYSTEM('LDBSAMBA',  	source='ldif_handlers.c ldb_wrap.c',  	autoproto='ldif_handlers_proto.h',  	public_deps='ldb', diff --git a/source4/lib/ldb/wscript b/source4/lib/ldb/wscript index 6f6c9a1f9e..df2245f674 100644 --- a/source4/lib/ldb/wscript +++ b/source4/lib/ldb/wscript @@ -74,13 +74,15 @@ def build(bld):                              ldb_attributes.c attrib_handlers.c ldb_controls.c qsort.c''')      if s4_build: +        builtin_ildap = not bld.CONFIG_SET('USING_SYSTEM_LDB')          # this is only in the s4 build          bld.SAMBA_MODULE('ldb_ildap', 'ldb_ildap/ldb_ildap.c',                           init_function='LDB_BACKEND(ldapi),LDB_BACKEND(ldaps),LDB_BACKEND(ldap)',                           deps='talloc LIBCLI_LDAP CREDENTIALS', -                         internal_module=not bld.CONFIG_SET('USING_SYSTEM_LDB'), +                         internal_module=builtin_ildap,                           subsystem='ldb')      else: +        builtin_ildap = False          # this is not included in the s4 build          bld.SAMBA_MODULE('ldb_ldap', 'ldb_ldap/ldb_ldap.c',                           init_function='LDB_BACKEND(ldapi),LDB_BACKEND(ldaps),LDB_BACKEND(ldap)', @@ -96,7 +98,10 @@ def build(bld):          bld.env.PACKAGE_VERSION = VERSION          bld.env.PKGCONFIGDIR = '${LIBDIR}/pkgconfig' -    abi_file = 'ABI/ldb-%s.sigs' % VERSION +    if builtin_ildap: +        abi_file = 'ABI/ldb-ildap-%s.sigs' % VERSION +    else: +        abi_file = 'ABI/ldb-%s.sigs' % VERSION      bld.SAMBA_SUBSYSTEM('pyldb_util', deps='ldb',              source='pyldb_util.c', needs_python=True)  | 
