shithub: dav1d

Download patch

ref: a7b92c762db7dd2d7dd5b411be29b703311fdfb5
parent: 9ad9b326f566a2b004ba8741c1a7dab1d93eb71a
author: Marvin Scholz <epirat07@gmail.com>
date: Mon Jun 29 12:18:07 EDT 2020

meson: Workaround missing aarch64 normalisation

Meson does not yet normalises arm64 to the aarch64 in the reference
table. To workaround this, in addition to the cpu_family check the cpu
field.

--- a/meson.build
+++ b/meson.build
@@ -313,8 +313,8 @@
     cdata.set('STACK_ALIGNMENT', stack_alignment)
 endif
 
-cdata.set10('ARCH_AARCH64', host_machine.cpu_family() == 'aarch64')
-cdata.set10('ARCH_ARM',     host_machine.cpu_family().startswith('arm'))
+cdata.set10('ARCH_AARCH64', host_machine.cpu_family() == 'aarch64' or host_machine.cpu() == 'arm64')
+cdata.set10('ARCH_ARM',     host_machine.cpu_family().startswith('arm') and host_machine.cpu() != 'arm64')
 if (is_asm_enabled and
     (host_machine.cpu_family() == 'aarch64' or
      host_machine.cpu_family().startswith('arm')))
--- a/src/meson.build
+++ b/src/meson.build
@@ -100,7 +100,8 @@
             'arm/looprestoration_init_tmpl.c',
             'arm/mc_init_tmpl.c',
         )
-        if host_machine.cpu_family() == 'aarch64'
+        if (host_machine.cpu_family() == 'aarch64' or
+            host_machine.cpu() == 'arm64')
             libdav1d_sources += files(
                 # itx.S is used for both 8 and 16 bpc.
                 'arm/64/itx.S',
--- a/tests/meson.build
+++ b/tests/meson.build
@@ -63,7 +63,7 @@
     endforeach
 
     checkasm_nasm_objs = []
-    if host_machine.cpu_family() == 'aarch64'
+    if host_machine.cpu_family() == 'aarch64' or host_machine.cpu() == 'arm64'
         checkasm_sources += files('checkasm/arm/checkasm_64.S')
     elif host_machine.cpu_family().startswith('arm')
         checkasm_sources += files('checkasm/arm/checkasm_32.S')