third_party/zlib: Initial support for zlib
authorIra Cooper <ira@samba.org>
Wed, 23 Jul 2014 04:27:13 +0000 (21:27 -0700)
committerIra Cooper <ira@samba.org>
Sat, 9 Aug 2014 16:26:16 +0000 (18:26 +0200)
Signed-off-by: Ira Cooper <ira@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
buildtools/wafsamba/samba_third_party.py
third_party/zlib/wscript
wscript
wscript_build

index 2c50ad4..b62bcc8 100644 (file)
@@ -13,3 +13,23 @@ Build.BuildContext.CHECK_FOR_THIRD_PARTY = CHECK_FOR_THIRD_PARTY
 @conf
 def CHECK_INIPARSER(conf):
     return conf.CHECK_BUNDLED_SYSTEM('iniparser', checkfunctions='iniparser_load', headers='iniparser.h')
+
+Build.BuildContext.CHECK_INIPARSER = CHECK_INIPARSER
+
+@conf
+def CHECK_ZLIB(conf):
+    version_check='''
+    #if (ZLIB_VERNUM >= 0x1230)
+    #else
+    #error "ZLIB_VERNUM < 0x1230"
+    #endif
+    z_stream *z;
+    inflateInit2(z, -15);
+    '''
+    return conf.CHECK_BUNDLED_SYSTEM('z', minversion='1.2.3', pkg='zlib',
+                                     checkfunctions='zlibVersion',
+                                     headers='zlib.h',
+                                     checkcode=version_check,
+                                     implied_deps='replace')
+
+Build.BuildContext.CHECK_ZLIB = CHECK_ZLIB
index 9965fe2..b221288 100644 (file)
@@ -1,20 +1,7 @@
 #!/usr/bin/env python
 
 def configure(conf):
-    version_check='''
-        #if (ZLIB_VERNUM >= 0x1230)
-        #else
-        #error "ZLIB_VERNUM < 0x1230"
-        #endif
-        z_stream *z;
-        inflateInit2(z, -15);
-        '''
-
-    if conf.CHECK_BUNDLED_SYSTEM('z', minversion='1.2.3', pkg='zlib',
-                                 checkfunctions='zlibVersion',
-                                 headers='zlib.h',
-                                 checkcode=version_check,
-                                 implied_deps='replace'):
+    if conf.CHECK_ZLIB():
         conf.define('USING_SYSTEM_ZLIB', 1)
 
 def build(bld):
diff --git a/wscript b/wscript
index 92e060f..377ab66 100644 (file)
--- a/wscript
+++ b/wscript
@@ -123,12 +123,18 @@ def configure(conf):
 
     if conf.CHECK_FOR_THIRD_PARTY():
         conf.RECURSE('third_party/iniparser/src')
+        conf.RECURSE('third_party/zlib')
     else:
         if not conf.CHECK_INIPARSER():
             raise Utils.WafError('iniparser development packages have not been found.\nIf third_party is installed, check that it is in the proper place.')
         else:
             conf.define('USING_SYSTEM_INIPARSER', 1)
 
+        if not conf.CHECK_ZLIB():
+            raise Utils.WafError('zlib development packages have not been found.\nIf third_party is installed, check that it is in the proper place.')
+        else:
+            conf.define('USING_SYSTEM_ZLIB',1);
+
     conf.RECURSE('lib/ldb')
 
     if Options.options.with_system_mitkrb5:
@@ -147,7 +153,6 @@ def configure(conf):
     conf.RECURSE('lib/util')
     conf.RECURSE('lib/ccan')
     conf.RECURSE('lib/ntdb')
-    conf.RECURSE('lib/zlib')
     conf.RECURSE('lib/util/charset')
     conf.RECURSE('source4/auth')
     conf.RECURSE('lib/nss_wrapper')
index c2956ea..328038f 100644 (file)
@@ -73,6 +73,7 @@ bld.RECURSE('lib/nss_wrapper')
 bld.RECURSE('lib/uid_wrapper')
 if bld.CHECK_FOR_THIRD_PARTY():
     bld.RECURSE('third_party/iniparser/src')
+    bld.RECURSE('third_party/zlib')
 bld.RECURSE('lib/popt')
 bld.RECURSE('source4/lib/stream')
 bld.RECURSE('lib/afs')
@@ -82,7 +83,6 @@ bld.RECURSE('lib/tdr')
 bld.RECURSE('lib/tsocket')
 bld.RECURSE('lib/crypto')
 bld.RECURSE('lib/torture')
-bld.RECURSE('lib/zlib')
 bld.RECURSE('source4/lib/com')
 bld.RECURSE('source4/dns_server')
 bld.RECURSE('source4/echo_server')