s3-waf: add some module specific functions for s3 waf build.
authorGünther Deschner <gd@samba.org>
Sun, 26 Sep 2010 08:44:27 +0000 (10:44 +0200)
committerGünther Deschner <gd@samba.org>
Sun, 26 Sep 2010 22:39:37 +0000 (00:39 +0200)
Thanks to Kai.

Guenther

buildtools/wafsamba/samba3.py
source3/wscript

index 5fa4c0fa74c675f5548b040602f69f3f718a54d9..9abb2abbec6445e61f777556a7d8acc06bedf2ed 100644 (file)
@@ -2,6 +2,7 @@
 # and for SAMBA_ macros for building libraries, binaries etc
 
 import Options
+import Build
 from optparse import SUPPRESS_HELP
 
 def SAMBA3_ADD_OPTION(opt, option, help=(), dest=None, default=True,
@@ -21,3 +22,22 @@ def SAMBA3_ADD_OPTION(opt, option, help=(), dest=None, default=True,
     opt.add_option(without_val, help=SUPPRESS_HELP, action="store_false",
                    dest=dest)
 Options.Handler.SAMBA3_ADD_OPTION = SAMBA3_ADD_OPTION
+
+def SAMBA3_IS_STATIC_MODULE(bld, module):
+    '''Check whether module is in static list'''
+    if module.lower() in bld.env['static_modules']:
+        return True
+    return False
+Build.BuildContext.SAMBA3_IS_STATIC_MODULE = SAMBA3_IS_STATIC_MODULE
+
+def SAMBA3_IS_SHARED_MODULE(bld, module):
+    '''Check whether module is in shared list'''
+    if module.lower() in bld.env['shared_modules']:
+        return True
+    return False
+Build.BuildContext.SAMBA3_IS_SHARED_MODULE = SAMBA3_IS_SHARED_MODULE
+
+def SAMBA3_IS_ENABLED_MODULE(bld, module):
+    '''Check whether module is in either shared or static list '''
+    return SAMBA3_IS_STATIC_MODULE(bld, module) or SAMBA3_IS_SHARED_MODULE(bld, module)
+Build.BuildContext.SAMBA3_IS_ENABLED_MODULE = SAMBA3_IS_ENABLED_MODULE
index 5bb8f69640c19206a056f20e683ab216aa4ded2a..fc91858351e1cef2fccddea8d635c6f8e849799b 100644 (file)
@@ -295,6 +295,9 @@ utimensat vsyslog _write __write __xstat
             default_static_modules.remove(m)
             default_shared_modules.append(m)
 
+    conf.env['static_modules'] = default_static_modules
+    conf.env['shared_modules'] = default_shared_modules
+
     conf.DEFINE('STRING_STATIC_MODULES', ' '.join(default_static_modules), quote=True)
 
     static_list = {}