pan/va: Integrate the tests into meson test
authorAlyssa Rosenzweig <alyssa@collabora.com>
Fri, 16 Jul 2021 15:48:46 +0000 (11:48 -0400)
committerMarge Bot <eric+marge@anholt.net>
Tue, 27 Jul 2021 20:20:32 +0000 (20:20 +0000)
This way we will get testing in CI. Invoke as

   meson test --suite=panfrost

Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12025>

src/panfrost/bifrost/meson.build
src/panfrost/bifrost/valhall/meson.build [new file with mode: 0644]

index 8cc0d6a..a829eef 100644 (file)
@@ -19,6 +19,8 @@
 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 # SOFTWARE.
 
+subdir('valhall')
+
 libpanfrost_bifrost_files = files(
   'bi_helper_invocations.c',
   'bi_layout.c',
diff --git a/src/panfrost/bifrost/valhall/meson.build b/src/panfrost/bifrost/valhall/meson.build
new file mode 100644 (file)
index 0000000..ef8ea8c
--- /dev/null
@@ -0,0 +1,61 @@
+# Copyright (C) 2020-2021 Collabora
+# Copyright (C) 2018 Rob Clark
+
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to deal
+# in the Software without restriction, including without limitation the rights
+# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+# copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+# SOFTWARE.
+
+valhall_disasm_c = custom_target(
+  'valhall_disasm_c',
+  input : ['disasm.py', 'ISA.xml'],
+  output : 'valhall_disasm.c',
+  command : [prog_python, '@INPUT@'],
+  capture : true,
+  depend_files : files('valhall.py'),
+)
+
+libpanfrost_valhall_disasm = static_library(
+  'panfrost_valhall_disasm',
+  valhall_disasm_c,
+  include_directories : [inc_include, inc_src, inc_mesa],
+  c_args : [no_override_init_args],
+  gnu_symbol_visibility : 'hidden',
+  build_by_default : false,
+)
+
+if with_tests
+  test(
+    'valhall_disasm',
+    executable(
+      'valhall_disasm_test',
+      files('test/test-disassembler.c'),
+      c_args : [c_msvc_compat_args, no_override_init_args],
+      gnu_symbol_visibility : 'hidden',
+      include_directories : [inc_include, inc_src, inc_mesa],
+      link_with : [libpanfrost_valhall_disasm],
+    ),
+    suite : ['panfrost'],
+    args : files('test/assembler-cases.txt'),
+  )
+
+  test(
+    'valhall_asm',
+    prog_python,
+    args : files('test-assembly.py', 'test/assembler-cases.txt', 'test/negative-cases.txt'),
+    suite : ['panfrost'],
+  )
+endif