From 2c55a995fef133c1854058ed5de83185b9325895 Mon Sep 17 00:00:00 2001 From: Brad Hards Date: Thu, 14 Apr 2011 16:12:19 +1000 Subject: [PATCH] util: Build samba-util without unresolved symbols. This is useful for the Samba4 case where external users otherwise need to link to (private) libsamba-util-common. Signed-off-by: Andrew Bartlett Autobuild-User: Andrew Bartlett Autobuild-Date: Sat Apr 16 12:29:33 CEST 2011 on sn-devel-104 --- lib/util/wscript_build | 93 +++++++++++++++++++++++++++--------------- 1 file changed, 60 insertions(+), 33 deletions(-) diff --git a/lib/util/wscript_build b/lib/util/wscript_build index 1186cd7c102..93827bcf5ba 100755 --- a/lib/util/wscript_build +++ b/lib/util/wscript_build @@ -1,38 +1,65 @@ #!/usr/bin/env python -# as we move files into common between samba-util and samba-util3, move them here. -# Both samba-util and samba-util3 depend on this private library -bld.SAMBA_LIBRARY('samba-util-common', - source='''talloc_stack.c smb_threads.c xfile.c data_blob.c - util_file.c time.c rbtree.c rfc1738.c select.c - genrand.c fsusage.c blocking.c become_daemon.c - signal.c system.c params.c util.c util_id.c util_net.c - util_strlist.c idtree.c debug.c fault.c base64.c - util_str_common.c''', - public_deps='talloc pthread LIBCRYPTO', - # until we get all the dependencies in this library in common - # we need to allow this library to be built with unresolved symbols - allow_undefined_symbols=True, - local_include=False, - public_headers='debug.h', - header_path= [('*', 'util') ], - private_library=True - ) - -if bld.env._SAMBA_BUILD_ == 4: - bld.SAMBA_LIBRARY('samba-util', - source='''dprintf.c - ms_fnmatch.c parmlist.c substitute.c util_str.c - ''', - deps='samba-util-common DYNCONFIG', - public_deps='talloc CHARSET execinfo uid_wrapper', - public_headers='attr.h byteorder.h data_blob.h memory.h safe_string.h time.h talloc_stack.h xfile.h dlinklist.h util.h', - header_path= [ ('dlinklist.h util.h', '.'), ('*', 'util') ], - local_include=False, - vnum='0.0.1', - pc_files='samba-util.pc' - ) - +common_util_sources = '''talloc_stack.c smb_threads.c xfile.c data_blob.c + util_file.c time.c rbtree.c rfc1738.c select.c + genrand.c fsusage.c blocking.c become_daemon.c + signal.c system.c params.c util.c util_id.c util_net.c + util_strlist.c idtree.c debug.c fault.c base64.c + util_str_common.c''' + +common_util_headers = 'debug.h' +common_util_public_deps = 'talloc pthread LIBCRYPTO' +s4_util_sources = '''dprintf.c ms_fnmatch.c parmlist.c substitute.c util_str.c''' +s4_util_deps = 'DYNCONFIG' +s4_util_public_deps = 'talloc CHARSET execinfo uid_wrapper' +s4_util_public_headers = 'attr.h byteorder.h data_blob.h memory.h safe_string.h time.h talloc_stack.h xfile.h dlinklist.h util.h' +s4_util_header_path = [ ('dlinklist.h util.h', '.'), ('*', 'util') ] + +if bld.env.enable_s3build or bld.env._SAMBA_BUILD_ == 3: + # as we move files into common between samba-util and samba-util3, move them here. + # Both samba-util and samba-util3 depend on this private library + bld.SAMBA_LIBRARY('samba-util-common', + source=common_util_sources, + public_deps=common_util_public_deps, + # until we get all the dependencies in this library in common + # we need to allow this library to be built with unresolved symbols + allow_undefined_symbols=True, + local_include=False, + public_headers=common_util_headers, + header_path= [('*', 'util') ], + private_library=True + ) + + if bld.env._SAMBA_BUILD_ == 4: + bld.SAMBA_LIBRARY('samba-util', + source=s4_util_sources, + deps=s4_util_deps + ' samba-util-common', + public_deps=s4_util_public_deps, + public_headers=s4_util_public_headers, + header_path= s4_util_header_path, + local_include=False, + vnum='0.0.1', + pc_files='samba-util.pc' + ) + +else: + if bld.env._SAMBA_BUILD_ == 4: + bld.SAMBA_LIBRARY('samba-util', + source=s4_util_sources + " " + common_util_sources, + deps=s4_util_deps, + public_deps=s4_util_public_deps + ' ' + common_util_public_deps, + public_headers=s4_util_public_headers + ' ' + common_util_headers, + header_path= s4_util_header_path, + local_include=False, + vnum='0.0.1', + pc_files='samba-util.pc' + ) + + # dummy subsystem for avoid wider deps changes. + bld.SAMBA_SUBSYSTEM('samba-util-common', + source=[], + deps='samba-util', + local_include=False,) bld.SAMBA_LIBRARY('asn1util', source='asn1.c', -- 2.34.1