summaryrefslogtreecommitdiff
path: root/test cases/linuxlike
diff options
context:
space:
mode:
authorDaniel Mensinger <daniel@mensinger-ka.de>2021-09-04 13:40:09 +0200
committerDaniel Mensinger <daniel@mensinger-ka.de>2021-10-06 16:43:59 +0200
commit29c2b44a29cea47696b4026673874260ac547ab7 (patch)
treeb8adde2db217019a8f6a28eddde47f96b12a008b /test cases/linuxlike
parentf1614a60715ae23b801722d5104464bc594cb281 (diff)
downloadmeson-29c2b44a29cea47696b4026673874260ac547ab7.tar.gz
cmake: Implement support for interpreting link "keywords"
CMakes `target_link_libraries()` supports certain keywords to only enable specific libraries for specific CMake configurations. We now try our best to replicate this for Meson dependencies. Fixes #9197
Diffstat (limited to 'test cases/linuxlike')
-rw-r--r--test cases/linuxlike/13 cmake dependency/cmake_fake1/cmMesonTestF1Config.cmake2
-rw-r--r--test cases/linuxlike/13 cmake dependency/meson.build4
2 files changed, 5 insertions, 1 deletions
diff --git a/test cases/linuxlike/13 cmake dependency/cmake_fake1/cmMesonTestF1Config.cmake b/test cases/linuxlike/13 cmake dependency/cmake_fake1/cmMesonTestF1Config.cmake
index 938c7061b..4b3f81479 100644
--- a/test cases/linuxlike/13 cmake dependency/cmake_fake1/cmMesonTestF1Config.cmake
+++ b/test cases/linuxlike/13 cmake dependency/cmake_fake1/cmMesonTestF1Config.cmake
@@ -2,7 +2,7 @@ find_package(ZLIB)
if(ZLIB_FOUND OR ZLIB_Found)
set(cmMesonTestF1_FOUND ON)
- set(cmMesonTestF1_LIBRARIES ${ZLIB_LIBRARY})
+ set(cmMesonTestF1_LIBRARIES general ${ZLIB_LIBRARY})
set(cmMesonTestF1_INCLUDE_DIRS ${ZLIB_INCLUDE_DIR})
add_library(CMMesonTESTf1::evil_non_standard_trget UNKNOWN IMPORTED)
diff --git a/test cases/linuxlike/13 cmake dependency/meson.build b/test cases/linuxlike/13 cmake dependency/meson.build
index 67d53cf45..b82f9b7f5 100644
--- a/test cases/linuxlike/13 cmake dependency/meson.build
+++ b/test cases/linuxlike/13 cmake dependency/meson.build
@@ -48,6 +48,10 @@ depPrefEnv1 = dependency('cmMesonTestF1', required : true, method : 'cmake')
depPrefEnv2 = dependency('cmMesonTestF2', required : true, method : 'cmake')
depPrefEnv3 = dependency('cmMesonTestF3', required : true, method : 'cmake')
+# Try to actually link with depPrefEnv1, since we are doing "fun" stuff there
+exe3 = executable('zlibprog3', 'prog.c', dependencies : depPrefEnv1)
+test('zlibtest3', exe3)
+
# Try to find a dependency with a custom CMake module
depm1 = dependency('SomethingLikeZLIB', required : true, components : 'required_comp', method : 'cmake', cmake_module_path : 'cmake')