This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "CMake".
The branch, master has been updated via bdc5618e18b9868f46e48641cdd35f361199f28e (commit) via a052479a5c75cc4e892fe68002bc0a4d97013a66 (commit) via 9578c3f0d18a5407a3106a6c487115947d1355e4 (commit) via 22ba9b6a328a0eea77559b2d607fe8d525445812 (commit) via 525ff0c3bc1f625756337c2ae724a58ec93ba4d1 (commit) via 87324b9b6a1f29a25c96149e165e99bebe750ef5 (commit) via dfb3f58f79b05dfe7840373aa08a86204c94f33b (commit) via bd9bfc644954a48b1bf7ea18fc260a1231840671 (commit) via 0033676796748bd8fe00f3f96d3470405cdb94fe (commit) via 02f566a5592ac0438f03a84d713bae6913a7e39a (commit) via b601bb6f1c30c97e21ea893e8c84b05aab97fcb4 (commit) via 4babc9058a996e9cccd183eb25eda5faedd04591 (commit) via 45a49ae58abe835bc3ad446b054fa07035c33d60 (commit) via 9f64974f5eff103ceda107c362c66c2adc1997ba (commit) via 4201a11c2b5a5bdb442f99f88a5f17d6ae7c4a4c (commit) via 3eebe28ef41a298f9743db44a7265742891fc225 (commit) from 08da4f8d70cce97a9a6913d74e6c128ca6c0a40b (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=bdc5618e18b9868f46e48641cdd35f361199f28e commit bdc5618e18b9868f46e48641cdd35f361199f28e Merge: a052479 22ba9b6 Author: Brad King <brad.k...@kitware.com> AuthorDate: Fri Nov 2 11:57:48 2018 +0000 Commit: Kitware Robot <kwro...@kitware.com> CommitDate: Fri Nov 2 07:57:54 2018 -0400 Merge topic 'FindGDAL-target' 22ba9b6a32 FindGDAL: set the GDAL_VERSION 525ff0c3bc Tests/FindGDAL: add a test for FindGDAL 87324b9b6a FindGDAL: add an imported target dfb3f58f79 FindGDAL: Modernize documentation layout Acked-by: Kitware Robot <kwro...@kitware.com> Merge-request: !2552 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=a052479a5c75cc4e892fe68002bc0a4d97013a66 commit a052479a5c75cc4e892fe68002bc0a4d97013a66 Merge: 9578c3f bd9bfc6 Author: Brad King <brad.k...@kitware.com> AuthorDate: Fri Nov 2 11:56:57 2018 +0000 Commit: Kitware Robot <kwro...@kitware.com> CommitDate: Fri Nov 2 07:57:06 2018 -0400 Merge topic 'msvc-custom-rc-mt' bd9bfc6449 MSVC: Respect CMAKE_RC_COMPILER and CMAKE_MT in vs_link_{dll,exe} 0033676796 CUDA: Enable RC language on Windows 02f566a559 MSVC: Factor out enable_language(RC) call into helper macro b601bb6f1c CUDA: Find CMAKE_LINKER on Windows 3eebe28ef4 cmLocalNinjaGenerator: Simplify CreateRulePlaceholderExpander Acked-by: Kitware Robot <kwro...@kitware.com> Merge-request: !2424 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9578c3f0d18a5407a3106a6c487115947d1355e4 commit 9578c3f0d18a5407a3106a6c487115947d1355e4 Merge: 08da4f8 4babc90 Author: Brad King <brad.k...@kitware.com> AuthorDate: Fri Nov 2 11:55:06 2018 +0000 Commit: Kitware Robot <kwro...@kitware.com> CommitDate: Fri Nov 2 07:55:14 2018 -0400 Merge topic 'check-keywords-only-if-used' 4babc9058a cmTargetPropCommandBase: check keywords after parsing 45a49ae58a cmTargetPropCommandBase: simplify code path 9f64974f5e cmTargetPropCommandBase: skip property setting if there's nothing to add 4201a11c2b Tests: add tests for empty-value keyword arguments in target_* Acked-by: Kitware Robot <kwro...@kitware.com> Merge-request: !2514 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=22ba9b6a328a0eea77559b2d607fe8d525445812 commit 22ba9b6a328a0eea77559b2d607fe8d525445812 Author: Ben Boeckel <ben.boec...@kitware.com> AuthorDate: Wed Oct 31 14:48:15 2018 -0400 Commit: Brad King <brad.k...@kitware.com> CommitDate: Thu Nov 1 13:16:37 2018 -0400 FindGDAL: set the GDAL_VERSION diff --git a/Modules/FindGDAL.cmake b/Modules/FindGDAL.cmake index 5dd9335..8522f9b 100644 --- a/Modules/FindGDAL.cmake +++ b/Modules/FindGDAL.cmake @@ -24,6 +24,8 @@ This module will set the following variables in your project: Include directories for GDAL headers. ``GDAL_LIBRARIES`` Libraries to link to GDAL. +``GDAL_VERSION`` + The version of GDAL found. Cache variables ^^^^^^^^^^^^^^^ @@ -138,8 +140,19 @@ find_library(GDAL_LIBRARY PATH_SUFFIXES lib ) +if (EXISTS "${GDAL_INCLUDE_DIR}/gdal_version.h") + file(STRINGS "${GDAL_INCLUDE_DIR}/gdal_version.h" _gdal_version + REGEX "GDAL_RELEASE_NAME") + string(REGEX REPLACE ".*\"\(.*\)\"" "\\1" GDAL_VERSION "${_gdal_version}") + unset(_gdal_version) +else () + set(GDAL_VERSION GDAL_VERSION-NOTFOUND) +endif () + include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) -FIND_PACKAGE_HANDLE_STANDARD_ARGS(GDAL DEFAULT_MSG GDAL_LIBRARY GDAL_INCLUDE_DIR) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(GDAL + VERSION_VAR GDAL_VERSION + REQUIRED_VARS GDAL_LIBRARY GDAL_INCLUDE_DIR) if (GDAL_FOUND AND NOT TARGET GDAL::GDAL) add_library(GDAL::GDAL UNKNOWN IMPORTED) diff --git a/Tests/FindGDAL/Test/CMakeLists.txt b/Tests/FindGDAL/Test/CMakeLists.txt index 20f4b84..8bdc57c 100644 --- a/Tests/FindGDAL/Test/CMakeLists.txt +++ b/Tests/FindGDAL/Test/CMakeLists.txt @@ -4,9 +4,7 @@ include(CTest) find_package(GDAL REQUIRED) -# FindGDAL doesn't export a version number. -#add_definitions(-DCMAKE_EXPECTED_GDAL_VERSION="${GDAL_VERSION}") -add_definitions(-DCMAKE_EXPECTED_GDAL_VERSION="unknown") +add_definitions(-DCMAKE_EXPECTED_GDAL_VERSION="${GDAL_VERSION}") add_executable(test_tgt main.c) target_link_libraries(test_tgt GDAL::GDAL) diff --git a/Tests/FindGDAL/Test/main.c b/Tests/FindGDAL/Test/main.c index 046eb99..7b31a13 100644 --- a/Tests/FindGDAL/Test/main.c +++ b/Tests/FindGDAL/Test/main.c @@ -1,12 +1,11 @@ #include <gdal.h> #include <stdio.h> -// #include <string.h> +#include <string.h> int main() { printf("Found GDAL version %s, expected version %s\n", GDAL_RELEASE_NAME, CMAKE_EXPECTED_GDAL_VERSION); GDALAllRegister(); - // return strcmp(GDAL_RELEASE_NAME, CMAKE_EXPECTED_GDAL_VERSION); - return 0; + return strcmp(GDAL_RELEASE_NAME, CMAKE_EXPECTED_GDAL_VERSION); } https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=525ff0c3bc1f625756337c2ae724a58ec93ba4d1 commit 525ff0c3bc1f625756337c2ae724a58ec93ba4d1 Author: Ben Boeckel <ben.boec...@kitware.com> AuthorDate: Wed Oct 31 14:47:56 2018 -0400 Commit: Brad King <brad.k...@kitware.com> CommitDate: Thu Nov 1 13:16:37 2018 -0400 Tests/FindGDAL: add a test for FindGDAL diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt index c7cfa86..1c49fea 100644 --- a/Tests/CMakeLists.txt +++ b/Tests/CMakeLists.txt @@ -1384,6 +1384,10 @@ ${CMake_BINARY_DIR}/bin/cmake -DDIR=dev -P ${CMake_SOURCE_DIR}/Utilities/Release add_subdirectory(FindFreetype) endif() + if(CMake_TEST_FindGDAL) + add_subdirectory(FindGDAL) + endif() + if(CMake_TEST_FindGSL) add_subdirectory(FindGSL) endif() diff --git a/Tests/FindGDAL/CMakeLists.txt b/Tests/FindGDAL/CMakeLists.txt new file mode 100644 index 0000000..12f95e1 --- /dev/null +++ b/Tests/FindGDAL/CMakeLists.txt @@ -0,0 +1,10 @@ +add_test(NAME FindGDAL.Test COMMAND + ${CMAKE_CTEST_COMMAND} -C $<CONFIGURATION> + --build-and-test + "${CMake_SOURCE_DIR}/Tests/FindGDAL/Test" + "${CMake_BINARY_DIR}/Tests/FindGDAL/Test" + ${build_generator_args} + --build-project TestFindGDAL + --build-options ${build_options} + --test-command ${CMAKE_CTEST_COMMAND} -V -C $<CONFIGURATION> + ) diff --git a/Tests/FindGDAL/Test/CMakeLists.txt b/Tests/FindGDAL/Test/CMakeLists.txt new file mode 100644 index 0000000..20f4b84 --- /dev/null +++ b/Tests/FindGDAL/Test/CMakeLists.txt @@ -0,0 +1,18 @@ +cmake_minimum_required(VERSION 3.10) +project(TestFindGDAL C) +include(CTest) + +find_package(GDAL REQUIRED) + +# FindGDAL doesn't export a version number. +#add_definitions(-DCMAKE_EXPECTED_GDAL_VERSION="${GDAL_VERSION}") +add_definitions(-DCMAKE_EXPECTED_GDAL_VERSION="unknown") + +add_executable(test_tgt main.c) +target_link_libraries(test_tgt GDAL::GDAL) +add_test(NAME test_tgt COMMAND test_tgt) + +add_executable(test_var main.c) +target_include_directories(test_var PRIVATE ${GDAL_INCLUDE_DIRS}) +target_link_libraries(test_var PRIVATE ${GDAL_LIBRARIES}) +add_test(NAME test_var COMMAND test_var) diff --git a/Tests/FindGDAL/Test/main.c b/Tests/FindGDAL/Test/main.c new file mode 100644 index 0000000..046eb99 --- /dev/null +++ b/Tests/FindGDAL/Test/main.c @@ -0,0 +1,12 @@ +#include <gdal.h> +#include <stdio.h> +// #include <string.h> + +int main() +{ + printf("Found GDAL version %s, expected version %s\n", GDAL_RELEASE_NAME, + CMAKE_EXPECTED_GDAL_VERSION); + GDALAllRegister(); + // return strcmp(GDAL_RELEASE_NAME, CMAKE_EXPECTED_GDAL_VERSION); + return 0; +} https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=87324b9b6a1f29a25c96149e165e99bebe750ef5 commit 87324b9b6a1f29a25c96149e165e99bebe750ef5 Author: Ben Boeckel <ben.boec...@kitware.com> AuthorDate: Wed Oct 31 11:05:01 2018 -0400 Commit: Brad King <brad.k...@kitware.com> CommitDate: Thu Nov 1 13:16:36 2018 -0400 FindGDAL: add an imported target diff --git a/Help/release/dev/FindGDAL-target.rst b/Help/release/dev/FindGDAL-target.rst new file mode 100644 index 0000000..b121a72 --- /dev/null +++ b/Help/release/dev/FindGDAL-target.rst @@ -0,0 +1,4 @@ +FindGDAL-target +--------------- + +* The :module:`FindGDAL` module now provides an imported target. diff --git a/Modules/FindGDAL.cmake b/Modules/FindGDAL.cmake index 9c989b8..5dd9335 100644 --- a/Modules/FindGDAL.cmake +++ b/Modules/FindGDAL.cmake @@ -7,6 +7,12 @@ FindGDAL Find GDAL. +IMPORTED Targets +^^^^^^^^^^^^^^^^ + +This module defines :prop_tgt:`IMPORTED` target ``GDAL::GDAL`` +if GDAL has been found. + Result Variables ^^^^^^^^^^^^^^^^ @@ -135,5 +141,12 @@ find_library(GDAL_LIBRARY include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) FIND_PACKAGE_HANDLE_STANDARD_ARGS(GDAL DEFAULT_MSG GDAL_LIBRARY GDAL_INCLUDE_DIR) +if (GDAL_FOUND AND NOT TARGET GDAL::GDAL) + add_library(GDAL::GDAL UNKNOWN IMPORTED) + set_target_properties(GDAL::GDAL PROPERTIES + IMPORTED_LOCATION "${GDAL_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${GDAL_INCLUDE_DIR}") +endif () + set(GDAL_LIBRARIES ${GDAL_LIBRARY}) set(GDAL_INCLUDE_DIRS ${GDAL_INCLUDE_DIR}) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=dfb3f58f79b05dfe7840373aa08a86204c94f33b commit dfb3f58f79b05dfe7840373aa08a86204c94f33b Author: Brad King <brad.k...@kitware.com> AuthorDate: Thu Nov 1 13:12:18 2018 -0400 Commit: Brad King <brad.k...@kitware.com> CommitDate: Thu Nov 1 13:16:36 2018 -0400 FindGDAL: Modernize documentation layout diff --git a/Modules/FindGDAL.cmake b/Modules/FindGDAL.cmake index 030553f..9c989b8 100644 --- a/Modules/FindGDAL.cmake +++ b/Modules/FindGDAL.cmake @@ -5,28 +5,37 @@ FindGDAL -------- +Find GDAL. +Result Variables +^^^^^^^^^^^^^^^^ -Locate gdal +This module will set the following variables in your project: -This module accepts the following environment variables: +``GDAL_FOUND`` + True if GDAL is found. +``GDAL_INCLUDE_DIRS`` + Include directories for GDAL headers. +``GDAL_LIBRARIES`` + Libraries to link to GDAL. -:: +Cache variables +^^^^^^^^^^^^^^^ - GDAL_DIR or GDAL_ROOT - Specify the location of GDAL +The following cache variables may also be set: +``GDAL_LIBRARY`` + The libgdal library file. +``GDAL_INCLUDE_DIR`` + The directory containing ``gdal.h``. +Hints +^^^^^ -This module defines the following CMake variables: - -:: - - GDAL_FOUND - True if libgdal is found - GDAL_LIBRARY - A variable pointing to the GDAL library - GDAL_INCLUDE_DIR - Where to find the headers +Set ``GDAL_DIR`` or ``GDAL_ROOT`` in the environment to specify the +GDAL installation prefix. #]=======================================================================] -# # $GDALDIR is an environment variable that would # correspond to the ./configure --prefix=$GDAL_DIR # used in building gdal. https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=bd9bfc644954a48b1bf7ea18fc260a1231840671 commit bd9bfc644954a48b1bf7ea18fc260a1231840671 Author: Mateusz Zych <mte.z...@gmail.com> AuthorDate: Thu Oct 25 02:34:26 2018 +0200 Commit: Brad King <brad.k...@kitware.com> CommitDate: Mon Oct 29 13:40:47 2018 -0400 MSVC: Respect CMAKE_RC_COMPILER and CMAKE_MT in vs_link_{dll,exe} CMake commands vs_link_dll and vs_link_exe, performing linking on MSVC, are responsible for calling resource compiler and manifest tool. Before this commit, both of these tools were called directly, with the expectation that they are available in the `PATH`. This has been fixed by respecting CMake variables `CMAKE_RC_COMPILER` and `CMAKE_MT` defining paths to these tools. Fixes: #17804 diff --git a/Modules/CMakeASMCompiler.cmake.in b/Modules/CMakeASMCompiler.cmake.in index a6465f6..b8e09fe 100644 --- a/Modules/CMakeASMCompiler.cmake.in +++ b/Modules/CMakeASMCompiler.cmake.in @@ -5,6 +5,7 @@ set(CMAKE_ASM@ASM_DIALECT@_COMPILER_AR "@_CMAKE_ASM_COMPILER_AR@") set(CMAKE_RANLIB "@CMAKE_RANLIB@") set(CMAKE_ASM@ASM_DIALECT@_COMPILER_RANLIB "@_CMAKE_ASM_COMPILER_RANLIB@") set(CMAKE_LINKER "@CMAKE_LINKER@") +set(CMAKE_MT "@CMAKE_MT@") set(CMAKE_ASM@ASM_DIALECT@_COMPILER_LOADED 1) set(CMAKE_ASM@ASM_DIALECT@_COMPILER_ID "@_CMAKE_ASM_COMPILER_ID@") set(CMAKE_ASM@ASM_DIALECT@_COMPILER_VERSION "@_CMAKE_ASM_COMPILER_VERSION@") diff --git a/Modules/CMakeCCompiler.cmake.in b/Modules/CMakeCCompiler.cmake.in index 72144cf..e75c74e 100644 --- a/Modules/CMakeCCompiler.cmake.in +++ b/Modules/CMakeCCompiler.cmake.in @@ -21,6 +21,7 @@ set(CMAKE_C_COMPILER_AR "@CMAKE_C_COMPILER_AR@") set(CMAKE_RANLIB "@CMAKE_RANLIB@") set(CMAKE_C_COMPILER_RANLIB "@CMAKE_C_COMPILER_RANLIB@") set(CMAKE_LINKER "@CMAKE_LINKER@") +set(CMAKE_MT "@CMAKE_MT@") set(CMAKE_COMPILER_IS_GNUCC @CMAKE_COMPILER_IS_GNUCC@) set(CMAKE_C_COMPILER_LOADED 1) set(CMAKE_C_COMPILER_WORKS @CMAKE_C_COMPILER_WORKS@) diff --git a/Modules/CMakeCUDACompiler.cmake.in b/Modules/CMakeCUDACompiler.cmake.in index e1e1d33..feb3e79 100644 --- a/Modules/CMakeCUDACompiler.cmake.in +++ b/Modules/CMakeCUDACompiler.cmake.in @@ -28,3 +28,4 @@ set(CMAKE_CUDA_IMPLICIT_LINK_DIRECTORIES "@CMAKE_CUDA_IMPLICIT_LINK_DIRECTORIES@ set(CMAKE_CUDA_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "@CMAKE_CUDA_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES@") set(CMAKE_LINKER "@CMAKE_LINKER@") +set(CMAKE_MT "@CMAKE_MT@") diff --git a/Modules/CMakeCXXCompiler.cmake.in b/Modules/CMakeCXXCompiler.cmake.in index 8da6a8c..5f52fd8 100644 --- a/Modules/CMakeCXXCompiler.cmake.in +++ b/Modules/CMakeCXXCompiler.cmake.in @@ -23,6 +23,7 @@ set(CMAKE_CXX_COMPILER_AR "@CMAKE_CXX_COMPILER_AR@") set(CMAKE_RANLIB "@CMAKE_RANLIB@") set(CMAKE_CXX_COMPILER_RANLIB "@CMAKE_CXX_COMPILER_RANLIB@") set(CMAKE_LINKER "@CMAKE_LINKER@") +set(CMAKE_MT "@CMAKE_MT@") set(CMAKE_COMPILER_IS_GNUCXX @CMAKE_COMPILER_IS_GNUCXX@) set(CMAKE_CXX_COMPILER_LOADED 1) set(CMAKE_CXX_COMPILER_WORKS @CMAKE_CXX_COMPILER_WORKS@) diff --git a/Modules/CMakeFindBinUtils.cmake b/Modules/CMakeFindBinUtils.cmake index b805fa7..35f75c9 100644 --- a/Modules/CMakeFindBinUtils.cmake +++ b/Modules/CMakeFindBinUtils.cmake @@ -14,29 +14,48 @@ # CMAKE_AR # CMAKE_RANLIB # CMAKE_LINKER +# CMAKE_MT # CMAKE_STRIP # CMAKE_INSTALL_NAME_TOOL # on UNIX, cygwin and mingw -if(CMAKE_LINKER) - # we only get here if CMAKE_LINKER was specified using -D or a pre-made CMakeCache.txt - # (e.g. via ctest) or set in CMAKE_TOOLCHAIN_FILE - # find the linker in the PATH if necessary - get_filename_component(_CMAKE_USER_LINKER_PATH "${CMAKE_LINKER}" PATH) - if(NOT _CMAKE_USER_LINKER_PATH) - find_program(CMAKE_LINKER_WITH_PATH NAMES ${CMAKE_LINKER} HINTS ${_CMAKE_TOOLCHAIN_LOCATION}) - if(CMAKE_LINKER_WITH_PATH) - set(CMAKE_LINKER ${CMAKE_LINKER_WITH_PATH}) - get_property(_CMAKE_LINKER_CACHED CACHE CMAKE_LINKER PROPERTY TYPE) - if(_CMAKE_LINKER_CACHED) - set(CMAKE_LINKER "${CMAKE_LINKER}" CACHE STRING "Default Linker" FORCE) +# Resolve full path of CMAKE_TOOL from user-defined name and SEARCH_PATH. +function(__resolve_tool_path CMAKE_TOOL SEARCH_PATH DOCSTRING) + + if(${CMAKE_TOOL}) + # We only get here if CMAKE_TOOL was + # specified using -D or a pre-made CMakeCache.txt (e.g. via ctest) + # or set in CMAKE_TOOLCHAIN_FILE. + + get_filename_component(_CMAKE_USER_TOOL_PATH "${${CMAKE_TOOL}}" DIRECTORY) + # Is CMAKE_TOOL a user-defined name instead of a full path? + if(NOT _CMAKE_USER_TOOL_PATH) + + # Find CMAKE_TOOL in the SEARCH_PATH directory by user-defined name. + find_program(_CMAKE_TOOL_WITH_PATH NAMES ${${CMAKE_TOOL}} HINTS ${SEARCH_PATH}) + if(_CMAKE_TOOL_WITH_PATH) + + # Overwrite CMAKE_TOOL with full path found in SEARCH_PATH. + set(${CMAKE_TOOL} ${_CMAKE_TOOL_WITH_PATH} PARENT_SCOPE) + + get_property(_CMAKE_TOOL_CACHED CACHE ${CMAKE_TOOL} PROPERTY TYPE) + # If CMAKE_TOOL is present in the CMake Cache, then overwrit it as well. + if(_CMAKE_TOOL_CACHED) + set(${CMAKE_TOOL} "${_CMAKE_TOOL_WITH_PATH}" CACHE STRING ${DOCSTRING} FORCE) + endif() + endif() - unset(_CMAKE_LINKER_CACHED) + unset(_CMAKE_TOOL_WITH_PATH CACHE) + endif() - unset(CMAKE_LINKER_WITH_PATH CACHE) + endif() -endif() + +endfunction() + +__resolve_tool_path(CMAKE_LINKER "${_CMAKE_TOOLCHAIN_LOCATION}" "Default Linker") +__resolve_tool_path(CMAKE_MT "${_CMAKE_TOOLCHAIN_LOCATION}" "Default Manifest Tool") set(_CMAKE_TOOL_VARS "") @@ -49,8 +68,9 @@ if("x${CMAKE_${_CMAKE_PROCESSING_LANGUAGE}_SIMULATE_ID}" STREQUAL "xMSVC" AND NOT CMAKE_VS_PLATFORM_NAME STREQUAL "Tegra-Android")) find_program(CMAKE_LINKER NAMES link HINTS ${_CMAKE_TOOLCHAIN_LOCATION}) + find_program(CMAKE_MT NAMES mt HINTS ${_CMAKE_TOOLCHAIN_LOCATION}) - list(APPEND _CMAKE_TOOL_VARS CMAKE_LINKER) + list(APPEND _CMAKE_TOOL_VARS CMAKE_LINKER CMAKE_MT) # in all other cases search for ar, ranlib, etc. else() diff --git a/Modules/Platform/Windows-MSVC.cmake b/Modules/Platform/Windows-MSVC.cmake index 73906c6..2daf313 100644 --- a/Modules/Platform/Windows-MSVC.cmake +++ b/Modules/Platform/Windows-MSVC.cmake @@ -298,8 +298,8 @@ unset(_MACHINE_ARCH_FLAG) macro(__windows_compiler_msvc lang) if(NOT MSVC_VERSION LESS 1400) # for 2005 make sure the manifest is put in the dll with mt - set(_CMAKE_VS_LINK_DLL "<CMAKE_COMMAND> -E vs_link_dll --intdir=<OBJECT_DIR> --manifests <MANIFESTS> -- ") - set(_CMAKE_VS_LINK_EXE "<CMAKE_COMMAND> -E vs_link_exe --intdir=<OBJECT_DIR> --manifests <MANIFESTS> -- ") + set(_CMAKE_VS_LINK_DLL "<CMAKE_COMMAND> -E vs_link_dll --intdir=<OBJECT_DIR> --rc=<CMAKE_RC_COMPILER> --mt=<CMAKE_MT> --manifests <MANIFESTS> -- ") + set(_CMAKE_VS_LINK_EXE "<CMAKE_COMMAND> -E vs_link_exe --intdir=<OBJECT_DIR> --rc=<CMAKE_RC_COMPILER> --mt=<CMAKE_MT> --manifests <MANIFESTS> -- ") endif() set(CMAKE_${lang}_CREATE_SHARED_LIBRARY "${_CMAKE_VS_LINK_DLL}<CMAKE_LINKER> ${CMAKE_CL_NOLOGO} <OBJECTS> ${CMAKE_START_TEMP_FILE} /out:<TARGET> /implib:<TARGET_IMPLIB> /pdb:<TARGET_PDB> /dll /version:<TARGET_VERSION_MAJOR>.<TARGET_VERSION_MINOR>${_PLATFORM_LINK_FLAGS} <LINK_FLAGS> <LINK_LIBRARIES> ${CMAKE_END_TEMP_FILE}") diff --git a/Modules/Platform/Windows-NVIDIA-CUDA.cmake b/Modules/Platform/Windows-NVIDIA-CUDA.cmake index 631a7de..6a2667a 100644 --- a/Modules/Platform/Windows-NVIDIA-CUDA.cmake +++ b/Modules/Platform/Windows-NVIDIA-CUDA.cmake @@ -17,8 +17,8 @@ endforeach() set(CMAKE_CUDA_LINK_EXECUTABLE "<CMAKE_CUDA_HOST_LINK_LAUNCHER> <LINK_FLAGS> <OBJECTS> /out:<TARGET> /implib:<TARGET_IMPLIB> /pdb:<TARGET_PDB> /version:<TARGET_VERSION_MAJOR>.<TARGET_VERSION_MINOR> <LINK_LIBRARIES>${__IMPLICT_LINKS}") -set(_CMAKE_VS_LINK_DLL "<CMAKE_COMMAND> -E vs_link_dll --intdir=<OBJECT_DIR> --manifests <MANIFESTS> -- ") -set(_CMAKE_VS_LINK_EXE "<CMAKE_COMMAND> -E vs_link_exe --intdir=<OBJECT_DIR> --manifests <MANIFESTS> -- ") +set(_CMAKE_VS_LINK_DLL "<CMAKE_COMMAND> -E vs_link_dll --intdir=<OBJECT_DIR> --rc=<CMAKE_RC_COMPILER> --mt=<CMAKE_MT> --manifests <MANIFESTS> -- ") +set(_CMAKE_VS_LINK_EXE "<CMAKE_COMMAND> -E vs_link_exe --intdir=<OBJECT_DIR> --rc=<CMAKE_RC_COMPILER> --mt=<CMAKE_MT> --manifests <MANIFESTS> -- ") set(CMAKE_CUDA_CREATE_SHARED_LIBRARY "${_CMAKE_VS_LINK_DLL}<CMAKE_LINKER> ${CMAKE_CL_NOLOGO} <OBJECTS> ${CMAKE_START_TEMP_FILE} /out:<TARGET> /implib:<TARGET_IMPLIB> /pdb:<TARGET_PDB> /dll /version:<TARGET_VERSION_MAJOR>.<TARGET_VERSION_MINOR>${_PLATFORM_LINK_FLAGS} <LINK_FLAGS> <LINK_LIBRARIES>${__IMPLICT_LINKS} ${CMAKE_END_TEMP_FILE}") diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx index 7030725..b07d504 100644 --- a/Source/cmLocalGenerator.cxx +++ b/Source/cmLocalGenerator.cxx @@ -65,6 +65,7 @@ static const char* ruleReplaceVars[] = { "CMAKE_CURRENT_BINARY_DIR", "CMAKE_RANLIB", "CMAKE_LINKER", + "CMAKE_MT", "CMAKE_CUDA_HOST_COMPILER", "CMAKE_CUDA_HOST_LINK_LAUNCHER", "CMAKE_CL_SHOWINCLUDES_PREFIX" diff --git a/Source/cmcmd.cxx b/Source/cmcmd.cxx index 1d2f741..9f1618b 100644 --- a/Source/cmcmd.cxx +++ b/Source/cmcmd.cxx @@ -1517,6 +1517,8 @@ class cmVSLink std::string ManifestFileRC; std::string ManifestFileRes; std::string TargetFile; + std::string MtPath; + std::string RcPath; public: cmVSLink(int type, bool verbose) @@ -1660,6 +1662,12 @@ bool cmVSLink::Parse(std::vector<std::string>::const_iterator argBeg, } else if (cmHasLiteralPrefix(*arg, "--intdir=")) { intDir = arg->substr(9); ++arg; + } else if (cmHasLiteralPrefix(*arg, "--rc=")) { + this->RcPath = arg->substr(5); + ++arg; + } else if (cmHasLiteralPrefix(*arg, "--mt=")) { + this->MtPath = arg->substr(5); + ++arg; } else { std::cerr << "unknown argument '" << *arg << "'\n"; return false; @@ -1799,7 +1807,7 @@ int cmVSLink::LinkIncremental() // Compile the resource file. std::vector<std::string> rcCommand; - rcCommand.push_back("rc"); + rcCommand.push_back(this->RcPath.empty() ? "rc" : this->RcPath); rcCommand.push_back("/fo" + this->ManifestFileRes); rcCommand.push_back(this->ManifestFileRC); if (!RunCommand("RC Pass 1", rcCommand, this->Verbose, FORMAT_DECIMAL)) { @@ -1858,7 +1866,7 @@ int cmVSLink::LinkNonIncremental() int cmVSLink::RunMT(std::string const& out, bool notify) { std::vector<std::string> mtCommand; - mtCommand.push_back("mt"); + mtCommand.push_back(this->MtPath.empty() ? "mt" : this->MtPath); mtCommand.push_back("/nologo"); mtCommand.push_back("/manifest"); if (this->LinkGeneratesManifest) { https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0033676796748bd8fe00f3f96d3470405cdb94fe commit 0033676796748bd8fe00f3f96d3470405cdb94fe Author: Brad King <brad.k...@kitware.com> AuthorDate: Mon Oct 29 13:32:07 2018 -0400 Commit: Brad King <brad.k...@kitware.com> CommitDate: Mon Oct 29 13:40:47 2018 -0400 CUDA: Enable RC language on Windows We need the resource compiler to place manifests in binaries. Make sure it is available. diff --git a/Modules/Platform/Windows-NVIDIA-CUDA.cmake b/Modules/Platform/Windows-NVIDIA-CUDA.cmake index ba1638f..631a7de 100644 --- a/Modules/Platform/Windows-NVIDIA-CUDA.cmake +++ b/Modules/Platform/Windows-NVIDIA-CUDA.cmake @@ -67,3 +67,5 @@ string(APPEND CMAKE_CUDA_FLAGS_RELWITHDEBINFO_INIT " -Xcompiler=\"-MD -Zi -O2 -O string(APPEND CMAKE_CUDA_FLAGS_MINSIZEREL_INIT " -Xcompiler=\"-MD -O1 -Ob1\" -DNDEBUG") set(CMAKE_CUDA_STANDARD_LIBRARIES_INIT "${CMAKE_C_STANDARD_LIBRARIES_INIT}") + +__windows_compiler_msvc_enable_rc("${_PLATFORM_DEFINES} ${_PLATFORM_DEFINES_CXX}") https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=02f566a5592ac0438f03a84d713bae6913a7e39a commit 02f566a5592ac0438f03a84d713bae6913a7e39a Author: Brad King <brad.k...@kitware.com> AuthorDate: Mon Oct 29 13:30:17 2018 -0400 Commit: Brad King <brad.k...@kitware.com> CommitDate: Mon Oct 29 13:40:47 2018 -0400 MSVC: Factor out enable_language(RC) call into helper macro This will be useful to call from elsewhere later. diff --git a/Modules/Platform/Windows-MSVC.cmake b/Modules/Platform/Windows-MSVC.cmake index ae180ed..73906c6 100644 --- a/Modules/Platform/Windows-MSVC.cmake +++ b/Modules/Platform/Windows-MSVC.cmake @@ -366,12 +366,15 @@ macro(__windows_compiler_msvc lang) endif() set(CMAKE_${lang}_LINKER_SUPPORTS_PDB ON) set(CMAKE_NINJA_DEPTYPE_${lang} msvc) + __windows_compiler_msvc_enable_rc("${_PLATFORM_DEFINES} ${_PLATFORM_DEFINES_${lang}}") +endmacro() +macro(__windows_compiler_msvc_enable_rc flags) if(NOT CMAKE_RC_COMPILER_INIT) set(CMAKE_RC_COMPILER_INIT rc) endif() if(NOT CMAKE_RC_FLAGS_INIT) - string(APPEND CMAKE_RC_FLAGS_INIT " ${_PLATFORM_DEFINES} ${_PLATFORM_DEFINES_${lang}}") + string(APPEND CMAKE_RC_FLAGS_INIT " ${flags}") endif() if(NOT CMAKE_RC_FLAGS_DEBUG_INIT) string(APPEND CMAKE_RC_FLAGS_DEBUG_INIT " /D_DEBUG") https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b601bb6f1c30c97e21ea893e8c84b05aab97fcb4 commit b601bb6f1c30c97e21ea893e8c84b05aab97fcb4 Author: Brad King <brad.k...@kitware.com> AuthorDate: Mon Oct 29 13:25:49 2018 -0400 Commit: Brad King <brad.k...@kitware.com> CommitDate: Mon Oct 29 13:40:47 2018 -0400 CUDA: Find CMAKE_LINKER on Windows We use this in `Modules/Platform/Windows-NVIDIA-CUDA.cmake`, so make sure it is available. diff --git a/Modules/CMakeCUDACompiler.cmake.in b/Modules/CMakeCUDACompiler.cmake.in index 9761d8c..e1e1d33 100644 --- a/Modules/CMakeCUDACompiler.cmake.in +++ b/Modules/CMakeCUDACompiler.cmake.in @@ -26,3 +26,5 @@ set(CMAKE_CUDA_HOST_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "@CMAKE_CUDA_HOST_IMPLIC set(CMAKE_CUDA_IMPLICIT_LINK_LIBRARIES "@CMAKE_CUDA_IMPLICIT_LINK_LIBRARIES@") set(CMAKE_CUDA_IMPLICIT_LINK_DIRECTORIES "@CMAKE_CUDA_IMPLICIT_LINK_DIRECTORIES@") set(CMAKE_CUDA_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "@CMAKE_CUDA_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES@") + +set(CMAKE_LINKER "@CMAKE_LINKER@") diff --git a/Modules/CMakeFindBinUtils.cmake b/Modules/CMakeFindBinUtils.cmake index 830639d..b805fa7 100644 --- a/Modules/CMakeFindBinUtils.cmake +++ b/Modules/CMakeFindBinUtils.cmake @@ -44,6 +44,7 @@ set(_CMAKE_TOOL_VARS "") if("x${CMAKE_${_CMAKE_PROCESSING_LANGUAGE}_SIMULATE_ID}" STREQUAL "xMSVC" OR "x${CMAKE_${_CMAKE_PROCESSING_LANGUAGE}_COMPILER_ID}" STREQUAL "xMSVC" OR (CMAKE_HOST_WIN32 AND "x${CMAKE_${_CMAKE_PROCESSING_LANGUAGE}_COMPILER_ID}" STREQUAL "xPGI") + OR (CMAKE_HOST_WIN32 AND "x${CMAKE_${_CMAKE_PROCESSING_LANGUAGE}_COMPILER_ID}" STREQUAL "xNVIDIA") OR (CMAKE_GENERATOR MATCHES "Visual Studio" AND NOT CMAKE_VS_PLATFORM_NAME STREQUAL "Tegra-Android")) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4babc9058a996e9cccd183eb25eda5faedd04591 commit 4babc9058a996e9cccd183eb25eda5faedd04591 Author: Ben Boeckel <ben.boec...@kitware.com> AuthorDate: Mon Oct 22 16:48:28 2018 -0400 Commit: Ben Boeckel <ben.boec...@kitware.com> CommitDate: Fri Oct 26 12:09:41 2018 -0400 cmTargetPropCommandBase: check keywords after parsing The following was disallowed: add_library(iface INTERFACE) target_link_libraries(iface PUBLIC) just due to the mention of the `PUBLIC` keyword. Instead, only error if there are actually `PUBLIC` dependencies specified (and analogously for other restrictions). Update tests to expect this new behavior. diff --git a/Source/cmTargetPropCommandBase.cxx b/Source/cmTargetPropCommandBase.cxx index 48348f3..1b8ee81 100644 --- a/Source/cmTargetPropCommandBase.cxx +++ b/Source/cmTargetPropCommandBase.cxx @@ -84,15 +84,6 @@ bool cmTargetPropCommandBase::ProcessContentArgs( this->SetError("called with invalid arguments"); return false; } - if (this->Target->GetType() == cmStateEnums::INTERFACE_LIBRARY && - scope != "INTERFACE") { - this->SetError("may only set INTERFACE properties on INTERFACE targets"); - return false; - } - if (this->Target->IsImported() && scope != "INTERFACE") { - this->SetError("may only set INTERFACE properties on IMPORTED targets"); - return false; - } ++argIndex; @@ -105,6 +96,17 @@ bool cmTargetPropCommandBase::ProcessContentArgs( } content.push_back(args[i]); } + if (!content.empty()) { + if (this->Target->GetType() == cmStateEnums::INTERFACE_LIBRARY && + scope != "INTERFACE") { + this->SetError("may only set INTERFACE properties on INTERFACE targets"); + return false; + } + if (this->Target->IsImported() && scope != "INTERFACE") { + this->SetError("may only set INTERFACE properties on IMPORTED targets"); + return false; + } + } return this->PopulateTargetProperies(scope, content, prepend, system); } diff --git a/Tests/RunCMake/target_compile_definitions/empty_keyword_args-result.txt b/Tests/RunCMake/target_compile_definitions/empty_keyword_args-result.txt deleted file mode 100644 index d00491f..0000000 --- a/Tests/RunCMake/target_compile_definitions/empty_keyword_args-result.txt +++ /dev/null @@ -1 +0,0 @@ -1 diff --git a/Tests/RunCMake/target_compile_definitions/empty_keyword_args-stderr.txt b/Tests/RunCMake/target_compile_definitions/empty_keyword_args-stderr.txt deleted file mode 100644 index d8fb3ba..0000000 --- a/Tests/RunCMake/target_compile_definitions/empty_keyword_args-stderr.txt +++ /dev/null @@ -1,5 +0,0 @@ -CMake Error at empty_keyword_args.cmake:2 \(target_compile_definitions\): - target_compile_definitions may only set INTERFACE properties on INTERFACE - targets -Call Stack \(most recent call first\): - CMakeLists.txt:5 \(include\) diff --git a/Tests/RunCMake/target_compile_features/empty_keyword_args-result.txt b/Tests/RunCMake/target_compile_features/empty_keyword_args-result.txt deleted file mode 100644 index d00491f..0000000 --- a/Tests/RunCMake/target_compile_features/empty_keyword_args-result.txt +++ /dev/null @@ -1 +0,0 @@ -1 diff --git a/Tests/RunCMake/target_compile_features/empty_keyword_args-stderr.txt b/Tests/RunCMake/target_compile_features/empty_keyword_args-stderr.txt deleted file mode 100644 index eecd3cf..0000000 --- a/Tests/RunCMake/target_compile_features/empty_keyword_args-stderr.txt +++ /dev/null @@ -1,5 +0,0 @@ -CMake Error at empty_keyword_args.cmake:2 \(target_compile_features\): - target_compile_features may only set INTERFACE properties on INTERFACE - targets -Call Stack \(most recent call first\): - CMakeLists.txt:3 \(include\) diff --git a/Tests/RunCMake/target_compile_options/empty_keyword_args-result.txt b/Tests/RunCMake/target_compile_options/empty_keyword_args-result.txt deleted file mode 100644 index d00491f..0000000 --- a/Tests/RunCMake/target_compile_options/empty_keyword_args-result.txt +++ /dev/null @@ -1 +0,0 @@ -1 diff --git a/Tests/RunCMake/target_compile_options/empty_keyword_args-stderr.txt b/Tests/RunCMake/target_compile_options/empty_keyword_args-stderr.txt deleted file mode 100644 index 381ff48..0000000 --- a/Tests/RunCMake/target_compile_options/empty_keyword_args-stderr.txt +++ /dev/null @@ -1,5 +0,0 @@ -CMake Error at empty_keyword_args.cmake:2 \(target_compile_options\): - target_compile_options may only set INTERFACE properties on INTERFACE - targets -Call Stack \(most recent call first\): - CMakeLists.txt:5 \(include\) diff --git a/Tests/RunCMake/target_include_directories/empty_keyword_args-result.txt b/Tests/RunCMake/target_include_directories/empty_keyword_args-result.txt deleted file mode 100644 index d00491f..0000000 --- a/Tests/RunCMake/target_include_directories/empty_keyword_args-result.txt +++ /dev/null @@ -1 +0,0 @@ -1 diff --git a/Tests/RunCMake/target_include_directories/empty_keyword_args-stderr.txt b/Tests/RunCMake/target_include_directories/empty_keyword_args-stderr.txt deleted file mode 100644 index 6200703..0000000 --- a/Tests/RunCMake/target_include_directories/empty_keyword_args-stderr.txt +++ /dev/null @@ -1,5 +0,0 @@ -CMake Error at empty_keyword_args.cmake:2 \(target_include_directories\): - target_include_directories may only set INTERFACE properties on INTERFACE - targets -Call Stack \(most recent call first\): - CMakeLists.txt:5 \(include\) diff --git a/Tests/RunCMake/target_link_directories/empty_keyword_args-result.txt b/Tests/RunCMake/target_link_directories/empty_keyword_args-result.txt deleted file mode 100644 index d00491f..0000000 --- a/Tests/RunCMake/target_link_directories/empty_keyword_args-result.txt +++ /dev/null @@ -1 +0,0 @@ -1 diff --git a/Tests/RunCMake/target_link_directories/empty_keyword_args-stderr.txt b/Tests/RunCMake/target_link_directories/empty_keyword_args-stderr.txt deleted file mode 100644 index 26ee9a1..0000000 --- a/Tests/RunCMake/target_link_directories/empty_keyword_args-stderr.txt +++ /dev/null @@ -1,5 +0,0 @@ -CMake Error at empty_keyword_args.cmake:2 \(target_link_directories\): - target_link_directories may only set INTERFACE properties on INTERFACE - targets -Call Stack \(most recent call first\): - CMakeLists.txt:5 \(include\) diff --git a/Tests/RunCMake/target_link_options/empty_keyword_args-result.txt b/Tests/RunCMake/target_link_options/empty_keyword_args-result.txt deleted file mode 100644 index d00491f..0000000 --- a/Tests/RunCMake/target_link_options/empty_keyword_args-result.txt +++ /dev/null @@ -1 +0,0 @@ -1 diff --git a/Tests/RunCMake/target_link_options/empty_keyword_args-stderr.txt b/Tests/RunCMake/target_link_options/empty_keyword_args-stderr.txt deleted file mode 100644 index 0103d00..0000000 --- a/Tests/RunCMake/target_link_options/empty_keyword_args-stderr.txt +++ /dev/null @@ -1,4 +0,0 @@ -CMake Error at empty_keyword_args.cmake:2 \(target_link_options\): - target_link_options may only set INTERFACE properties on INTERFACE targets -Call Stack \(most recent call first\): - CMakeLists.txt:5 \(include\) diff --git a/Tests/RunCMake/target_sources/empty_keyword_args-result.txt b/Tests/RunCMake/target_sources/empty_keyword_args-result.txt deleted file mode 100644 index d00491f..0000000 --- a/Tests/RunCMake/target_sources/empty_keyword_args-result.txt +++ /dev/null @@ -1 +0,0 @@ -1 diff --git a/Tests/RunCMake/target_sources/empty_keyword_args-stderr.txt b/Tests/RunCMake/target_sources/empty_keyword_args-stderr.txt deleted file mode 100644 index 9ff5bb0..0000000 --- a/Tests/RunCMake/target_sources/empty_keyword_args-stderr.txt +++ /dev/null @@ -1,4 +0,0 @@ -CMake Error at empty_keyword_args.cmake:2 \(target_sources\): - target_sources may only set INTERFACE properties on INTERFACE targets -Call Stack \(most recent call first\): - CMakeLists.txt:5 \(include\) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=45a49ae58abe835bc3ad446b054fa07035c33d60 commit 45a49ae58abe835bc3ad446b054fa07035c33d60 Author: Ben Boeckel <ben.boec...@kitware.com> AuthorDate: Fri Oct 26 09:16:24 2018 -0400 Commit: Ben Boeckel <ben.boec...@kitware.com> CommitDate: Fri Oct 26 12:08:45 2018 -0400 cmTargetPropCommandBase: simplify code path The outside of the loop does the same return expression. diff --git a/Source/cmTargetPropCommandBase.cxx b/Source/cmTargetPropCommandBase.cxx index cd82299..48348f3 100644 --- a/Source/cmTargetPropCommandBase.cxx +++ b/Source/cmTargetPropCommandBase.cxx @@ -101,7 +101,7 @@ bool cmTargetPropCommandBase::ProcessContentArgs( for (unsigned int i = argIndex; i < args.size(); ++i, ++argIndex) { if (args[i] == "PUBLIC" || args[i] == "PRIVATE" || args[i] == "INTERFACE") { - return this->PopulateTargetProperies(scope, content, prepend, system); + break; } content.push_back(args[i]); } https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9f64974f5eff103ceda107c362c66c2adc1997ba commit 9f64974f5eff103ceda107c362c66c2adc1997ba Author: Ben Boeckel <ben.boec...@kitware.com> AuthorDate: Fri Oct 26 09:14:44 2018 -0400 Commit: Ben Boeckel <ben.boec...@kitware.com> CommitDate: Fri Oct 26 12:08:16 2018 -0400 cmTargetPropCommandBase: skip property setting if there's nothing to add Some target types don't allow setting certain properties even if there is no value being set there. Guard against this by avoiding property setting when there is nothing to add. diff --git a/Source/cmTargetPropCommandBase.cxx b/Source/cmTargetPropCommandBase.cxx index 9a8fd96..cd82299 100644 --- a/Source/cmTargetPropCommandBase.cxx +++ b/Source/cmTargetPropCommandBase.cxx @@ -112,6 +112,9 @@ bool cmTargetPropCommandBase::PopulateTargetProperies( const std::string& scope, const std::vector<std::string>& content, bool prepend, bool system) { + if (content.empty()) { + return true; + } if (scope == "PRIVATE" || scope == "PUBLIC") { if (!this->HandleDirectContent(this->Target, content, prepend, system)) { return false; https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4201a11c2b5a5bdb442f99f88a5f17d6ae7c4a4c commit 4201a11c2b5a5bdb442f99f88a5f17d6ae7c4a4c Author: Ben Boeckel <ben.boec...@kitware.com> AuthorDate: Fri Oct 26 09:11:42 2018 -0400 Commit: Ben Boeckel <ben.boec...@kitware.com> CommitDate: Fri Oct 26 12:08:05 2018 -0400 Tests: add tests for empty-value keyword arguments in target_* Not all of these commands accept non-compilable (i.e., IMPORTED) targets, so those calls are currently just commented out. If they ever do start to accept them, the tests should be enabled. diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt index 90681b9..b2880b6 100644 --- a/Tests/RunCMake/CMakeLists.txt +++ b/Tests/RunCMake/CMakeLists.txt @@ -342,11 +342,16 @@ endif() add_RunCMake_test(File_Generate) add_RunCMake_test(ExportWithoutLanguage) +add_RunCMake_test(target_link_directories) add_RunCMake_test(target_link_libraries) add_RunCMake_test(add_link_options -DCMAKE_C_COMPILER_ID=${CMAKE_C_COMPILER_ID}) add_RunCMake_test(target_link_options -DCMAKE_C_COMPILER_ID=${CMAKE_C_COMPILER_ID}) +add_RunCMake_test(target_compile_definitions) add_RunCMake_test(target_compile_features) +add_RunCMake_test(target_compile_options) +add_RunCMake_test(target_include_directories) +add_RunCMake_test(target_sources) add_RunCMake_test(CheckModules) add_RunCMake_test(CheckIPOSupported) add_RunCMake_test(CommandLine -DCMAKE_SYSTEM_NAME=${CMAKE_SYSTEM_NAME}) diff --git a/Tests/RunCMake/target_compile_definitions/CMakeLists.txt b/Tests/RunCMake/target_compile_definitions/CMakeLists.txt new file mode 100644 index 0000000..14ef56e --- /dev/null +++ b/Tests/RunCMake/target_compile_definitions/CMakeLists.txt @@ -0,0 +1,5 @@ +cmake_minimum_required(VERSION 3.11) + +project(${RunCMake_TEST} LANGUAGES NONE) + +include(${RunCMake_TEST}.cmake) diff --git a/Tests/RunCMake/target_compile_definitions/RunCMakeTest.cmake b/Tests/RunCMake/target_compile_definitions/RunCMakeTest.cmake new file mode 100644 index 0000000..b67c598 --- /dev/null +++ b/Tests/RunCMake/target_compile_definitions/RunCMakeTest.cmake @@ -0,0 +1,3 @@ +include(RunCMake) + +run_cmake(empty_keyword_args) diff --git a/Tests/RunCMake/target_compile_definitions/empty_keyword_args-result.txt b/Tests/RunCMake/target_compile_definitions/empty_keyword_args-result.txt new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/Tests/RunCMake/target_compile_definitions/empty_keyword_args-result.txt @@ -0,0 +1 @@ +1 diff --git a/Tests/RunCMake/target_compile_definitions/empty_keyword_args-stderr.txt b/Tests/RunCMake/target_compile_definitions/empty_keyword_args-stderr.txt new file mode 100644 index 0000000..d8fb3ba --- /dev/null +++ b/Tests/RunCMake/target_compile_definitions/empty_keyword_args-stderr.txt @@ -0,0 +1,5 @@ +CMake Error at empty_keyword_args.cmake:2 \(target_compile_definitions\): + target_compile_definitions may only set INTERFACE properties on INTERFACE + targets +Call Stack \(most recent call first\): + CMakeLists.txt:5 \(include\) diff --git a/Tests/RunCMake/target_compile_definitions/empty_keyword_args.cmake b/Tests/RunCMake/target_compile_definitions/empty_keyword_args.cmake new file mode 100644 index 0000000..cb94e87 --- /dev/null +++ b/Tests/RunCMake/target_compile_definitions/empty_keyword_args.cmake @@ -0,0 +1,5 @@ +add_library(iface INTERFACE) +target_compile_definitions(iface PUBLIC PRIVATE INTERFACE) +# Cannot be called with non-compilable targets. +#add_library(imported UNKNOWN IMPORTED) +#target_compile_definitions(imported PUBLIC PRIVATE INTERFACE) diff --git a/Tests/RunCMake/target_compile_features/RunCMakeTest.cmake b/Tests/RunCMake/target_compile_features/RunCMakeTest.cmake index 1f67f11..f8b0809 100644 --- a/Tests/RunCMake/target_compile_features/RunCMakeTest.cmake +++ b/Tests/RunCMake/target_compile_features/RunCMakeTest.cmake @@ -12,3 +12,4 @@ run_cmake(no_matching_cxx_feature) run_cmake(not_a_c_feature) run_cmake(no_matching_c_feature) run_cmake(cxx_not_enabled) +run_cmake(empty_keyword_args) diff --git a/Tests/RunCMake/target_compile_features/empty_keyword_args-result.txt b/Tests/RunCMake/target_compile_features/empty_keyword_args-result.txt new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/Tests/RunCMake/target_compile_features/empty_keyword_args-result.txt @@ -0,0 +1 @@ +1 diff --git a/Tests/RunCMake/target_compile_features/empty_keyword_args-stderr.txt b/Tests/RunCMake/target_compile_features/empty_keyword_args-stderr.txt new file mode 100644 index 0000000..eecd3cf --- /dev/null +++ b/Tests/RunCMake/target_compile_features/empty_keyword_args-stderr.txt @@ -0,0 +1,5 @@ +CMake Error at empty_keyword_args.cmake:2 \(target_compile_features\): + target_compile_features may only set INTERFACE properties on INTERFACE + targets +Call Stack \(most recent call first\): + CMakeLists.txt:3 \(include\) diff --git a/Tests/RunCMake/target_compile_features/empty_keyword_args.cmake b/Tests/RunCMake/target_compile_features/empty_keyword_args.cmake new file mode 100644 index 0000000..8d57c1c --- /dev/null +++ b/Tests/RunCMake/target_compile_features/empty_keyword_args.cmake @@ -0,0 +1,5 @@ +add_library(iface INTERFACE) +target_compile_features(iface PUBLIC PRIVATE INTERFACE) +# Cannot be called with non-compilable targets. +#add_library(imported UNKNOWN IMPORTED) +#target_compile_features(imported PUBLIC PRIVATE INTERFACE) diff --git a/Tests/RunCMake/target_compile_options/CMakeLists.txt b/Tests/RunCMake/target_compile_options/CMakeLists.txt new file mode 100644 index 0000000..14ef56e --- /dev/null +++ b/Tests/RunCMake/target_compile_options/CMakeLists.txt @@ -0,0 +1,5 @@ +cmake_minimum_required(VERSION 3.11) + +project(${RunCMake_TEST} LANGUAGES NONE) + +include(${RunCMake_TEST}.cmake) diff --git a/Tests/RunCMake/target_compile_options/RunCMakeTest.cmake b/Tests/RunCMake/target_compile_options/RunCMakeTest.cmake new file mode 100644 index 0000000..b67c598 --- /dev/null +++ b/Tests/RunCMake/target_compile_options/RunCMakeTest.cmake @@ -0,0 +1,3 @@ +include(RunCMake) + +run_cmake(empty_keyword_args) diff --git a/Tests/RunCMake/target_compile_options/empty_keyword_args-result.txt b/Tests/RunCMake/target_compile_options/empty_keyword_args-result.txt new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/Tests/RunCMake/target_compile_options/empty_keyword_args-result.txt @@ -0,0 +1 @@ +1 diff --git a/Tests/RunCMake/target_compile_options/empty_keyword_args-stderr.txt b/Tests/RunCMake/target_compile_options/empty_keyword_args-stderr.txt new file mode 100644 index 0000000..381ff48 --- /dev/null +++ b/Tests/RunCMake/target_compile_options/empty_keyword_args-stderr.txt @@ -0,0 +1,5 @@ +CMake Error at empty_keyword_args.cmake:2 \(target_compile_options\): + target_compile_options may only set INTERFACE properties on INTERFACE + targets +Call Stack \(most recent call first\): + CMakeLists.txt:5 \(include\) diff --git a/Tests/RunCMake/target_compile_options/empty_keyword_args.cmake b/Tests/RunCMake/target_compile_options/empty_keyword_args.cmake new file mode 100644 index 0000000..8b92fcf --- /dev/null +++ b/Tests/RunCMake/target_compile_options/empty_keyword_args.cmake @@ -0,0 +1,5 @@ +add_library(iface INTERFACE) +target_compile_options(iface PUBLIC PRIVATE INTERFACE) +# Cannot be called with non-compilable targets. +#add_library(imported UNKNOWN IMPORTED) +#target_compile_options(imported PUBLIC PRIVATE INTERFACE) diff --git a/Tests/RunCMake/target_include_directories/CMakeLists.txt b/Tests/RunCMake/target_include_directories/CMakeLists.txt new file mode 100644 index 0000000..14ef56e --- /dev/null +++ b/Tests/RunCMake/target_include_directories/CMakeLists.txt @@ -0,0 +1,5 @@ +cmake_minimum_required(VERSION 3.11) + +project(${RunCMake_TEST} LANGUAGES NONE) + +include(${RunCMake_TEST}.cmake) diff --git a/Tests/RunCMake/target_include_directories/RunCMakeTest.cmake b/Tests/RunCMake/target_include_directories/RunCMakeTest.cmake new file mode 100644 index 0000000..b67c598 --- /dev/null +++ b/Tests/RunCMake/target_include_directories/RunCMakeTest.cmake @@ -0,0 +1,3 @@ +include(RunCMake) + +run_cmake(empty_keyword_args) diff --git a/Tests/RunCMake/target_include_directories/empty_keyword_args-result.txt b/Tests/RunCMake/target_include_directories/empty_keyword_args-result.txt new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/Tests/RunCMake/target_include_directories/empty_keyword_args-result.txt @@ -0,0 +1 @@ +1 diff --git a/Tests/RunCMake/target_include_directories/empty_keyword_args-stderr.txt b/Tests/RunCMake/target_include_directories/empty_keyword_args-stderr.txt new file mode 100644 index 0000000..6200703 --- /dev/null +++ b/Tests/RunCMake/target_include_directories/empty_keyword_args-stderr.txt @@ -0,0 +1,5 @@ +CMake Error at empty_keyword_args.cmake:2 \(target_include_directories\): + target_include_directories may only set INTERFACE properties on INTERFACE + targets +Call Stack \(most recent call first\): + CMakeLists.txt:5 \(include\) diff --git a/Tests/RunCMake/target_include_directories/empty_keyword_args.cmake b/Tests/RunCMake/target_include_directories/empty_keyword_args.cmake new file mode 100644 index 0000000..08eaf91 --- /dev/null +++ b/Tests/RunCMake/target_include_directories/empty_keyword_args.cmake @@ -0,0 +1,5 @@ +add_library(iface INTERFACE) +target_include_directories(iface PUBLIC PRIVATE INTERFACE) +# Cannot be called with non-compilable targets. +#add_library(imported UNKNOWN IMPORTED) +#target_include_directories(imported PUBLIC PRIVATE INTERFACE) diff --git a/Tests/RunCMake/target_link_directories/CMakeLists.txt b/Tests/RunCMake/target_link_directories/CMakeLists.txt new file mode 100644 index 0000000..14ef56e --- /dev/null +++ b/Tests/RunCMake/target_link_directories/CMakeLists.txt @@ -0,0 +1,5 @@ +cmake_minimum_required(VERSION 3.11) + +project(${RunCMake_TEST} LANGUAGES NONE) + +include(${RunCMake_TEST}.cmake) diff --git a/Tests/RunCMake/target_link_directories/RunCMakeTest.cmake b/Tests/RunCMake/target_link_directories/RunCMakeTest.cmake new file mode 100644 index 0000000..b67c598 --- /dev/null +++ b/Tests/RunCMake/target_link_directories/RunCMakeTest.cmake @@ -0,0 +1,3 @@ +include(RunCMake) + +run_cmake(empty_keyword_args) diff --git a/Tests/RunCMake/target_link_directories/empty_keyword_args-result.txt b/Tests/RunCMake/target_link_directories/empty_keyword_args-result.txt new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/Tests/RunCMake/target_link_directories/empty_keyword_args-result.txt @@ -0,0 +1 @@ +1 diff --git a/Tests/RunCMake/target_link_directories/empty_keyword_args-stderr.txt b/Tests/RunCMake/target_link_directories/empty_keyword_args-stderr.txt new file mode 100644 index 0000000..26ee9a1 --- /dev/null +++ b/Tests/RunCMake/target_link_directories/empty_keyword_args-stderr.txt @@ -0,0 +1,5 @@ +CMake Error at empty_keyword_args.cmake:2 \(target_link_directories\): + target_link_directories may only set INTERFACE properties on INTERFACE + targets +Call Stack \(most recent call first\): + CMakeLists.txt:5 \(include\) diff --git a/Tests/RunCMake/target_link_directories/empty_keyword_args.cmake b/Tests/RunCMake/target_link_directories/empty_keyword_args.cmake new file mode 100644 index 0000000..aadf80a --- /dev/null +++ b/Tests/RunCMake/target_link_directories/empty_keyword_args.cmake @@ -0,0 +1,5 @@ +add_library(iface INTERFACE) +target_link_directories(iface PUBLIC PRIVATE INTERFACE) +# Cannot be called with non-compilable targets. +#add_library(imported UNKNOWN IMPORTED) +#target_link_directories(imported PUBLIC PRIVATE INTERFACE) diff --git a/Tests/RunCMake/target_link_libraries/RunCMakeTest.cmake b/Tests/RunCMake/target_link_libraries/RunCMakeTest.cmake index a041d6d..0152d4c 100644 --- a/Tests/RunCMake/target_link_libraries/RunCMakeTest.cmake +++ b/Tests/RunCMake/target_link_libraries/RunCMakeTest.cmake @@ -19,3 +19,4 @@ run_cmake(SharedDepNotTarget) run_cmake(StaticPrivateDepNotExported) run_cmake(StaticPrivateDepNotTarget) run_cmake(UNKNOWN-IMPORTED-GLOBAL) +run_cmake(empty_keyword_args) diff --git a/Tests/RunCMake/target_link_libraries/empty_keyword_args.cmake b/Tests/RunCMake/target_link_libraries/empty_keyword_args.cmake new file mode 100644 index 0000000..440fa06 --- /dev/null +++ b/Tests/RunCMake/target_link_libraries/empty_keyword_args.cmake @@ -0,0 +1,4 @@ +add_library(iface INTERFACE) +target_link_libraries(iface PUBLIC PRIVATE INTERFACE) +add_library(imported UNKNOWN IMPORTED) +target_link_libraries(imported PUBLIC PRIVATE INTERFACE) diff --git a/Tests/RunCMake/target_link_options/RunCMakeTest.cmake b/Tests/RunCMake/target_link_options/RunCMakeTest.cmake index 1eaa5d2..1d9ef8b 100644 --- a/Tests/RunCMake/target_link_options/RunCMakeTest.cmake +++ b/Tests/RunCMake/target_link_options/RunCMakeTest.cmake @@ -39,3 +39,5 @@ if(RunCMake_GENERATOR MATCHES "(Ninja|Makefile)") run_cmake_target(LINKER_expansion LINKER linker) run_cmake_target(LINKER_expansion LINKER_SHELL linker_shell) endif() + +run_cmake(empty_keyword_args) diff --git a/Tests/RunCMake/target_link_options/empty_keyword_args-result.txt b/Tests/RunCMake/target_link_options/empty_keyword_args-result.txt new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/Tests/RunCMake/target_link_options/empty_keyword_args-result.txt @@ -0,0 +1 @@ +1 diff --git a/Tests/RunCMake/target_link_options/empty_keyword_args-stderr.txt b/Tests/RunCMake/target_link_options/empty_keyword_args-stderr.txt new file mode 100644 index 0000000..0103d00 --- /dev/null +++ b/Tests/RunCMake/target_link_options/empty_keyword_args-stderr.txt @@ -0,0 +1,4 @@ +CMake Error at empty_keyword_args.cmake:2 \(target_link_options\): + target_link_options may only set INTERFACE properties on INTERFACE targets +Call Stack \(most recent call first\): + CMakeLists.txt:5 \(include\) diff --git a/Tests/RunCMake/target_link_options/empty_keyword_args.cmake b/Tests/RunCMake/target_link_options/empty_keyword_args.cmake new file mode 100644 index 0000000..a1a297e --- /dev/null +++ b/Tests/RunCMake/target_link_options/empty_keyword_args.cmake @@ -0,0 +1,5 @@ +add_library(iface INTERFACE) +target_link_options(iface PUBLIC PRIVATE INTERFACE) +# Cannot be called with non-compilable targets. +#add_library(imported UNKNOWN IMPORTED) +#target_link_options(imported PUBLIC PRIVATE INTERFACE) diff --git a/Tests/RunCMake/target_sources/CMakeLists.txt b/Tests/RunCMake/target_sources/CMakeLists.txt new file mode 100644 index 0000000..14ef56e --- /dev/null +++ b/Tests/RunCMake/target_sources/CMakeLists.txt @@ -0,0 +1,5 @@ +cmake_minimum_required(VERSION 3.11) + +project(${RunCMake_TEST} LANGUAGES NONE) + +include(${RunCMake_TEST}.cmake) diff --git a/Tests/RunCMake/target_sources/RunCMakeTest.cmake b/Tests/RunCMake/target_sources/RunCMakeTest.cmake new file mode 100644 index 0000000..b67c598 --- /dev/null +++ b/Tests/RunCMake/target_sources/RunCMakeTest.cmake @@ -0,0 +1,3 @@ +include(RunCMake) + +run_cmake(empty_keyword_args) diff --git a/Tests/RunCMake/target_sources/empty_keyword_args-result.txt b/Tests/RunCMake/target_sources/empty_keyword_args-result.txt new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/Tests/RunCMake/target_sources/empty_keyword_args-result.txt @@ -0,0 +1 @@ +1 diff --git a/Tests/RunCMake/target_sources/empty_keyword_args-stderr.txt b/Tests/RunCMake/target_sources/empty_keyword_args-stderr.txt new file mode 100644 index 0000000..9ff5bb0 --- /dev/null +++ b/Tests/RunCMake/target_sources/empty_keyword_args-stderr.txt @@ -0,0 +1,4 @@ +CMake Error at empty_keyword_args.cmake:2 \(target_sources\): + target_sources may only set INTERFACE properties on INTERFACE targets +Call Stack \(most recent call first\): + CMakeLists.txt:5 \(include\) diff --git a/Tests/RunCMake/target_sources/empty_keyword_args.cmake b/Tests/RunCMake/target_sources/empty_keyword_args.cmake new file mode 100644 index 0000000..5cee451 --- /dev/null +++ b/Tests/RunCMake/target_sources/empty_keyword_args.cmake @@ -0,0 +1,5 @@ +add_library(iface INTERFACE) +target_sources(iface PUBLIC PRIVATE INTERFACE) +# Cannot be called with non-compilable targets. +#add_library(imported UNKNOWN IMPORTED) +#target_sources(imported PUBLIC PRIVATE INTERFACE) https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3eebe28ef41a298f9743db44a7265742891fc225 commit 3eebe28ef41a298f9743db44a7265742891fc225 Author: Mateusz Zych <mte.z...@gmail.com> AuthorDate: Sat Oct 6 22:29:37 2018 +0200 Commit: Brad King <brad.k...@kitware.com> CommitDate: Fri Oct 26 11:31:37 2018 -0400 cmLocalNinjaGenerator: Simplify CreateRulePlaceholderExpander Re-use the derived class implementation instead of duplicating it. diff --git a/Source/cmLocalNinjaGenerator.cxx b/Source/cmLocalNinjaGenerator.cxx index eb31478..66edc91 100644 --- a/Source/cmLocalNinjaGenerator.cxx +++ b/Source/cmLocalNinjaGenerator.cxx @@ -17,6 +17,7 @@ #include "cmGeneratorTarget.h" #include "cmGlobalGenerator.h" #include "cmGlobalNinjaGenerator.h" +#include "cmLocalGenerator.h" #include "cmMakefile.h" #include "cmNinjaTargetGenerator.h" #include "cmRulePlaceholderExpander.h" @@ -40,8 +41,7 @@ cmRulePlaceholderExpander* cmLocalNinjaGenerator::CreateRulePlaceholderExpander() const { cmRulePlaceholderExpander* ret = - new cmRulePlaceholderExpander(this->Compilers, this->VariableMappings, - this->CompilerSysroot, this->LinkerSysroot); + this->cmLocalGenerator::CreateRulePlaceholderExpander(); ret->SetTargetImpLib("$TARGET_IMPLIB"); return ret; } ----------------------------------------------------------------------- Summary of changes: Help/release/dev/FindGDAL-target.rst | 4 ++ Modules/CMakeASMCompiler.cmake.in | 1 + Modules/CMakeCCompiler.cmake.in | 1 + Modules/CMakeCUDACompiler.cmake.in | 3 ++ Modules/CMakeCXXCompiler.cmake.in | 1 + Modules/CMakeFindBinUtils.cmake | 53 ++++++++++++++------ Modules/FindGDAL.cmake | 57 +++++++++++++++++----- Modules/Platform/Windows-MSVC.cmake | 9 ++-- Modules/Platform/Windows-NVIDIA-CUDA.cmake | 6 ++- Source/cmLocalGenerator.cxx | 1 + Source/cmLocalNinjaGenerator.cxx | 4 +- Source/cmTargetPropCommandBase.cxx | 25 ++++++---- Source/cmcmd.cxx | 12 ++++- Tests/CMakeLists.txt | 4 ++ Tests/FindGDAL/CMakeLists.txt | 10 ++++ Tests/FindGDAL/Test/CMakeLists.txt | 16 ++++++ Tests/FindGDAL/Test/main.c | 11 +++++ Tests/RunCMake/CMakeLists.txt | 5 ++ .../CMakeLists.txt | 0 .../target_compile_definitions/RunCMakeTest.cmake | 3 ++ .../empty_keyword_args.cmake | 5 ++ .../target_compile_features/RunCMakeTest.cmake | 1 + .../empty_keyword_args.cmake | 5 ++ .../CMakeLists.txt | 0 .../target_compile_options/RunCMakeTest.cmake | 3 ++ .../empty_keyword_args.cmake | 5 ++ .../CMakeLists.txt | 0 .../target_include_directories/RunCMakeTest.cmake | 3 ++ .../empty_keyword_args.cmake | 5 ++ .../CMakeLists.txt | 0 .../target_link_directories/RunCMakeTest.cmake | 3 ++ .../empty_keyword_args.cmake | 5 ++ .../target_link_libraries/RunCMakeTest.cmake | 1 + .../target_link_libraries/empty_keyword_args.cmake | 4 ++ .../target_link_options/RunCMakeTest.cmake | 2 + .../target_link_options/empty_keyword_args.cmake | 5 ++ .../CMakeLists.txt | 0 Tests/RunCMake/target_sources/RunCMakeTest.cmake | 3 ++ .../target_sources/empty_keyword_args.cmake | 5 ++ 39 files changed, 235 insertions(+), 46 deletions(-) create mode 100644 Help/release/dev/FindGDAL-target.rst create mode 100644 Tests/FindGDAL/CMakeLists.txt create mode 100644 Tests/FindGDAL/Test/CMakeLists.txt create mode 100644 Tests/FindGDAL/Test/main.c copy Tests/RunCMake/{target_link_options => target_compile_definitions}/CMakeLists.txt (100%) create mode 100644 Tests/RunCMake/target_compile_definitions/RunCMakeTest.cmake create mode 100644 Tests/RunCMake/target_compile_definitions/empty_keyword_args.cmake create mode 100644 Tests/RunCMake/target_compile_features/empty_keyword_args.cmake copy Tests/RunCMake/{target_link_options => target_compile_options}/CMakeLists.txt (100%) create mode 100644 Tests/RunCMake/target_compile_options/RunCMakeTest.cmake create mode 100644 Tests/RunCMake/target_compile_options/empty_keyword_args.cmake copy Tests/RunCMake/{target_link_options => target_include_directories}/CMakeLists.txt (100%) create mode 100644 Tests/RunCMake/target_include_directories/RunCMakeTest.cmake create mode 100644 Tests/RunCMake/target_include_directories/empty_keyword_args.cmake copy Tests/RunCMake/{target_link_options => target_link_directories}/CMakeLists.txt (100%) create mode 100644 Tests/RunCMake/target_link_directories/RunCMakeTest.cmake create mode 100644 Tests/RunCMake/target_link_directories/empty_keyword_args.cmake create mode 100644 Tests/RunCMake/target_link_libraries/empty_keyword_args.cmake create mode 100644 Tests/RunCMake/target_link_options/empty_keyword_args.cmake copy Tests/RunCMake/{target_link_options => target_sources}/CMakeLists.txt (100%) create mode 100644 Tests/RunCMake/target_sources/RunCMakeTest.cmake create mode 100644 Tests/RunCMake/target_sources/empty_keyword_args.cmake hooks/post-receive -- CMake _______________________________________________ Cmake-commits mailing list Cmake-commits@cmake.org https://cmake.org/mailman/listinfo/cmake-commits