From: Andrei Pavel Date: Fri, 25 Apr 2025 10:01:40 +0000 (+0300) Subject: [#3732] Meson: Make gtest simple dependency + fallback X-Git-Tag: Kea-2.7.8~13 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a3f69d74306daefa765d401699b63bc52f09e394;p=thirdparty%2Fkea.git [#3732] Meson: Make gtest simple dependency + fallback The gtest.cc compiler check misleadingly fails on some systems... --- diff --git a/compiler-checks/gtest.cc b/compiler-checks/gtest.cc deleted file mode 100644 index 1881afe344..0000000000 --- a/compiler-checks/gtest.cc +++ /dev/null @@ -1,12 +0,0 @@ -#include - -// musl's mallocng memory allocator stupidly crash for test names that are -// lengthier than 16 characters. Hence the long test name. -TEST(Fixture, testWithLongLongLongName) { - EXPECT_LT(1, 2); -} - -int main(int argc, char* argv[]) { - testing::InitGoogleTest(&argc, argv); - return RUN_ALL_TESTS(); -} diff --git a/meson.build b/meson.build index 436f46d4a1..4117549456 100644 --- a/meson.build +++ b/meson.build @@ -249,33 +249,11 @@ if netconf_opt.enabled() and NETCONF_DEP.get_variable( endif # Google Test -GTEST_DEP = disabler() -if FUZZ_OPT.enabled() or TESTS_OPT.enabled() - GTEST_DEP = dependency('gtest', required: false) - if GTEST_DEP.found() - # Wrap dependencies cannot be used in compiler checks: https://github.com/mesonbuild/meson/issues/11575 - # Should never be a wrap dependency at this point, but somehow it happens on Alpine systems. - if GTEST_DEP.type_name() != 'internal' - result = cpp.run( - fs.read('compiler-checks/gtest.cc'), - name: 'Check if a simple GTest test runs.', - dependencies: [GTEST_DEP, threads_dep], - ) - if result.returncode() != 0 - GTEST_DEP = disabler() - endif - endif - endif - if not GTEST_DEP.found() - gtest_subproject = subproject('gtest', required: false) - if gtest_subproject.found() - GTEST_DEP = gtest_subproject.get_variable('gtest_dep') - endif - endif - if not GTEST_DEP.found() - error('Dependency not found: GTest.') - endif -endif +GTEST_DEP = dependency( + 'gtest', + fallback: ['gtest', 'gtest_dep'], + required: FUZZ_OPT.enabled() or TESTS_OPT.enabled(), +) # Crypto if crypto_opt == 'botan'