s3-waf: avoid exporting init symbols from statically linked modules
[gd/samba-autobuild/.git] / source3 / wscript_build
index 2fc65550c9579af77675e563980189cad58f7fa8..ca08ed8c42e94eb3d585c704289ae78719b5bd1b 100755 (executable)
@@ -349,7 +349,7 @@ SMBD_SRC_SRV = '''smbd/server_reload.c smbd/files.c smbd/connection.c
                smbd/process.c smbd/service.c smbd/error.c
                printing/printspoolss.c printing/spoolssd.c
                lib/sysquotas.c lib/sysquotas_linux.c
-               lib/sysquotas_xfs.c lib/sysquotas_4A.c
+               lib/sysquotas_xfs.c lib/sysquotas_4A.c lib/sysquotas_4B.c
                lib/sysquotas_nfs.c
                lib/background.c
                smbd/fake_file.c
@@ -422,8 +422,6 @@ SWAT_SRC = '''${SWAT_SRC1}'''
 
 STATUS_SRC = '''utils/status.c utils/status_profile.c smbd/notify_internal.c'''
 
-CCLEAN_SRC = '''utils/cclean.c utils/interact.c'''
-
 SMBCONTROL_SRC = '''utils/smbcontrol.c'''
 
 SMBTREE_SRC = '''utils/smbtree.c'''
@@ -515,7 +513,7 @@ NET_SRC1 = '''utils/net.c utils/net_ads.c utils/net_help.c
               utils/net_util.c utils/net_rpc_sh_acct.c utils/net_rpc_audit.c
               utils/net_dns.c utils/net_ads_gpo.c
               utils/net_conf.c utils/net_join.c utils/net_user.c
-              utils/net_group.c utils/net_file.c utils/net_registry.c
+              utils/net_group.c utils/net_file.c utils/net_registry.c utils/net_connections.c
               utils/net_registry_check.c
               utils/net_dom.c utils/net_share.c
               utils/net_g_lock.c
@@ -694,14 +692,30 @@ bld.SAMBA3_SUBSYSTEM('TLDAP',
                     source=TLDAP_SRC,
                     deps='asn1util LIBTSOCKET')
 
+static_pdb_modules = ['tdbsam', 'ldap', 'smbpasswd', 'wbc_sam']
+static_pdb_match = filter(lambda x: bld.SAMBA3_IS_STATIC_MODULE('pdb_%s' % x), static_pdb_modules)
+private_pdb_match = []
+if bld.SAMBA3_IS_STATIC_MODULE('pdb_samba_dsdb') and bld.AD_DC_BUILD_IS_ENABLED():
+    static_pdb_match.append('samba_dsdb')
+    private_pdb_match.append('!idmap_init')
+    private_pdb_match.append('!idmap_sids_to_xids')
+    private_pdb_match.append('!idmap_xids_to_sids')
+
+private_pdb_match = private_pdb_match + map(lambda x: '!pdb_%s_init' % x, static_pdb_match)
+
 bld.SAMBA3_LIBRARY('pdb',
                    source=PASSDB_SRC,
                    deps='secrets3 GROUPDB SERVER_MUTEX wbclient LIBCLI_AUTH flag_mapping',
-                   private_library=True,
+                   private_library=False,
+                   pc_files=[],
+                   public_headers_install=True,
                    public_headers='''
                                include/passdb.h
                                passdb/machine_sid.h
                                passdb/lookup_sid.h''',
+                   abi_match=private_pdb_match + ['*'],
+                   abi_directory='passdb/ABI',
+                   vnum='0',
                    vars=locals())
 
 bld.SAMBA3_SUBSYSTEM('SERVER_MUTEX',
@@ -1320,16 +1334,6 @@ bld.SAMBA3_BINARY('smbstatus',
                  PROFILE''',
                  vars=locals())
 
-bld.SAMBA3_BINARY('cclean',
-                 source=CCLEAN_SRC,
-                 deps='''
-                 talloc
-                 param
-                 popt_samba3
-                 LOCKING
-                 PROFILE''',
-                 vars=locals())
-
 bld.SAMBA3_BINARY('smbcontrol',
                  source=SMBCONTROL_SRC,
                  deps='''
@@ -1592,6 +1596,12 @@ bld.SAMBA3_PYTHON('pysmbd',
                   realname='samba/samba3/smbd.so'
                   )
 
+bld.SAMBA3_PYTHON('pylibsmb',
+                  source='libsmb/pylibsmb.c',
+                  deps='smbclient samba-credentials',
+                  realname='samba/samba3/libsmb_samba_internal.so'
+                  )
+
 swat_dir = os.path.join(bld.curdir, '../swat')
 swat_files = recursive_dirlist(swat_dir, swat_dir, '*')
 bld.INSTALL_FILES('${SWATDIR}', swat_files, base_name='../swat')