Mesa (master): meson: convert gtest to an internal dependency

Dylan Baker dbaker at kemper.freedesktop.org
Tue Oct 3 17:03:43 UTC 2017


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

Author: Dylan Baker <dylan at pnwbakers.com>
Date:   Sat Sep 30 20:48:32 2017 -0700

meson: convert gtest to an internal dependency

In truth gtest is an external dependency that upstream expects you to
"vendor" into your own tree. As such, it makes sense to treat it more
like a dependency than an internal library, and collect it's
requirements together in a dependency object.

v2: - include with -isystem instead of setting compiler args (Eric)

Signed-off-by: Dylan Baker <dylanx.c.baker at intel.com>
Reviewed-by: Eric Anholt <eric at anholt.net>

---

 src/compiler/nir/meson.build             | 4 ++--
 src/gtest/meson.build                    | 5 +++++
 src/intel/compiler/meson.build           | 6 +++---
 src/util/tests/string_buffer/meson.build | 4 ++--
 4 files changed, 12 insertions(+), 7 deletions(-)

diff --git a/src/compiler/nir/meson.build b/src/compiler/nir/meson.build
index c260dca546..8a85d11953 100644
--- a/src/compiler/nir/meson.build
+++ b/src/compiler/nir/meson.build
@@ -197,8 +197,8 @@ if with_tests
     [files('tests/control_flow_tests.cpp'), nir_opcodes_h],
     c_args : [c_vis_args, c_msvc_compat_args, no_override_init_args],
     include_directories : [inc_common],
-    dependencies : [dep_thread],
-    link_with : [libmesa_util, libnir, libgtest],
+    dependencies : [dep_thread, idep_gtest],
+    link_with : [libmesa_util, libnir],
   )
 
   test('nir_control_flow', nir_control_flow_test)
diff --git a/src/gtest/meson.build b/src/gtest/meson.build
index b51504d400..91a4924041 100644
--- a/src/gtest/meson.build
+++ b/src/gtest/meson.build
@@ -24,3 +24,8 @@ libgtest = static_library(
   include_directories : include_directories('include'),
   build_by_default : false,
 )
+
+idep_gtest = declare_dependency(
+  link_with : libgtest,
+  include_directories : include_directories('include', is_system : true),
+)
diff --git a/src/intel/compiler/meson.build b/src/intel/compiler/meson.build
index e12fa22cf1..41c2f6ef1d 100644
--- a/src/intel/compiler/meson.build
+++ b/src/intel/compiler/meson.build
@@ -146,9 +146,9 @@ if with_tests
       [t, nir_opcodes_h, ir_expression_operation_h],
       'test_ at 0@.cpp'.format(t),
       include_directories : [inc_common, inc_intel],
-      link_with : [libgtest, libintel_compiler, libintel_common, libnir,
-                   libmesa_util, libisl],
-      dependencies : [dep_thread, dep_dl],
+      link_with : [libintel_compiler, libintel_common, libnir, libmesa_util,
+                   libisl],
+      dependencies : [dep_thread, dep_dl, idep_gtest],
     )
     test(t, _exe)
   endforeach
diff --git a/src/util/tests/string_buffer/meson.build b/src/util/tests/string_buffer/meson.build
index ea9b8a07dc..14dbebca7d 100644
--- a/src/util/tests/string_buffer/meson.build
+++ b/src/util/tests/string_buffer/meson.build
@@ -21,9 +21,9 @@
 string_buffer_test = executable(
   'string_buffer_test',
   'string_buffer_test.cpp',
-  dependencies : [dep_thread, dep_dl],
+  dependencies : [dep_thread, dep_dl, idep_gtest],
   include_directories : inc_common,
-  link_with : [libmesa_util, libgtest],
+  link_with : [libmesa_util],
 )
 
 test('string_buffer', string_buffer_test)




More information about the mesa-commit mailing list