diff options
author | dan sinclair <dj2@everburning.com> | 2019-03-08 14:18:10 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-03-08 14:18:10 -0500 |
commit | 596650447e65b80486cd5c83c278d1be46f348d5 (patch) | |
tree | 5bb7df7474dd24882d59acbec81948e46689bf80 /third_party | |
parent | 5bd86e6705c3d91247fbca5c447dc7a6ef054aed (diff) | |
download | amber-596650447e65b80486cd5c83c278d1be46f348d5.tar.gz |
Force cmake settings into the cache. (#341)
If you have settings which are defined by OPTIONS in the subprojects, you
can not set those options if the cmake version is too low. There is a
policy CMP0077 which can be set, but that gets reset as soon as the
cmake_minimium_required is called (which happens in every subproject).
This CL forces all of the things we care about into the cmake cache so
they don't get reset by the downstream project. This only seems to be
an issue on the Windows build but removes ~25 targets from a build
as we correctly turn off tests and things.
Diffstat (limited to 'third_party')
-rw-r--r-- | third_party/CMakeLists.txt | 23 |
1 files changed, 12 insertions, 11 deletions
diff --git a/third_party/CMakeLists.txt b/third_party/CMakeLists.txt index 7020678..21d2856 100644 --- a/third_party/CMakeLists.txt +++ b/third_party/CMakeLists.txt @@ -264,9 +264,10 @@ if (${AMBER_ENABLE_SPIRV_TOOLS}) set(CXX_BACK ${CMAKE_CXX_FLAGS}) SET(CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS} "${SPIRV_TOOLS_BUILD_FIXES}") STRING(REGEX REPLACE ";" " " CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}") - set(SPIRV-Headers_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/spirv-headers) - set(SPIRV_SKIP_TESTS ON) - set(SPIRV_SKIP_EXECUTABLES ON) + set(SPIRV-Headers_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/spirv-headers CACHE STRING "") + set(SPIRV_SKIP_TESTS ON CACHE BOOL ON) + set(SPIRV_SKIP_EXECUTABLES ON CACHE BOOL ON) + set(SPIRV_HEADERS_SKIP_EXAMPLES ON CACHE BOOL ON) add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/spirv-tools) set(CMAKE_CXX_FLAGS ${CXX_BACK}) endif() @@ -275,14 +276,14 @@ if (${AMBER_ENABLE_SHADERC}) set(CXX_BACK ${CMAKE_CXX_FLAGS}) SET(CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS} "${GLSLANG_BUILD_FIXES}") STRING(REGEX REPLACE ";" " " CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}") - set(ENABLE_HLSL ON) - set(BUILD_TESTING FALSE) - set(ENABLE_GLSLANG_BINARIES OFF) - set(ENABLE_SPVREMAPPER OFF) + set(ENABLE_HLSL ON CACHE BOOL ON) + set(BUILD_TESTING FALSE CACHE BOOL ON) + set(ENABLE_GLSLANG_BINARIES OFF CACHE BOOL ON) + set(ENABLE_SPVREMAPPER OFF CACHE BOOL ON) # Tell Glslang to statically link the C Runtime library. - set(LLVM_USE_CRT_DEBUG MTd) - set(LLVM_USE_CRT_RELEASE MT) - set(LLVM_USE_CRT_RELWITHDEBINFO MT) + set(LLVM_USE_CRT_DEBUG MTd CACHE STRING "") + set(LLVM_USE_CRT_RELEASE MT CACHE STRING "") + set(LLVM_USE_CRT_RELWITHDEBINFO MT CACHE STRING "") add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/glslang) set(CMAKE_CXX_FLAGS ${CXX_BACK}) @@ -290,7 +291,7 @@ if (${AMBER_ENABLE_SHADERC}) SET(CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS} "${SHADERC_BUILD_FIXES}") STRING(REGEX REPLACE ";" " " CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}") set(SHADERC_THIRD_PARTY_ROOT_DIR ${CMAKE_CURRENT_SOURCE_DIR} CACHE STRING "") - set(SHADERC_SKIP_TESTS ON) + set(SHADERC_SKIP_TESTS ON CACHE BOOL ON) add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/shaderc) set(CMAKE_CXX_FLAGS ${CXX_BACK}) endif() |