Skip to content

Commit

Permalink
chore: update to CMake 3.25 (#133)
Browse files Browse the repository at this point in the history
Updating examples ~and built-in backport~ to 3.25.

@jcfr and @thewtex, backporting was broken in 3.25 (and we need it for
the SOABI fix from 3.26, and probably ABI3 if that's added, etc). See
https://gitlab.kitware.com/cmake/cmake/-/issues/24185.

Signed-off-by: Henry Schreiner <[email protected]>
  • Loading branch information
henryiii authored Nov 23, 2022
1 parent 9e10e31 commit 3245228
Show file tree
Hide file tree
Showing 12 changed files with 19 additions and 19 deletions.
4 changes: 2 additions & 2 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -223,7 +223,7 @@ test = ["pytest>=6.0"]
```

```cmake
cmake_minimum_required(VERSION 3.15...3.24)
cmake_minimum_required(VERSION 3.15...3.25)
project("${SKBUILD_PROJECT_NAME}" LANGUAGES CXX VERSION "${SKBUILD_PROJECT_VERSION}")
find_package(pybind11 CONFIG REQUIRED)
Expand Down Expand Up @@ -266,7 +266,7 @@ build-backend = "scikit_build_core.setuptools.build_meta"
```

```cmake
cmake_minimum_required(VERSION 3.15...3.24)
cmake_minimum_required(VERSION 3.15...3.25)
project("${SKBUILD_PROJECT_NAME}" LANGUAGES CXX VERSION "${SKBUILD_PROJECT_VERSION}")
find_package(pybind11 CONFIG REQUIRED)
Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,8 +48,8 @@ Features over classic Scikit-build:
- No dependency on setuptools, distutils, or wheel in build mode.
- Powerful config system, including config options support in build mode.
- Automatic inclusion of site-packages in `CMAKE_PREFIX_PATH`
- FindPython is backported if running on CMake < 3.24 (included via hatchling in
a submodule)
- FindPython is backported if running on CMake 3.24 (included via hatchling in a
submodule)
- Limited API / Stable ABI and pythonless tags supported via config option
- No slow generator search, ninja/make or MSVC used by default, respects
`CMAKE_GENERATOR`
Expand Down Expand Up @@ -83,7 +83,7 @@ printouts) or `pyproject` (pre-load some dependencies) extras if you want.
An example `CMakeLists.txt`:

```cmake
cmake_minimum_required(VERSION 3.15...3.24)
cmake_minimum_required(VERSION 3.15...3.25)
project(${SKBUILD_PROJECT_NAME} LANGUAGES C VERSION ${SKBUILD_PROJECT_VERSION})
Expand Down
2 changes: 1 addition & 1 deletion extern/cmake
Submodule cmake updated 61 files
+6 −6 .gitlab/os-macos.yml
+2 −0 Help/command/string.rst
+3 −3 Help/release/3.23.rst
+11 −0 Help/release/3.24.rst
+1 −0 Modules/CPackIFW.cmake
+6 −0 Modules/CUDA/architectures.cmake
+11 −3 Modules/Compiler/Intel.cmake
+9 −3 Modules/Compiler/IntelLLVM.cmake
+2 −0 Modules/Compiler/LLVMFlang-Fortran.cmake
+1 −1 Modules/Compiler/NVHPC.cmake
+1 −1 Modules/Compiler/NVIDIA-CUDA.cmake
+2 −2 Modules/FindJNI.cmake
+6 −1 Modules/FindMatlab.cmake
+14 −5 Modules/Internal/CPack/NSIS.template.in
+6 −0 Modules/Platform/Android.cmake
+3 −0 Modules/Platform/Windows-LLVMFlang-Fortran.cmake
+1 −1 Source/CMakeVersion.cmake
+2 −2 Source/CPack/cpack.cxx
+25 −10 Source/CTest/cmCTestBuildHandler.cxx
+1 −3 Source/Checks/cm_cxx_features.cmake
+11 −0 Source/Checks/cm_cxx_filesystem.cxx
+5 −7 Source/cmComputeLinkInformation.cxx
+6 −0 Source/cmCoreTryCompile.cxx
+8 −2 Source/cmFileCommand.cxx
+2 −1 Source/cmGlobalGenerator.cxx
+0 −13 Source/cmGlobalNinjaGenerator.cxx
+0 −1 Source/cmGlobalNinjaGenerator.h
+18 −5 Source/cmGlobalXCodeGenerator.cxx
+7 −3 Source/cmLocalGenerator.cxx
+32 −0 Source/cmStringAlgorithms.cxx
+10 −0 Source/cmStringAlgorithms.h
+21 −2 Source/cmVSSetupHelper.cxx
+35 −0 Tests/CMakeLib/testStringAlgorithms.cxx
+2 −0 Tests/CMakeLists.txt
+1 −1 Tests/Fortran/CMakeLists.txt
+1 −1 Tests/FortranC/CMakeLists.txt
+5 −0 Tests/RunCMake/Framework/FrameworkMultiConfigPostfix.cmake
+5 −0 Tests/RunCMake/Ninja/Intl-build-check.cmake
+1 −0 Tests/RunCMake/Ninja/Intl-common.cmake
+7 −0 Tests/RunCMake/Ninja/Intl.cmake
+9 −0 Tests/RunCMake/Ninja/RunCMakeTest.cmake
+43 −0 Tests/RunCMake/ParseImplicitData/linux-Fortran-LLVMFlang-15.0.0.input
+1 −0 Tests/RunCMake/ParseImplicitLinkInfo/ParseImplicitLinkInfo.cmake
+2 −0 Tests/RunCMake/ParseImplicitLinkInfo/results/linux-Fortran-LLVMFlang-15.0.0.output
+24 −21 Tests/RunCMake/XcodeProject/RunCMakeTest.cmake
+9 −2 Tests/RunCMake/XcodeProject/XcodeIOSInstallCombined-install-check.cmake
+8 −2 Tests/RunCMake/XcodeProject/XcodeIOSInstallCombined.cmake
+5 −1 Tests/RunCMake/XcodeProject/XcodeIOSInstallCombinedSingleArch-install-check.cmake
+7 −3 Tests/RunCMake/XcodeProject/XcodeIOSInstallCombinedSingleArch.cmake
+1 −1 Tests/RunCMake/ctest_build/CMakeLists.txt.in
+23 −0 Tests/RunCMake/ctest_build/NinjaLauncherSingleBuildFailure-check.cmake
+1 −0 Tests/RunCMake/ctest_build/NinjaLauncherSingleBuildFailure-result.txt
+1 −0 Tests/RunCMake/ctest_build/NinjaLauncherSingleBuildFailure-stderr.txt
+16 −0 Tests/RunCMake/ctest_build/RunCMakeTest.cmake
+1 −0 Tests/RunCMake/ctest_build/error.c
+7 −0 Tests/RunCMake/try_compile/CMP0128-NEW.cmake
+7 −0 Tests/RunCMake/try_compile/CMP0128-WARN.cmake
+31 −0 Tests/RunCMake/try_compile/CMP0128-common.cmake
+4 −0 Tests/RunCMake/try_compile/Inspect.cmake
+18 −0 Tests/RunCMake/try_compile/RunCMakeTest.cmake
+6 −10 Utilities/std/cm/filesystem
2 changes: 1 addition & 1 deletion tests/packages/abi3_pyproject_ext/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.15...3.24)
cmake_minimum_required(VERSION 3.15...3.25)

project(
${SKBUILD_PROJECT_NAME}
Expand Down
2 changes: 1 addition & 1 deletion tests/packages/abi3_setuptools_ext/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.15...3.24)
cmake_minimum_required(VERSION 3.15...3.25)

project(
${SKBUILD_PROJECT_NAME}
Expand Down
2 changes: 1 addition & 1 deletion tests/packages/filepath_pure/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.15...3.24)
cmake_minimum_required(VERSION 3.15...3.25)
project(
"${SKBUILD_PROJECT_NAME}"
LANGUAGES C
Expand Down
2 changes: 1 addition & 1 deletion tests/packages/simple_pure/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.15...3.24)
cmake_minimum_required(VERSION 3.15...3.25)

project(simple_pure LANGUAGES CXX)

Expand Down
2 changes: 1 addition & 1 deletion tests/packages/simple_pyproject_ext/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.15...3.24)
cmake_minimum_required(VERSION 3.15...3.25)
project(
"${SKBUILD_PROJECT_NAME}"
LANGUAGES CXX
Expand Down
2 changes: 1 addition & 1 deletion tests/packages/simple_setuptools_ext/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.15...3.24)
cmake_minimum_required(VERSION 3.15...3.25)
project(
"${SKBUILD_PROJECT_NAME}"
LANGUAGES CXX
Expand Down
2 changes: 1 addition & 1 deletion tests/packages/simplest_c/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.15...3.24)
cmake_minimum_required(VERSION 3.15...3.25)

project(
${SKBUILD_PROJECT_NAME}
Expand Down
8 changes: 4 additions & 4 deletions tests/test_pyproject_pep517.py
Original file line number Diff line number Diff line change
Expand Up @@ -78,11 +78,11 @@ def test_pep517_sdist_hash(tmp_path, monkeypatch):
hash = hashlib.sha256(sdist.read_bytes()).hexdigest()
if sys.version_info < (3, 9):
assert (
hash == "0f2ef937723753cb4df8154cddfc71d9b6451738f55392b184a0ca49ed8b2364"
hash == "600ed996e51642027557759ee9eeb31b5cae1f443313f5f7d0a40d9cc9cbdd13"
)
else:
assert (
hash == "f22eaa307456a812fce6b9bd7386189c9c7e3bd10bbc6feee4f5ab0b1733b272"
hash == "4f47a4e797db1cb8e15afb368360d5f2ac5ae4b6c7e38e0771f8eba65fab65e4"
)


Expand Down Expand Up @@ -146,11 +146,11 @@ def test_pep517_sdist_time_hash_set_epoch(tmp_path, monkeypatch):
hash = hashlib.sha256(sdist.read_bytes()).hexdigest()
if sys.version_info < (3, 9):
assert (
hash == "df1d1d2fd7a8a438d506d7e734f00790dd2c37e52cde9874cc2300dd2c21660e"
hash == "505cb72c11e9b8344e6d467aef94f3e96d66d1c618a0703e4fcdbb623f28c23c"
)
else:
assert (
hash == "03273c438a0215e476060f6dfa21e2e87e410e10f4f17ad706fdf37b43612942"
hash == "68703d101d8185d86ec7496285ddf46e302166c60a10372682de82f70bba847a"
)


Expand Down
4 changes: 2 additions & 2 deletions tests/test_pyproject_pep518.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,12 +39,12 @@ def test_pep518_sdist():
if sys.version_info < (3, 9):
assert (
hash
== "0f2ef937723753cb4df8154cddfc71d9b6451738f55392b184a0ca49ed8b2364"
== "600ed996e51642027557759ee9eeb31b5cae1f443313f5f7d0a40d9cc9cbdd13"
)
else:
assert (
hash
== "f22eaa307456a812fce6b9bd7386189c9c7e3bd10bbc6feee4f5ab0b1733b272"
== "4f47a4e797db1cb8e15afb368360d5f2ac5ae4b6c7e38e0771f8eba65fab65e4"
)

with tarfile.open(sdist) as f:
Expand Down

0 comments on commit 3245228

Please sign in to comment.