236133e79e
Imported targets are re-exported so that they can be used by the try_compile generated code with target_link_libraries. This makes the use of the cmake_expand_imported_targets macro obsolete. The macro is not able to expand the generator expressions which may appear in the IMPORTED_LINK_INTERFACE_LIBRARIES content. Instead it just sees them as 'not a target'.
22 lines
731 B
CMake
22 lines
731 B
CMake
cmake_minimum_required (VERSION 2.7.20090711)
|
|
project(Import C CXX)
|
|
|
|
# Import everything in a subdirectory.
|
|
add_subdirectory(A)
|
|
|
|
# Make sure the imported targets are scoped inside the subdirectory.
|
|
if(TARGET exp_testLib2)
|
|
message(FATAL_ERROR "Imported target exp_testLib2 is not scoped in subdir!")
|
|
endif()
|
|
if(TARGET bld_testLib2)
|
|
message(FATAL_ERROR "Imported target bld_testLib2 is not scoped in subdir!")
|
|
endif()
|
|
|
|
# Test transitive linking to a target imported in the subdirectory.
|
|
add_executable(imp_testTransExe1 imp_testTransExe1.c)
|
|
target_link_libraries(imp_testTransExe1 imp_lib1)
|
|
add_executable(imp_testTransExe1b imp_testTransExe1.c)
|
|
target_link_libraries(imp_testTransExe1b imp_lib1b)
|
|
|
|
add_subdirectory(try_compile)
|