diff options
author | Brad King <brad.king@kitware.com> | 2013-11-02 18:49:49 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2013-11-02 18:51:07 (GMT) |
commit | 23d21b78e125c11a0d901eb987e5f616026ff8fd (patch) | |
tree | 6b80554df4b0c2f51e8ccfd7fd9a100620a2a400 /Tests/RunCMake/CMP0022/CMP0022-export-exe.cmake | |
parent | ef10b87cc1e87343a778c89d8a41d7e11ca08a7c (diff) | |
download | CMake-23d21b78e125c11a0d901eb987e5f616026ff8fd.zip CMake-23d21b78e125c11a0d901eb987e5f616026ff8fd.tar.gz CMake-23d21b78e125c11a0d901eb987e5f616026ff8fd.tar.bz2 |
Do not export INTERFACE_LINK_LIBRARIES from non-linkable targets
When cmExportFileGenerator::SetImportLinkInterface exports the old
LINK_INTERFACE_LIBRARIES property values it skips doing so for
non-linkable targets because target->GetLinkInterface returns NULL for
such targets.
Since cmExportFileGenerator::PopulateInterfaceLinkLibrariesProperty
looks at the INTERFACE_LINK_LIBRARIES property directly instead of using
the computed link interface, teach it to skip exporting the property if
target->IsLinkable returns false.
Extend the RunCMake.CMP0022 test with a case covering this. Simply
export an executable target that links to a library that is not
exported.
Diffstat (limited to 'Tests/RunCMake/CMP0022/CMP0022-export-exe.cmake')
-rw-r--r-- | Tests/RunCMake/CMP0022/CMP0022-export-exe.cmake | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/Tests/RunCMake/CMP0022/CMP0022-export-exe.cmake b/Tests/RunCMake/CMP0022/CMP0022-export-exe.cmake new file mode 100644 index 0000000..d832fac --- /dev/null +++ b/Tests/RunCMake/CMP0022/CMP0022-export-exe.cmake @@ -0,0 +1,9 @@ +enable_language(CXX) + +cmake_policy(SET CMP0022 NEW) + +add_library(testLib empty_vs6_1.cpp) +add_executable(testExe empty_vs6_2.cpp) +target_link_libraries(testExe testLib) + +export(TARGETS testExe FILE "${CMAKE_CURRENT_BINARY_DIR}/cmp0022NEW-exe.cmake") |