Mesa (master): freedreno/registers: install gzip'd register database

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Mon Aug 3 20:04:24 UTC 2020


Module: Mesa
Branch: master
Commit: 9c33c5389818bc5035eb4538ea5d3fc1321dd27e
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=9c33c5389818bc5035eb4538ea5d3fc1321dd27e

Author: Rob Clark <robdclark at chromium.org>
Date:   Sun Aug  2 11:55:43 2020 -0700

freedreno/registers: install gzip'd register database

The decode tools aren't too useful to install without the xml.  But
since libxml2 can read compressed xml, we'll gzip them for installation.

Signed-off-by: Rob Clark <robdclark at chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6154>

---

 src/freedreno/decode/meson.build           |  4 ++--
 src/freedreno/meson.build                  |  8 ++++++--
 src/freedreno/registers/adreno/meson.build | 11 +++++++++++
 src/freedreno/registers/meson.build        | 13 +++++++++++++
 4 files changed, 32 insertions(+), 4 deletions(-)

diff --git a/src/freedreno/decode/meson.build b/src/freedreno/decode/meson.build
index 4314c9f6c7c..9435fc8c04c 100644
--- a/src/freedreno/decode/meson.build
+++ b/src/freedreno/decode/meson.build
@@ -100,7 +100,7 @@ if dep_lua.found() and dep_libarchive.found()
       libfreedreno_io,
     ],
     build_by_default: with_tools.contains('freedreno'),
-    install : with_tools.contains('freedreno'),
+    install: install_fd_decode_tools,
   )
 endif
 
@@ -119,7 +119,7 @@ crashdec = executable(
     libfreedreno_cffdec,
   ],
   build_by_default: with_tools.contains('freedreno'),
-  install : with_tools.contains('freedreno'),
+  install: install_fd_decode_tools,
 )
 
 if dep_libarchive.found()
diff --git a/src/freedreno/meson.build b/src/freedreno/meson.build
index e039ab9c9a6..6ecf2e196aa 100644
--- a/src/freedreno/meson.build
+++ b/src/freedreno/meson.build
@@ -25,6 +25,12 @@ rnn_src_path = meson.source_root() + '/src/freedreno/registers'
 rnn_install_path = get_option('datadir') + '/freedreno/registers'
 rnn_path = rnn_src_path + ':' + get_option('prefix') + '/' + rnn_install_path
 
+dep_libxml2 = dependency('libxml-2.0', required: false)
+prog_gzip = find_program('gzip', required: false)
+
+install_fd_decode_tools = dep_libxml2.found() and prog_gzip.found() and \
+  with_tools.contains('freedreno')
+
 subdir('common')
 subdir('registers')
 subdir('drm')
@@ -34,8 +40,6 @@ subdir('fdl')
 subdir('perfcntrs')
 subdir('computerator')
 
-dep_libxml2 = dependency('libxml-2.0', required: false)
-
 # Everything that depends on rnn requires (indirectly) libxml2:
 if dep_libxml2.found()
   subdir('rnn')
diff --git a/src/freedreno/registers/adreno/meson.build b/src/freedreno/registers/adreno/meson.build
index eb9c0730df4..f43e55d5656 100644
--- a/src/freedreno/registers/adreno/meson.build
+++ b/src/freedreno/registers/adreno/meson.build
@@ -37,6 +37,17 @@ foreach f : xml_files
     command: [prog_python, '@INPUT0@', rnn_src_path, '@INPUT1@'],
     capture: true,
   )
+  _gzname = f + '.gz'
+  custom_target(
+    _gzname,
+    input: f,
+    output: _gzname,
+    command: [prog_gzip, '-kc', '@INPUT@'],
+    capture: true,
+    install_dir: rnn_install_path + '/adreno',
+    install: install_fd_decode_tools,
+    build_by_default: install_fd_decode_tools,
+  )
 endforeach
 
 freedreno_xml_header_files += custom_target(
diff --git a/src/freedreno/registers/meson.build b/src/freedreno/registers/meson.build
index a0f2b351f88..3f5a1d122ba 100644
--- a/src/freedreno/registers/meson.build
+++ b/src/freedreno/registers/meson.build
@@ -20,6 +20,8 @@
 
 xml_files = [
   'adreno.xml',
+  'freedreno_copyright.xml',
+  'rules-ng.xsd',
 ]
 
 gen_header_py = files('gen_header.py')
@@ -35,6 +37,17 @@ foreach f : xml_files
     command: [prog_python, '@INPUT0@', rnn_src_path, '@INPUT1@'],
     capture: true,
   )
+  _gzname = f + '.gz'
+  custom_target(
+    _gzname,
+    input: f,
+    output: _gzname,
+    command: [prog_gzip, '-kc', '@INPUT@'],
+    capture: true,
+    install_dir: rnn_install_path,
+    install: install_fd_decode_tools,
+    build_by_default: install_fd_decode_tools,
+  )
 endforeach
 
 subdir('adreno')



More information about the mesa-commit mailing list