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.

Signed-off-by: Dylan Baker <dylanx.c.ba...@intel.com>
---
 src/compiler/nir/meson.build             | 4 ++--
 src/gtest/meson.build                    | 6 ++++++
 src/intel/compiler/meson.build           | 6 +++---
 src/util/tests/string_buffer/meson.build | 4 ++--
 4 files changed, 13 insertions(+), 7 deletions(-)

diff --git a/src/compiler/nir/meson.build b/src/compiler/nir/meson.build
index c260dca5467..8a85d119530 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 b51504d400a..9832af93e25 100644
--- a/src/gtest/meson.build
+++ b/src/gtest/meson.build
@@ -24,3 +24,9 @@ libgtest = static_library(
   include_directories : include_directories('include'),
   build_by_default : false,
 )
+
+idep_gtest = declare_dependency(
+  link_with : libgtest,
+  include_directories : include_directories('include'),
+  compile_args : ['-Wno-sign-compare'],
+)
diff --git a/src/intel/compiler/meson.build b/src/intel/compiler/meson.build
index e12fa22cf1b..41c2f6ef1db 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_@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 ea9b8a07dce..14dbebca7d8 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)
-- 
2.14.1

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to