build: Remove bld.gen_python_environments()
[samba.git] / lib / crypto / wscript_build
index 1b6a03d32e4fb73249baaca8e06651bf33d406ba..6841f99d5682f4dbb0095a3847b1cd98d00d2d9d 100644 (file)
@@ -1,14 +1,36 @@
 #!/usr/bin/env python
 
 #!/usr/bin/env python
 
-bld.SAMBA_SUBSYSTEM('LIBCRYPTO',
-       source='crc32.c md5.c hmacmd5.c md4.c arcfour.c sha256.c hmacsha256.c aes.c rijndael-alg-fst.c',
-        deps='talloc'
-       )
+extra_source = ''
+extra_deps = ''
+if bld.CONFIG_SET('HAVE_BSD_MD5_H'):
+       extra_deps += ' bsd'
+elif bld.CONFIG_SET('HAVE_SYS_MD5_H') and bld.CONFIG_SET('HAVE_LIBMD5'):
+       extra_deps += ' md5'
+elif bld.CONFIG_SET('HAVE_SYS_MD5_H') and bld.CONFIG_SET('HAVE_LIBMD'):
+       extra_deps += ' md'
+elif not bld.CONFIG_SET('HAVE_SYS_MD5_H') and not bld.CONFIG_SET('HAVE_COMMONCRYPTO_COMMONDIGEST_H'):
+       extra_source += ' md5.c'
+
+if bld.CONFIG_SET("HAVE_AESNI_INTEL"):
+        extra_deps += ' aesni-intel'
 
 
+bld.SAMBA_SUBSYSTEM('LIBCRYPTO',
+        source='''hmacmd5.c md4.c arcfour.c sha256.c sha512.c hmacsha256.c
+        aes.c rijndael-alg-fst.c aes_cmac_128.c aes_ccm_128.c aes_gcm_128.c
+        ''' + extra_source,
+        deps='talloc' + extra_deps
+        )
 
 bld.SAMBA_SUBSYSTEM('TORTURE_LIBCRYPTO',
 
 bld.SAMBA_SUBSYSTEM('TORTURE_LIBCRYPTO',
-       source='md4test.c md5test.c hmacmd5test.c',
-       autoproto='test_proto.h',
-       deps='LIBCRYPTO'
-       )
+        source='''md4test.c md5test.c hmacmd5test.c
+            aes_cmac_128_test.c aes_ccm_128_test.c aes_gcm_128_test.c
+        ''',
+        autoproto='test_proto.h',
+        deps='LIBCRYPTO'
+        )
 
 
+bld.SAMBA_PYTHON('python_crypto',
+                source='py_crypto.c',
+                deps='LIBCRYPTO',
+                realname='samba/crypto.so'
+               )