mirror of
https://github.com/Kitware/CMake.git
synced 2025-12-31 10:50:16 -06:00
CMP0128: Avoid test code duplication
This commit is contained in:
7
Tests/RunCMake/CompileFeatures/CMP0128Common.cmake
Normal file
7
Tests/RunCMake/CompileFeatures/CMP0128Common.cmake
Normal file
@@ -0,0 +1,7 @@
|
||||
enable_language(@lang@)
|
||||
|
||||
# Make sure the compile command is not hidden.
|
||||
string(REPLACE "${CMAKE_START_TEMP_FILE}" "" CMAKE_@lang@_COMPILE_OBJECT "${CMAKE_@lang@_COMPILE_OBJECT}")
|
||||
string(REPLACE "${CMAKE_END_TEMP_FILE}" "" CMAKE_@lang@_COMPILE_OBJECT "${CMAKE_@lang@_COMPILE_OBJECT}")
|
||||
|
||||
add_library(foo "@RunCMake_SOURCE_DIR@/empty.@ext@")
|
||||
@@ -1,9 +1,2 @@
|
||||
enable_language(@lang@)
|
||||
|
||||
# Make sure the compile command is not hidden.
|
||||
string(REPLACE "${CMAKE_START_TEMP_FILE}" "" CMAKE_@lang@_COMPILE_OBJECT "${CMAKE_@lang@_COMPILE_OBJECT}")
|
||||
string(REPLACE "${CMAKE_END_TEMP_FILE}" "" CMAKE_@lang@_COMPILE_OBJECT "${CMAKE_@lang@_COMPILE_OBJECT}")
|
||||
|
||||
set(CMAKE_@lang@_EXTENSIONS @extensions_opposite@)
|
||||
set(CMAKE_@lang@_STANDARD @standard_default@)
|
||||
add_library(foo "@RunCMake_SOURCE_DIR@/empty.@ext@")
|
||||
|
||||
@@ -1,8 +1 @@
|
||||
enable_language(@lang@)
|
||||
|
||||
# Make sure the compile command is not hidden.
|
||||
string(REPLACE "${CMAKE_START_TEMP_FILE}" "" CMAKE_@lang@_COMPILE_OBJECT "${CMAKE_@lang@_COMPILE_OBJECT}")
|
||||
string(REPLACE "${CMAKE_END_TEMP_FILE}" "" CMAKE_@lang@_COMPILE_OBJECT "${CMAKE_@lang@_COMPILE_OBJECT}")
|
||||
|
||||
set(CMAKE_@lang@_EXTENSIONS @extensions_opposite@)
|
||||
add_library(foo "@RunCMake_SOURCE_DIR@/empty.@ext@")
|
||||
|
||||
@@ -1,9 +1,2 @@
|
||||
enable_language(@lang@)
|
||||
|
||||
# Make sure the compile command is not hidden.
|
||||
string(REPLACE "${CMAKE_START_TEMP_FILE}" "" CMAKE_@lang@_COMPILE_OBJECT "${CMAKE_@lang@_COMPILE_OBJECT}")
|
||||
string(REPLACE "${CMAKE_END_TEMP_FILE}" "" CMAKE_@lang@_COMPILE_OBJECT "${CMAKE_@lang@_COMPILE_OBJECT}")
|
||||
|
||||
set(CMAKE_@lang@_EXTENSIONS @extensions_default@)
|
||||
set(CMAKE_@lang@_STANDARD @standard_default@)
|
||||
add_library(foo "@RunCMake_SOURCE_DIR@/empty.@ext@")
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
enable_language(@lang@)
|
||||
cmake_policy(SET CMP0128 OLD)
|
||||
set(CMAKE_POLICY_WARNING_CMP0128 ON)
|
||||
|
||||
set(CMAKE_@lang@_EXTENSIONS @extensions_default@)
|
||||
set(CMAKE_@lang@_STANDARD @standard_default@)
|
||||
add_library(foo "@RunCMake_SOURCE_DIR@/empty.@ext@")
|
||||
|
||||
@@ -1,6 +1,4 @@
|
||||
enable_language(@lang@)
|
||||
cmake_policy(SET CMP0128 OLD)
|
||||
set(CMAKE_POLICY_WARNING_CMP0128 ON)
|
||||
|
||||
set(CMAKE_@lang@_EXTENSIONS @extensions_opposite@)
|
||||
add_library(foo "@RunCMake_SOURCE_DIR@/empty.@ext@")
|
||||
|
||||
@@ -35,11 +35,13 @@ elseif (cxx_std_98 IN_LIST CXX_FEATURES AND cxx_std_11 IN_LIST CXX_FEATURES)
|
||||
endif()
|
||||
|
||||
configure_file("${RunCMake_SOURCE_DIR}/CMakeLists.txt" "${RunCMake_BINARY_DIR}/CMakeLists.txt" COPYONLY)
|
||||
file(READ "${RunCMake_SOURCE_DIR}/CMP0128Common.cmake" cmp0128_common)
|
||||
|
||||
function(test_build)
|
||||
set(test ${name}-${lang})
|
||||
|
||||
configure_file("${RunCMake_SOURCE_DIR}/${name}.cmake" "${RunCMake_BINARY_DIR}/${test}.cmake" @ONLY)
|
||||
file(READ "${RunCMake_SOURCE_DIR}/${name}.cmake" cmake)
|
||||
file(CONFIGURE OUTPUT "${RunCMake_BINARY_DIR}/${test}.cmake" CONTENT "${cmake}${cmp0128_common}" @ONLY)
|
||||
if(EXISTS "${RunCMake_SOURCE_DIR}/${name}-build-check.cmake")
|
||||
configure_file("${RunCMake_SOURCE_DIR}/${name}-build-check.cmake" "${RunCMake_BINARY_DIR}/${test}-build-check.cmake" @ONLY)
|
||||
endif()
|
||||
|
||||
Reference in New Issue
Block a user