Tests: Run IfacePaths tests with a parameter.
Run the tests for the INCLUDE_DIRECTORIES INTERFACE property in a specific build location, and update the stderr expectation to match the new output.
This commit is contained in:
parent
cc15209476
commit
d9f8390db6
|
@ -188,7 +188,9 @@ add_RunCMake_test(CommandLine)
|
||||||
add_RunCMake_test(install)
|
add_RunCMake_test(install)
|
||||||
add_RunCMake_test(CPackInstallProperties)
|
add_RunCMake_test(CPackInstallProperties)
|
||||||
add_RunCMake_test(ExternalProject)
|
add_RunCMake_test(ExternalProject)
|
||||||
add_RunCMake_test(IfacePaths)
|
|
||||||
|
set(IfacePaths_INCLUDE_DIRECTORIES_ARGS -DTEST_PROP=INCLUDE_DIRECTORIES)
|
||||||
|
add_RunCMake_test(IfacePaths_INCLUDE_DIRECTORIES TEST_DIR IfacePaths)
|
||||||
|
|
||||||
if(RPMBUILD)
|
if(RPMBUILD)
|
||||||
add_RunCMake_test(CPackRPM)
|
add_RunCMake_test(CPackRPM)
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
CMake Error in CMakeLists.txt:
|
CMake Error in CMakeLists.txt:
|
||||||
Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path:
|
Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path:
|
||||||
|
|
||||||
".*Tests/RunCMake/IfacePaths/prefix/BinInInstallPrefix-CMP0052-NEW-build/foo"
|
".*Tests/RunCMake/IfacePaths_INCLUDE_DIRECTORIES/prefix/BinInInstallPrefix-CMP0052-NEW-build/foo"
|
||||||
|
|
||||||
which is prefixed in the build directory.
|
which is prefixed in the build directory.
|
||||||
|
|
|
@ -6,15 +6,15 @@ CMake Warning \(dev\) in CMakeLists.txt:
|
||||||
|
|
||||||
Directory:
|
Directory:
|
||||||
|
|
||||||
".*Tests/RunCMake/IfacePaths/prefix/BinInInstallPrefix-CMP0052-WARN-build/foo"
|
".*Tests/RunCMake/IfacePaths_INCLUDE_DIRECTORIES/prefix/BinInInstallPrefix-CMP0052-WARN-build/foo"
|
||||||
|
|
||||||
in INTERFACE_INCLUDE_DIRECTORIES of target "testTarget" is a subdirectory
|
in INTERFACE_INCLUDE_DIRECTORIES of target "testTarget" is a subdirectory
|
||||||
of the install directory:
|
of the install directory:
|
||||||
|
|
||||||
".*Tests/RunCMake/IfacePaths/prefix"
|
".*Tests/RunCMake/IfacePaths_INCLUDE_DIRECTORIES/prefix"
|
||||||
|
|
||||||
however it is also a subdirectory of the build tree:
|
however it is also a subdirectory of the build tree:
|
||||||
|
|
||||||
".*Tests/RunCMake/IfacePaths/prefix/BinInInstallPrefix-CMP0052-WARN-build"
|
".*Tests/RunCMake/IfacePaths_INCLUDE_DIRECTORIES/prefix/BinInInstallPrefix-CMP0052-WARN-build"
|
||||||
|
|
||||||
This warning is for project developers. Use -Wno-dev to suppress it.
|
This warning is for project developers. Use -Wno-dev to suppress it.
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
CMake Error in CMakeLists.txt:
|
CMake Error in CMakeLists.txt:
|
||||||
Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path:
|
Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path:
|
||||||
|
|
||||||
".*RunCMake/IfacePaths/BinaryDirectoryInInterface-build/foo"
|
".*RunCMake/IfacePaths_INCLUDE_DIRECTORIES/BinaryDirectoryInInterface-build/foo"
|
||||||
|
|
||||||
which is prefixed in the build directory.
|
which is prefixed in the build directory.
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
CMake Error in CMakeLists.txt:
|
CMake Error in CMakeLists.txt:
|
||||||
Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path:
|
Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path:
|
||||||
|
|
||||||
".*Tests/RunCMake/IfacePaths/InstallInBinDir-build/foo"
|
".*Tests/RunCMake/IfacePaths_INCLUDE_DIRECTORIES/InstallInBinDir-build/foo"
|
||||||
|
|
||||||
which is prefixed in the build directory.
|
which is prefixed in the build directory.
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
CMake Error in CMakeLists.txt:
|
CMake Error in CMakeLists.txt:
|
||||||
Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path:
|
Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path:
|
||||||
|
|
||||||
".*Tests/RunCMake/IfacePaths/copy/foo"
|
".*Tests/RunCMake/IfacePaths_INCLUDE_DIRECTORIES/copy/foo"
|
||||||
|
|
||||||
which is prefixed in the source directory.
|
which is prefixed in the source directory.
|
||||||
|
|
|
@ -1,5 +1,10 @@
|
||||||
include(RunCMake)
|
include(RunCMake)
|
||||||
|
|
||||||
|
macro(run_cmake test)
|
||||||
|
list(APPEND RunCMake_TEST_OPTIONS -DTEST_PROP=${TEST_PROP})
|
||||||
|
_run_cmake(${test})
|
||||||
|
endmacro()
|
||||||
|
|
||||||
run_cmake(RelativePathInInterface)
|
run_cmake(RelativePathInInterface)
|
||||||
run_cmake(RelativePathInGenex)
|
run_cmake(RelativePathInGenex)
|
||||||
run_cmake(export-NOWARN)
|
run_cmake(export-NOWARN)
|
||||||
|
@ -57,12 +62,15 @@ configure_file(
|
||||||
COPYONLY
|
COPYONLY
|
||||||
)
|
)
|
||||||
|
|
||||||
foreach(policyStatus "" NEW OLD)
|
foreach(policyStatus NEW OLD "")
|
||||||
if (NOT "${policyStatus}" STREQUAL "")
|
if (TEST_PROP STREQUAL INCLUDE_DIRECTORIES)
|
||||||
set(policyOption -DCMAKE_POLICY_DEFAULT_CMP0052=${policyStatus})
|
if (NOT "${policyStatus}" STREQUAL "")
|
||||||
else()
|
set(policyOption -DCMAKE_POLICY_DEFAULT_CMP0052=${policyStatus})
|
||||||
unset(policyOption)
|
else()
|
||||||
set(policyStatus WARN)
|
unset(policyOption)
|
||||||
|
set(policyStatus WARN)
|
||||||
|
endif()
|
||||||
|
set(policySuffix -CMP0052-${policyStatus})
|
||||||
endif()
|
endif()
|
||||||
set(RunCMake_TEST_OPTIONS
|
set(RunCMake_TEST_OPTIONS
|
||||||
"-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/prefix" ${policyOption}
|
"-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/prefix" ${policyOption}
|
||||||
|
@ -73,16 +81,20 @@ foreach(policyStatus "" NEW OLD)
|
||||||
# a subdirectory or the source directory, which is allowed and tested separately
|
# a subdirectory or the source directory, which is allowed and tested separately
|
||||||
# below.
|
# below.
|
||||||
set(RunCMake_TEST_SOURCE_DIR "${RunCMake_BINARY_DIR}/prefix/src")
|
set(RunCMake_TEST_SOURCE_DIR "${RunCMake_BINARY_DIR}/prefix/src")
|
||||||
set(RunCMake_TEST_BINARY_DIR "${RunCMake_BINARY_DIR}/prefix/BinInInstallPrefix-CMP0052-${policyStatus}-build")
|
set(RunCMake_TEST_BINARY_DIR "${RunCMake_BINARY_DIR}/prefix/BinInInstallPrefix${policySuffix}-build")
|
||||||
run_cmake(BinInInstallPrefix-CMP0052-${policyStatus})
|
run_cmake(BinInInstallPrefix${policySuffix})
|
||||||
unset(RunCMake_TEST_BINARY_DIR)
|
unset(RunCMake_TEST_BINARY_DIR)
|
||||||
|
|
||||||
set(RunCMake_TEST_OPTIONS
|
set(RunCMake_TEST_OPTIONS
|
||||||
"-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/prefix" ${policyOption}
|
"-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/prefix" ${policyOption}
|
||||||
"-DTEST_FILE=${RunCMake_BINARY_DIR}/prefix/src/SourceDirectoryInInterface.cmake"
|
"-DTEST_FILE=${RunCMake_BINARY_DIR}/prefix/src/SourceDirectoryInInterface.cmake"
|
||||||
)
|
)
|
||||||
run_cmake(SrcInInstallPrefix-CMP0052-${policyStatus})
|
run_cmake(SrcInInstallPrefix${policySuffix})
|
||||||
unset(RunCMake_TEST_SOURCE_DIR)
|
unset(RunCMake_TEST_SOURCE_DIR)
|
||||||
|
|
||||||
|
if (NOT TEST_PROP STREQUAL INCLUDE_DIRECTORIES)
|
||||||
|
break()
|
||||||
|
endif()
|
||||||
endforeach()
|
endforeach()
|
||||||
|
|
||||||
set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/InstallPrefixInInterface-build/prefix")
|
set(RunCMake_TEST_OPTIONS "-DCMAKE_INSTALL_PREFIX=${RunCMake_BINARY_DIR}/InstallPrefixInInterface-build/prefix")
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
CMake Error in CMakeLists.txt:
|
CMake Error in CMakeLists.txt:
|
||||||
Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path:
|
Target "testTarget" INTERFACE_INCLUDE_DIRECTORIES property contains path:
|
||||||
|
|
||||||
".*Tests/RunCMake/IfacePaths/prefix/src/foo"
|
".*Tests/RunCMake/IfacePaths_INCLUDE_DIRECTORIES/prefix/src/foo"
|
||||||
|
|
||||||
which is prefixed in the source directory.
|
which is prefixed in the source directory.
|
||||||
|
|
|
@ -6,15 +6,15 @@ CMake Warning \(dev\) in CMakeLists.txt:
|
||||||
|
|
||||||
Directory:
|
Directory:
|
||||||
|
|
||||||
".*Tests/RunCMake/IfacePaths/prefix/src/foo"
|
".*Tests/RunCMake/IfacePaths_INCLUDE_DIRECTORIES/prefix/src/foo"
|
||||||
|
|
||||||
in INTERFACE_INCLUDE_DIRECTORIES of target "testTarget" is a subdirectory
|
in INTERFACE_INCLUDE_DIRECTORIES of target "testTarget" is a subdirectory
|
||||||
of the install directory:
|
of the install directory:
|
||||||
|
|
||||||
".*Tests/RunCMake/IfacePaths/prefix"
|
".*Tests/RunCMake/IfacePaths_INCLUDE_DIRECTORIES/prefix"
|
||||||
|
|
||||||
however it is also a subdirectory of the source tree:
|
however it is also a subdirectory of the source tree:
|
||||||
|
|
||||||
".*Tests/RunCMake/IfacePaths/prefix/src"
|
".*Tests/RunCMake/IfacePaths_INCLUDE_DIRECTORIES/prefix/src"
|
||||||
|
|
||||||
This warning is for project developers. Use -Wno-dev to suppress it.
|
This warning is for project developers. Use -Wno-dev to suppress it.
|
||||||
|
|
Loading…
Reference in New Issue