diff --git a/cmake/fix_capstone_policy.cmake b/cmake/fix_capstone_policy.cmake index 3d7a3ca4bc..fa8a1dd160 100644 --- a/cmake/fix_capstone_policy.cmake +++ b/cmake/fix_capstone_policy.cmake @@ -1,13 +1,13 @@ # Patches capstone's CMakeLists.txt for compatibility with CMake >= 4.0: +# - Bumps cmake_minimum_required to 3.10 (CMake >= 4.0 dropped < 3.5 support; < 3.10 warns) # - Removes cmake_policy(SET CMP0048 OLD) (rejected by CMake >= 3.27) -# - Bumps cmake_minimum_required to 3.5 (CMake >= 4.0 dropped < 3.5 support) file(READ "${DIR}/CMakeLists.txt" _content) -string(REPLACE - "cmake_policy(SET CMP0048 OLD)" - "# cmake_policy(SET CMP0048 OLD)" +string(REGEX REPLACE + "cmake_minimum_required[ \t]*\\([ \t]*VERSION[ \t]+[0-9]+\\.[0-9]+(\\.[0-9]+)?[ \t]*\\)" + "cmake_minimum_required(VERSION 3.10)" _content "${_content}") string(REGEX REPLACE - "cmake_minimum_required\\(VERSION [0-9]+\\.[0-9]+(\\.[0-9]+)?\\)" - "cmake_minimum_required(VERSION 3.5)" + "cmake_policy[ \t]*\\([ \t]*SET[ \t]+CMP0048[ \t]+OLD[ \t]*\\)" + "# cmake_policy(SET CMP0048 OLD)" _content "${_content}") file(WRITE "${DIR}/CMakeLists.txt" "${_content}")