summaryrefslogtreecommitdiff
path: root/cmake
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@mariadb.com>2022-03-29 11:13:18 +0300
committerMarko Mäkelä <marko.makela@mariadb.com>2022-03-29 11:13:18 +0300
commitae6e214fd851a8a9d079494eec9903c89dd10fb2 (patch)
treeb206f873d02a5a2027671bb1cd900b77d1a3b820 /cmake
parent97f237e66dc58a617b6293d6a2624378333e8065 (diff)
parent020e7d89ebdcded3355c82cec93e0abef2898258 (diff)
downloadmariadb-git-ae6e214fd851a8a9d079494eec9903c89dd10fb2.tar.gz
Merge 10.3 into 10.4
Diffstat (limited to 'cmake')
-rw-r--r--cmake/submodules.cmake35
1 files changed, 22 insertions, 13 deletions
diff --git a/cmake/submodules.cmake b/cmake/submodules.cmake
index 91f9f9e487a..34dcfbea77a 100644
--- a/cmake/submodules.cmake
+++ b/cmake/submodules.cmake
@@ -17,20 +17,29 @@ IF(GIT_EXECUTABLE AND EXISTS "${CMAKE_SOURCE_DIR}/.git")
${GIT_EXECUTABLE} config cmake.update-submodules yes")
ELSEIF(git_config_get_result EQUAL 128)
SET(update_result 0)
- ELSEIF (cmake_update_submodules MATCHES force)
- MESSAGE(STATUS "Updating submodules (forced)")
- EXECUTE_PROCESS(COMMAND "${GIT_EXECUTABLE}" submodule update --init --force --recursive --depth=1
- WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}"
- RESULT_VARIABLE update_result)
- ELSEIF (cmake_update_submodules MATCHES yes)
- EXECUTE_PROCESS(COMMAND "${GIT_EXECUTABLE}" submodule update --init --recursive --depth=1
- WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}"
- RESULT_VARIABLE update_result)
ELSE()
- MESSAGE(STATUS "Updating submodules")
- EXECUTE_PROCESS(COMMAND "${GIT_EXECUTABLE}" submodule update --init --recursive --depth=1
- WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}"
- RESULT_VARIABLE update_result)
+ SET(UPDATE_SUBMODULES_COMMAND
+ "${GIT_EXECUTABLE}" submodule update --init --recursive)
+ # Old Git may not work with "--depth 1".
+ # See also: https://github.com/git/git/commit/fb43e31f2b43076e7a30c9cd00d0241cb8cf97eb
+ IF(NOT GIT_VERSION_STRING VERSION_LESS "2.8.0")
+ SET(UPDATE_SUBMODULES_COMMAND ${UPDATE_SUBMODULES_COMMAND} --depth 1)
+ ENDIF()
+ IF(cmake_update_submodules MATCHES force)
+ MESSAGE(STATUS "Updating submodules (forced)")
+ EXECUTE_PROCESS(COMMAND ${UPDATE_SUBMODULES_COMMAND} --force
+ WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}"
+ RESULT_VARIABLE update_result)
+ ELSEIF(cmake_update_submodules MATCHES yes)
+ EXECUTE_PROCESS(COMMAND ${UPDATE_SUBMODULES_COMMAND}
+ WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}"
+ RESULT_VARIABLE update_result)
+ ELSE()
+ MESSAGE(STATUS "Updating submodules")
+ EXECUTE_PROCESS(COMMAND ${UPDATE_SUBMODULES_COMMAND}
+ WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}"
+ RESULT_VARIABLE update_result)
+ ENDIF()
ENDIF()
ENDIF()