From a99d1314c353259304f175c594d0c48a1e5d8290 Mon Sep 17 00:00:00 2001 From: ohyzha Date: Thu, 31 Oct 2024 14:44:59 +0200 Subject: [PATCH 1/3] create patch for cmake cache checks so that it can use CheckTypeSize from multiple contexts --- 3rdParty/assimp/CMakeLists.txt | 2 +- CMakeLists.txt | 10 ++++++++++ cmake/cmake-checks-cache-patch.patch | 22 ++++++++++++++++++++++ 3 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 cmake/cmake-checks-cache-patch.patch diff --git a/3rdParty/assimp/CMakeLists.txt b/3rdParty/assimp/CMakeLists.txt index 782c75b..bad2bad 100644 --- a/3rdParty/assimp/CMakeLists.txt +++ b/3rdParty/assimp/CMakeLists.txt @@ -7,7 +7,7 @@ if (NOT IOS) endif () if (assimp_FOUND OR ASSIMP_FOUND) message("Using system assimp") -elseif (ENABLE_ASSIMP) +elseif (ENABLE_ASSIMP AND NOT assimp_BUILT) message("Building assimp from sources") if(NOT DEFINED ASSIMP_REPO) set(ASSIMP_REPO https://github.com/assimp/assimp.git) diff --git a/CMakeLists.txt b/CMakeLists.txt index 7a82edd..545b7ab 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,5 +1,15 @@ cmake_minimum_required(VERSION 3.28 FATAL_ERROR) +if (EXISTS "${CMAKE_CURRENT_BINARY_DIR}/cmake_checks_cache.txt") + FILE(REMOVE "${CMAKE_CURRENT_BINARY_DIR}/cmake_checks_cache.txt") +endif() + +if (NOT ONCE) + set(PATCH_CMD git apply --ignore-space-change --ignore-whitespace ${CMAKE_CURRENT_SOURCE_DIR}/cmake/cmake-checks-cache-patch.patch) + execute_process(COMMAND ${PATCH_CMD} WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/cmake/cmake-checks-cache") + set(ONCE ON CACHE INTERNAL "") +endif() + if ("${PLATFORM}" STREQUAL "OS64" OR "${PLATFORM}" STREQUAL "OS64COMBINED") set(ENABLE_ARC OFF) set(DEPLOYMENT_TARGET "14.0") diff --git a/cmake/cmake-checks-cache-patch.patch b/cmake/cmake-checks-cache-patch.patch new file mode 100644 index 0000000..2d9b39e --- /dev/null +++ b/cmake/cmake-checks-cache-patch.patch @@ -0,0 +1,22 @@ + CMakeChecksCache/CheckTypeSize.cmake | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/CMakeChecksCache/CheckTypeSize.cmake b/CMakeChecksCache/CheckTypeSize.cmake +index ee56b64..49bf66a 100644 +--- a/CMakeChecksCache/CheckTypeSize.cmake ++++ b/CMakeChecksCache/CheckTypeSize.cmake +@@ -20,12 +20,11 @@ + # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + # SOFTWARE. + ++include(${CMAKE_ROOT}/Modules/CheckTypeSize.cmake) + include_guard(GLOBAL) +- + cmake_minimum_required(VERSION 3.11) + + include(DumpCMakeVariables) +-include(${CMAKE_ROOT}/Modules/CheckTypeSize.cmake) + + macro(check_type_size type variable) + _check_type_size(${type} ${variable}) + From 0803ee7086cc4ec7002df3697ae2307988f369f5 Mon Sep 17 00:00:00 2001 From: ohyzha Date: Fri, 1 Nov 2024 12:11:06 +0200 Subject: [PATCH 2/3] use cmake-checks clone project with fix --- .gitmodules | 2 +- CMakeLists.txt | 6 ------ cmake/cmake-checks-cache-patch.patch | 22 ---------------------- 3 files changed, 1 insertion(+), 29 deletions(-) delete mode 100644 cmake/cmake-checks-cache-patch.patch diff --git a/.gitmodules b/.gitmodules index 2656049..7047ef8 100644 --- a/.gitmodules +++ b/.gitmodules @@ -3,4 +3,4 @@ url = git@git.madvoxel.net:OpenVulkano/OpenVulkano.wiki.git [submodule "cmake/cmake-checks-cache"] path = cmake/cmake-checks-cache - url = https://github.com/cristianadam/cmake-checks-cache.git + url = https://git.madvoxel.net/Mirrors/cmake-checks-cache diff --git a/CMakeLists.txt b/CMakeLists.txt index 545b7ab..ef70745 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -4,12 +4,6 @@ if (EXISTS "${CMAKE_CURRENT_BINARY_DIR}/cmake_checks_cache.txt") FILE(REMOVE "${CMAKE_CURRENT_BINARY_DIR}/cmake_checks_cache.txt") endif() -if (NOT ONCE) - set(PATCH_CMD git apply --ignore-space-change --ignore-whitespace ${CMAKE_CURRENT_SOURCE_DIR}/cmake/cmake-checks-cache-patch.patch) - execute_process(COMMAND ${PATCH_CMD} WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/cmake/cmake-checks-cache") - set(ONCE ON CACHE INTERNAL "") -endif() - if ("${PLATFORM}" STREQUAL "OS64" OR "${PLATFORM}" STREQUAL "OS64COMBINED") set(ENABLE_ARC OFF) set(DEPLOYMENT_TARGET "14.0") diff --git a/cmake/cmake-checks-cache-patch.patch b/cmake/cmake-checks-cache-patch.patch deleted file mode 100644 index 2d9b39e..0000000 --- a/cmake/cmake-checks-cache-patch.patch +++ /dev/null @@ -1,22 +0,0 @@ - CMakeChecksCache/CheckTypeSize.cmake | 3 +-- - 1 file changed, 1 insertion(+), 2 deletions(-) - -diff --git a/CMakeChecksCache/CheckTypeSize.cmake b/CMakeChecksCache/CheckTypeSize.cmake -index ee56b64..49bf66a 100644 ---- a/CMakeChecksCache/CheckTypeSize.cmake -+++ b/CMakeChecksCache/CheckTypeSize.cmake -@@ -20,12 +20,11 @@ - # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - # SOFTWARE. - -+include(${CMAKE_ROOT}/Modules/CheckTypeSize.cmake) - include_guard(GLOBAL) -- - cmake_minimum_required(VERSION 3.11) - - include(DumpCMakeVariables) --include(${CMAKE_ROOT}/Modules/CheckTypeSize.cmake) - - macro(check_type_size type variable) - _check_type_size(${type} ${variable}) - From 822182d468d565afef074d88c025ad9373c15258 Mon Sep 17 00:00:00 2001 From: ohyzha Date: Fri, 1 Nov 2024 13:00:52 +0200 Subject: [PATCH 3/3] update submodule hash --- cmake/cmake-checks-cache | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmake/cmake-checks-cache b/cmake/cmake-checks-cache index fa345a9..c7f0636 160000 --- a/cmake/cmake-checks-cache +++ b/cmake/cmake-checks-cache @@ -1 +1 @@ -Subproject commit fa345a9dbdf7dc4a6b27d6b6e5113ab38d0b9db9 +Subproject commit c7f06360268dbaa047bf4beaaf967e18b1022789