diff options
Diffstat (limited to 'Tests/RunCMake')
7 files changed, 36 insertions, 0 deletions
diff --git a/Tests/RunCMake/add_subdirectory/ExcludeFromAll.cmake b/Tests/RunCMake/add_subdirectory/ExcludeFromAll.cmake new file mode 100644 index 0000000..f686005 --- /dev/null +++ b/Tests/RunCMake/add_subdirectory/ExcludeFromAll.cmake @@ -0,0 +1,6 @@ +enable_language(CXX) + +add_subdirectory(ExcludeFromAll EXCLUDE_FROM_ALL) + +add_executable(main main.cpp) +target_link_libraries(main PRIVATE foo) diff --git a/Tests/RunCMake/add_subdirectory/ExcludeFromAll/CMakeLists.txt b/Tests/RunCMake/add_subdirectory/ExcludeFromAll/CMakeLists.txt new file mode 100644 index 0000000..b1df6b0 --- /dev/null +++ b/Tests/RunCMake/add_subdirectory/ExcludeFromAll/CMakeLists.txt @@ -0,0 +1,4 @@ +add_library(bar STATIC bar.cpp) + +add_library(foo STATIC foo.cpp) +target_include_directories(foo PUBLIC .) diff --git a/Tests/RunCMake/add_subdirectory/ExcludeFromAll/bar.cpp b/Tests/RunCMake/add_subdirectory/ExcludeFromAll/bar.cpp new file mode 100644 index 0000000..7a828bd --- /dev/null +++ b/Tests/RunCMake/add_subdirectory/ExcludeFromAll/bar.cpp @@ -0,0 +1 @@ +#error This should be excluded from all target diff --git a/Tests/RunCMake/add_subdirectory/ExcludeFromAll/foo.cpp b/Tests/RunCMake/add_subdirectory/ExcludeFromAll/foo.cpp new file mode 100644 index 0000000..c9ad322 --- /dev/null +++ b/Tests/RunCMake/add_subdirectory/ExcludeFromAll/foo.cpp @@ -0,0 +1,6 @@ +#include "foo.h" + +int foo() +{ + return 42; +} diff --git a/Tests/RunCMake/add_subdirectory/ExcludeFromAll/foo.h b/Tests/RunCMake/add_subdirectory/ExcludeFromAll/foo.h new file mode 100644 index 0000000..5d5f8f0 --- /dev/null +++ b/Tests/RunCMake/add_subdirectory/ExcludeFromAll/foo.h @@ -0,0 +1 @@ +int foo(); diff --git a/Tests/RunCMake/add_subdirectory/RunCMakeTest.cmake b/Tests/RunCMake/add_subdirectory/RunCMakeTest.cmake index 9d514e1..88b9283 100644 --- a/Tests/RunCMake/add_subdirectory/RunCMakeTest.cmake +++ b/Tests/RunCMake/add_subdirectory/RunCMakeTest.cmake @@ -3,3 +3,15 @@ include(RunCMake) run_cmake(DoesNotExist) run_cmake(Missing) run_cmake(Function) + +set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/ExcludeFromAll-build) +set(RunCMake_TEST_NO_CLEAN 1) + +file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}") +file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}") + +run_cmake(ExcludeFromAll) +run_cmake_command(ExcludeFromAll-build ${CMAKE_COMMAND} --build .) + +unset(RunCMake_TEST_BINARY_DIR) +unset(RunCMake_TEST_NO_CLEAN) diff --git a/Tests/RunCMake/add_subdirectory/main.cpp b/Tests/RunCMake/add_subdirectory/main.cpp new file mode 100644 index 0000000..1dc3906 --- /dev/null +++ b/Tests/RunCMake/add_subdirectory/main.cpp @@ -0,0 +1,6 @@ +#include "foo.h" + +int main(int, char**) +{ + return foo(); +} |