summaryrefslogtreecommitdiff
path: root/pidl
diff options
context:
space:
mode:
authorAndreas Schneider <asn@samba.org>2014-02-28 15:59:41 +0100
committerKarolin Seeger <kseeger@samba.org>2014-04-01 09:26:39 +0200
commit7d66a2c7d92296b05c5c120b15d556377acc9ff9 (patch)
tree3d0c6db09a3f5b28eea10855c6242608aa830a81 /pidl
parentfadd326938779b731937de5776e34ab0a460f619 (diff)
downloadsamba-7d66a2c7d92296b05c5c120b15d556377acc9ff9.tar.gz
pidl-waf: Add a function to check for a system perl module.
Signed-off-by: Andreas Schneider <asn@samba.org> Reviewed-by: Stefan Metzmacher <metze@samba.org>
Diffstat (limited to 'pidl')
-rw-r--r--pidl/wscript22
1 files changed, 22 insertions, 0 deletions
diff --git a/pidl/wscript b/pidl/wscript
index 77abb019de9..236439153ec 100644
--- a/pidl/wscript
+++ b/pidl/wscript
@@ -3,6 +3,28 @@
import os, sys, Logs
from samba_utils import MODE_755
+# This function checks if a perl module is installed on the system.
+def check_system_perl_module(conf, module, version=None):
+ bundle_name = module.replace('::', '_')
+ module_check = module
+ found = False
+
+ # Create module string with version
+ if version:
+ module_check = module + ' ' + str(version)
+
+ # Check if we have to bundle it.
+ if conf.LIB_MUST_BE_BUNDLED(bundle_name.lower()):
+ return False
+
+ # Check for system perl module
+ if not conf.check_perl_module(module_check):
+ return False
+
+ conf.define('USING_SYSTEM_%s' % bundle_name.upper(), 1)
+
+ return True
+
def set_options(opt):
opt.tool_options('perl')