third_party:build: Test for the flags, recognized by Clang.
authorTimur I. Bakeyev <timur@iXsystems.com>
Sun, 8 Jul 2018 16:45:59 +0000 (18:45 +0200)
committerAndrew Bartlett <abartlet@samba.org>
Wed, 15 Aug 2018 05:08:25 +0000 (07:08 +0200)
Make amd64 SYSTEM_UNAME_MACHINE an alias for x86_64.

Signed-off-by: Timur I. Bakeyev <timur@iXsystems.com>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
third_party/aesni-intel/wscript

index f0723a525011079132f0f716cd9fcbfd49f93c49..8f2260b95600622cd4609877e599817ba82d37c6 100644 (file)
@@ -4,14 +4,19 @@ import Utils
 
 def configure(conf):
     if Options.options.accel_aes.lower() == "intelaesni":
-        if conf.CHECK_CFLAGS('-Wp,-E,-lang-asm', ''):
-            if conf.env['SYSTEM_UNAME_MACHINE'] == 'x86_64':
+        asm_flags = ('-Wp,-E,-lang-asm', '-xassembler-with-cpp')
+        for f in asm_flags:
+            if conf.CHECK_CFLAGS(f, ''):
+                conf.DEFINE('AESNI_INTEL_CFLAGS', f)
+                break
+        if conf.CONFIG_SET('AESNI_INTEL_CFLAGS'):
+            if conf.env['SYSTEM_UNAME_MACHINE'] in ('x86_64', 'amd64'):
                 print("Compiling with Intel AES instructions")
                 conf.DEFINE('HAVE_AESNI_INTEL', 1)
             else:
                 raise Utils.WafError('--accel-aes=intelaesni selected and non x86_64 CPU')
         else:
-            raise Utils.WafError('--accel-aes=intelaesni selected and compiler rejects -Wp,-E,-lang-asm')
+            raise Utils.WafError('--aes-accel=intelaesni selected and compiler rejects ' + str(asm_flags))
         if not conf.CHECK_LDFLAGS('-Wl,-z,noexecstack'):
             raise Utils.WafError('--accel-aes=intelaesni selected and linker rejects -z noexecstack')
 
@@ -21,6 +26,6 @@ def build(bld):
 
     bld.SAMBA_LIBRARY('aesni-intel',
         source='aesni-intel_asm.c',
-        cflags='-Wp,-E,-lang-asm',
+        cflags=bld.CONFIG_GET('AESNI_INTEL_CFLAGS'),
         ldflags='-Wl,-z,noexecstack',
         private_library=True)