Browse Source

Merge topic 'ci-debian-13' into release-4.2

f49b0e6759 IWYU: Update for Debian 13 CI job
1445a8e7db ci: use Debian 13 images and environments
9eedf6c1a9 ci: Update base images to Debian 13
36bdb7b2de ci: Update to TIClang 4.0.4
48f091a166 ci: Update debian12-ninja job to use Swift 6.2.1
388e2ae0a5 FindPostgreSQL: Add support for version 17
a0642acbce FindImageMagick: Fix detection of version 7 from headers
faf8addc71 FindJNI: Add Debian/Ubuntu specific paths for more recent JDK versions
...

Acked-by: Kitware Robot <[email protected]>
Merge-request: !11412
Brad King 1 month ago
parent
commit
c4acfcebbf
100 changed files with 155 additions and 185 deletions
  1. 21 21
      .gitlab-ci.yml
  2. 0 0
      .gitlab/ci/configure_debian13_aarch64_extdeps.cmake
  3. 0 0
      .gitlab/ci/configure_debian13_aarch64_ninja.cmake
  4. 0 0
      .gitlab/ci/configure_debian13_extdeps.cmake
  5. 0 0
      .gitlab/ci/configure_debian13_hip_radeon.cmake
  6. 1 1
      .gitlab/ci/configure_debian13_iwyu.cmake
  7. 0 0
      .gitlab/ci/configure_debian13_makefiles_clang.cmake
  8. 0 0
      .gitlab/ci/configure_debian13_makefiles_inplace.cmake
  9. 1 1
      .gitlab/ci/configure_debian13_ninja.cmake
  10. 0 0
      .gitlab/ci/configure_debian13_ninja_clang.cmake
  11. 1 1
      .gitlab/ci/configure_debian13_ninja_common.cmake
  12. 1 1
      .gitlab/ci/configure_debian13_ninja_multi_symlinked.cmake
  13. 1 1
      .gitlab/ci/docker/debian13-aarch64/Dockerfile
  14. 3 3
      .gitlab/ci/docker/debian13-aarch64/deps_packages.lst
  15. 0 0
      .gitlab/ci/docker/debian13-aarch64/docker-clean
  16. 0 0
      .gitlab/ci/docker/debian13-aarch64/dpkg-exclude
  17. 0 0
      .gitlab/ci/docker/debian13-aarch64/install_deps.sh
  18. 2 2
      .gitlab/ci/docker/debian13-x86_64/Dockerfile
  19. 3 6
      .gitlab/ci/docker/debian13-x86_64/deps_packages.lst
  20. 0 0
      .gitlab/ci/docker/debian13-x86_64/docker-clean
  21. 0 0
      .gitlab/ci/docker/debian13-x86_64/dpkg-exclude
  22. 0 0
      .gitlab/ci/docker/debian13-x86_64/install_deps.sh
  23. 1 1
      .gitlab/ci/docker/debian13-x86_64/install_iwyu.sh
  24. 0 0
      .gitlab/ci/docker/debian13-x86_64/install_rvm.sh
  25. 3 3
      .gitlab/ci/docker/debian13-x86_64/iwyu_packages.lst
  26. 1 1
      .gitlab/ci/docker/debian13-x86_64/rvm_packages.lst
  27. 0 9
      .gitlab/ci/env_debian12_hip_radeon.sh
  28. 0 0
      .gitlab/ci/env_debian13_aarch64_extdeps.sh
  29. 0 0
      .gitlab/ci/env_debian13_extdeps.sh
  30. 1 0
      .gitlab/ci/env_debian13_hip_radeon.sh
  31. 2 2
      .gitlab/ci/env_debian13_makefiles_clang.sh
  32. 0 0
      .gitlab/ci/env_debian13_ninja.sh
  33. 2 2
      .gitlab/ci/env_debian13_ninja_clang.sh
  34. 0 0
      .gitlab/ci/env_debian13_ninja_multi_symlinked.sh
  35. 4 4
      .gitlab/ci/swift-env.sh
  36. 3 3
      .gitlab/ci/ticlang.sh
  37. 36 36
      .gitlab/os-linux.yml
  38. 21 15
      Modules/FindImageMagick.cmake
  39. 5 0
      Modules/FindJNI.cmake
  40. 2 0
      Modules/FindPostgreSQL.cmake
  41. 2 0
      Source/CPack/cmCPackAppImageGenerator.cxx
  42. 0 1
      Source/CPack/cmCPackExternalGenerator.h
  43. 0 5
      Source/CTest/cmCTestBuildCommand.h
  44. 0 1
      Source/CTest/cmCTestBuildHandler.cxx
  45. 0 1
      Source/CTest/cmCTestBuildHandler.h
  46. 0 1
      Source/CTest/cmCTestConfigureCommand.h
  47. 0 4
      Source/CTest/cmCTestCoverageCommand.h
  48. 0 4
      Source/CTest/cmCTestCoverageHandler.cxx
  49. 0 1
      Source/CTest/cmCTestCoverageHandler.h
  50. 3 0
      Source/CTest/cmCTestLaunch.cxx
  51. 4 2
      Source/CTest/cmCTestLaunchReporter.h
  52. 0 6
      Source/CTest/cmCTestMemCheckCommand.h
  53. 0 1
      Source/CTest/cmCTestMemCheckHandler.cxx
  54. 0 2
      Source/CTest/cmCTestMemCheckHandler.h
  55. 1 1
      Source/CTest/cmCTestMultiProcessHandler.cxx
  56. 2 0
      Source/CTest/cmCTestReadCustomFilesCommand.cxx
  57. 0 3
      Source/CTest/cmCTestReadCustomFilesCommand.h
  58. 2 0
      Source/CTest/cmCTestRunScriptCommand.cxx
  59. 0 3
      Source/CTest/cmCTestRunScriptCommand.h
  60. 0 1
      Source/CTest/cmCTestSVN.h
  61. 1 1
      Source/CTest/cmCTestScriptHandler.cxx
  62. 1 0
      Source/CTest/cmCTestStartCommand.cxx
  63. 0 1
      Source/CTest/cmCTestStartCommand.h
  64. 0 4
      Source/CTest/cmCTestSubmitCommand.h
  65. 0 2
      Source/CTest/cmCTestTestCommand.h
  66. 0 1
      Source/CTest/cmCTestTestHandler.h
  67. 0 1
      Source/CTest/cmCTestUpdateCommand.cxx
  68. 0 1
      Source/CTest/cmCTestUpdateCommand.h
  69. 2 0
      Source/CTest/cmProcess.h
  70. 2 0
      Source/CTest/cmUVJobServerClient.cxx
  71. 0 2
      Source/CursesDialog/cmCursesBoolWidget.h
  72. 0 2
      Source/CursesDialog/cmCursesDummyWidget.h
  73. 0 2
      Source/CursesDialog/cmCursesLabelWidget.h
  74. 1 1
      Source/CursesDialog/cmCursesMainForm.h
  75. 0 2
      Source/CursesDialog/cmCursesOptionsWidget.h
  76. 0 2
      Source/CursesDialog/cmCursesPathWidget.h
  77. 0 1
      Source/cmArgumentParser.h
  78. 1 0
      Source/cmBinUtilsLinuxELFObjdumpGetRuntimeDependenciesTool.cxx
  79. 0 1
      Source/cmBinUtilsLinuxELFObjdumpGetRuntimeDependenciesTool.h
  80. 1 0
      Source/cmBinUtilsMacOSMachOOToolGetRuntimeDependenciesTool.cxx
  81. 0 1
      Source/cmBinUtilsMacOSMachOOToolGetRuntimeDependenciesTool.h
  82. 1 0
      Source/cmBinUtilsWindowsPEDumpbinGetRuntimeDependenciesTool.cxx
  83. 0 1
      Source/cmBinUtilsWindowsPEDumpbinGetRuntimeDependenciesTool.h
  84. 1 0
      Source/cmBinUtilsWindowsPEObjdumpGetRuntimeDependenciesTool.cxx
  85. 0 1
      Source/cmBinUtilsWindowsPEObjdumpGetRuntimeDependenciesTool.h
  86. 0 1
      Source/cmBlockCommand.cxx
  87. 0 1
      Source/cmCMakePresetsGraph.cxx
  88. 1 1
      Source/cmCMakePresetsGraphReadJSON.cxx
  89. 2 1
      Source/cmCMakePresetsGraphReadJSONPackagePresets.cxx
  90. 1 0
      Source/cmCMakePresetsGraphReadJSONTestPresets.cxx
  91. 1 0
      Source/cmCMakePresetsGraphReadJSONWorkflowPresets.cxx
  92. 0 1
      Source/cmCPackPropertiesGenerator.cxx
  93. 3 0
      Source/cmCTest.cxx
  94. 1 1
      Source/cmCommands.cxx
  95. 0 1
      Source/cmCommonTargetGenerator.cxx
  96. 0 1
      Source/cmComputeLinkDepends.cxx
  97. 1 0
      Source/cmConfigureLog.h
  98. 1 0
      Source/cmCoreTryCompile.cxx
  99. 1 0
      Source/cmDebuggerExceptionManager.h
  100. 3 0
      Source/cmDebuggerThreadManager.cxx

+ 21 - 21
.gitlab-ci.yml

@@ -104,9 +104,9 @@ l:spellcheck:
         - .linux_x86_64_tags
         - .run_automatically
 
-l:iwyu-debian12:
+l:iwyu-debian13:
     extends:
-        - .debian12_iwyu
+        - .debian13_iwyu
         - .cmake_build_linux
         - .linux_x86_64_tags
         - .cmake_cdash_artifacts
@@ -245,9 +245,9 @@ b:centos7-aarch64:
         CMAKE_CI_ARTIFACTS_NAME: "artifacts-centos7-aarch64"
         CMAKE_CI_NO_MR: "true"
 
-t:debian12-ninja:
+t:debian13-ninja:
     extends:
-        - .debian12_ninja
+        - .debian13_ninja
         - .cmake_test_linux_release
         - .linux_x86_64_tags
         - .cmake_junit_artifacts
@@ -256,9 +256,9 @@ t:debian12-ninja:
     variables:
         CMAKE_CI_JOB_NIGHTLY_NINJA: "true"
 
-t:debian12-aarch64-ninja:
+t:debian13-aarch64-ninja:
     extends:
-        - .debian12_aarch64_ninja
+        - .debian13_aarch64_ninja
         - .cmake_test_linux_release
         - .linux_aarch64_tags
         - .cmake_junit_artifacts
@@ -267,9 +267,9 @@ t:debian12-aarch64-ninja:
     variables:
         CMAKE_CI_NO_MR: "true"
 
-t:debian12-ninja-clang:
+t:debian13-ninja-clang:
     extends:
-        - .debian12_ninja_clang
+        - .debian13_ninja_clang
         - .cmake_test_linux_release
         - .linux_x86_64_tags
         - .run_dependent
@@ -277,9 +277,9 @@ t:debian12-ninja-clang:
     variables:
         CMAKE_CI_JOB_NIGHTLY: "true"
 
-t:debian12-makefiles-clang:
+t:debian13-makefiles-clang:
     extends:
-        - .debian12_makefiles_clang
+        - .debian13_makefiles_clang
         - .cmake_test_linux_release
         - .linux_x86_64_tags
         - .run_dependent
@@ -287,9 +287,9 @@ t:debian12-makefiles-clang:
     variables:
         CMAKE_CI_JOB_NIGHTLY: "true"
 
-t:debian12-ninja-multi-symlinked:
+t:debian13-ninja-multi-symlinked:
     extends:
-        - .debian12_ninja_multi_symlinked
+        - .debian13_ninja_multi_symlinked
         - .cmake_test_linux_release
         - .linux_x86_64_tags
         - .cmake_junit_artifacts
@@ -299,11 +299,11 @@ t:debian12-ninja-multi-symlinked:
         CMAKE_CI_JOB_NIGHTLY: "true"
         CMAKE_CI_JOB_NIGHTLY_NINJA: "true"
 
-t:debian12-hip-radeon:
+t:debian13-hip-radeon:
     extends:
-        - .debian12_hip_radeon
+        - .debian13_hip_radeon
         - .cmake_test_linux_release
-        - .linux_x86_64_tags_rocm5.2
+        - .linux_x86_64_tags_rocm5.7
         - .run_dependent
         - .needs_centos7_x86_64
     variables:
@@ -636,27 +636,27 @@ b:fedora43-makefiles-symlinked:
     variables:
         CMAKE_CI_JOB_NIGHTLY: "true"
 
-b:debian12-makefiles-inplace:
+b:debian13-makefiles-inplace:
     extends:
-        - .debian12_makefiles_inplace
+        - .debian13_makefiles_inplace
         - .cmake_build_linux_standalone
         - .linux_x86_64_tags
         - .run_manually
     variables:
         CMAKE_CI_JOB_NIGHTLY: "true"
 
-b:debian12-extdeps:
+b:debian13-extdeps:
     extends:
-        - .debian12_extdeps
+        - .debian13_extdeps
         - .cmake_build_linux_standalone
         - .linux_x86_64_tags
         - .run_manually
     variables:
         CMAKE_CI_JOB_NIGHTLY: "true"
 
-b:debian12-aarch64-extdeps:
+b:debian13-aarch64-extdeps:
     extends:
-        - .debian12_aarch64_extdeps
+        - .debian13_aarch64_extdeps
         - .cmake_build_linux_standalone
         - .linux_aarch64_tags
         - .run_manually

+ 0 - 0
.gitlab/ci/configure_debian12_aarch64_extdeps.cmake → .gitlab/ci/configure_debian13_aarch64_extdeps.cmake


+ 0 - 0
.gitlab/ci/configure_debian12_aarch64_ninja.cmake → .gitlab/ci/configure_debian13_aarch64_ninja.cmake


+ 0 - 0
.gitlab/ci/configure_debian12_extdeps.cmake → .gitlab/ci/configure_debian13_extdeps.cmake


+ 0 - 0
.gitlab/ci/configure_debian12_hip_radeon.cmake → .gitlab/ci/configure_debian13_hip_radeon.cmake


+ 1 - 1
.gitlab/ci/configure_debian12_iwyu.cmake → .gitlab/ci/configure_debian13_iwyu.cmake

@@ -2,6 +2,6 @@ set(CMake_RUN_IWYU ON CACHE BOOL "")
 set(CMake_IWYU_OPTIONS "-DCMAKE_IWYU_FORWARD_STD_HASH" CACHE STRING "")
 # Uncomment to diagnose IWYU problems as needed.
 #set(CMake_IWYU_VERBOSE ON CACHE BOOL "")
-set(IWYU_COMMAND "/usr/bin/include-what-you-use-15" CACHE FILEPATH "")
+set(IWYU_COMMAND "/usr/bin/include-what-you-use-19" CACHE FILEPATH "")
 
 include("${CMAKE_CURRENT_LIST_DIR}/configure_common.cmake")

+ 0 - 0
.gitlab/ci/configure_debian12_makefiles_clang.cmake → .gitlab/ci/configure_debian13_makefiles_clang.cmake


+ 0 - 0
.gitlab/ci/configure_debian12_makefiles_inplace.cmake → .gitlab/ci/configure_debian13_makefiles_inplace.cmake


+ 1 - 1
.gitlab/ci/configure_debian12_ninja.cmake → .gitlab/ci/configure_debian13_ninja.cmake

@@ -1,4 +1,4 @@
 set(CMake_TEST_ASM_NASM "ON" CACHE BOOL "")
 
-include("${CMAKE_CURRENT_LIST_DIR}/configure_debian12_ninja_common.cmake")
+include("${CMAKE_CURRENT_LIST_DIR}/configure_debian13_ninja_common.cmake")
 set(CMake_TEST_UseSWIG "ON" CACHE BOOL "")

+ 0 - 0
.gitlab/ci/configure_debian12_ninja_clang.cmake → .gitlab/ci/configure_debian13_ninja_clang.cmake


+ 1 - 1
.gitlab/ci/configure_debian12_ninja_common.cmake → .gitlab/ci/configure_debian13_ninja_common.cmake

@@ -90,7 +90,7 @@ set(CMake_TEST_FindPython3 "ON" CACHE BOOL "")
 set(CMake_TEST_FindPython3_IronPython "ON" CACHE BOOL "")
 set(CMake_TEST_FindPython3_PyPy "ON" CACHE BOOL "")
 set(CMake_TEST_FindRuby "ON" CACHE BOOL "")
-#set(CMake_TEST_FindRuby_RBENV "ON" CACHE BOOL "") # fails because system and rbenv versions are same
+set(CMake_TEST_FindRuby_RBENV "ON" CACHE BOOL "")
 set(CMake_TEST_FindRuby_RVM "ON" CACHE BOOL "")
 set(CMake_TEST_FindSDL "ON" CACHE BOOL "")
 set(CMake_TEST_FindSQLite3 "ON" CACHE BOOL "")

+ 1 - 1
.gitlab/ci/configure_debian12_ninja_multi_symlinked.cmake → .gitlab/ci/configure_debian13_ninja_multi_symlinked.cmake

@@ -3,5 +3,5 @@ if (NOT "$ENV{CMAKE_CI_NIGHTLY}" STREQUAL "")
 endif()
 
 include("${CMAKE_CURRENT_LIST_DIR}/configure_symlinked_common.cmake")
-include("${CMAKE_CURRENT_LIST_DIR}/configure_debian12_ninja_common.cmake")
+include("${CMAKE_CURRENT_LIST_DIR}/configure_debian13_ninja_common.cmake")
 set(CMake_TEST_UseSWIG "OFF" CACHE BOOL "")

+ 1 - 1
.gitlab/ci/docker/debian12-aarch64/Dockerfile → .gitlab/ci/docker/debian13-aarch64/Dockerfile

@@ -1,6 +1,6 @@
 # syntax=docker/dockerfile:1
 
-ARG BASE_IMAGE=arm64v8/debian:12
+ARG BASE_IMAGE=arm64v8/debian:13
 
 FROM ${BASE_IMAGE} AS cuda-keyring
 ADD https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2404/sbsa/cuda-keyring_1.1-1_all.deb /root/

+ 3 - 3
.gitlab/ci/docker/debian12-aarch64/deps_packages.lst → .gitlab/ci/docker/debian13-aarch64/deps_packages.lst

@@ -20,7 +20,7 @@ libzstd-dev
 zlib1g-dev
 
 # Install iwyu runtime deps.
-clang-15
+clang-19
 libncurses6
 
 # Tools needed for the test suite.
@@ -79,7 +79,7 @@ libopenal-dev
 libopenmpi-dev openmpi-bin
 libosp-dev
 libpng-dev
-libpq-dev postgresql-server-dev-15
+libpq-dev postgresql-server-dev-17
 libprotobuf-dev libprotobuf-c-dev libprotoc-dev protobuf-compiler protobuf-compiler-grpc
 libsdl1.2-dev
 libsqlite3-dev
@@ -91,7 +91,7 @@ libxalan-c-dev
 libxerces-c-dev
 libxml2-dev libxml2-utils
 libxslt-dev xsltproc
-openjdk-17-jdk
+openjdk-25-jdk
 python3 python3-dev python3-numpy pypy3 pypy3-dev python3-venv
 qtbase5-dev qtbase5-dev-tools
 ruby ruby-dev

+ 0 - 0
.gitlab/ci/docker/debian12-aarch64/docker-clean → .gitlab/ci/docker/debian13-aarch64/docker-clean


+ 0 - 0
.gitlab/ci/docker/debian12-aarch64/dpkg-exclude → .gitlab/ci/docker/debian13-aarch64/dpkg-exclude


+ 0 - 0
.gitlab/ci/docker/debian12-aarch64/install_deps.sh → .gitlab/ci/docker/debian13-aarch64/install_deps.sh


+ 2 - 2
.gitlab/ci/docker/debian12-x86_64/Dockerfile → .gitlab/ci/docker/debian13-x86_64/Dockerfile

@@ -1,6 +1,6 @@
 # syntax=docker/dockerfile:1
 
-ARG BASE_IMAGE=debian:12
+ARG BASE_IMAGE=debian:13
 
 FROM ${BASE_IMAGE} AS apt-cache
 # Populate APT cache w/ the fresh metadata and prefetch packages.
@@ -58,7 +58,7 @@ RUN --mount=type=bind,source=install_deps.sh,target=/root/install_deps.sh \
 
 RUN --mount=type=bind,from=iwyu-build,source=/root,target=/root \
     tar -C / -xf /root/iwyu.tar \
- && ln -s /usr/lib/llvm-15/bin/include-what-you-use /usr/bin/include-what-you-use-15
+ && ln -s /usr/lib/llvm-19/bin/include-what-you-use /usr/bin/include-what-you-use-19
 
 RUN --mount=type=bind,from=rvm-build,source=/root,target=/root \
     tar -C /usr/local -xf /root/rvm.tar

+ 3 - 6
.gitlab/ci/docker/debian12-x86_64/deps_packages.lst → .gitlab/ci/docker/debian13-x86_64/deps_packages.lst

@@ -20,7 +20,7 @@ libzstd-dev
 zlib1g-dev
 
 # Install iwyu runtime deps.
-clang-15
+clang-19
 libncurses6
 
 # Tools needed for the test suite.
@@ -38,9 +38,6 @@ nasm
 # Install HIP language toolchain.
 hipcc
 
-# Install swift runtime deps.
-libncurses5
-
 # Install IAR compiler package dependencies.
 libusb-1.0-0
 udev
@@ -90,7 +87,7 @@ libopenal-dev
 libopenmpi-dev openmpi-bin
 libosp-dev
 libpng-dev
-libpq-dev postgresql-server-dev-15
+libpq-dev postgresql-server-dev-17
 libprotobuf-dev libprotobuf-c-dev libprotoc-dev protobuf-compiler protobuf-compiler-grpc
 libsdl1.2-dev
 libsqlite3-dev
@@ -102,7 +99,7 @@ libxalan-c-dev
 libxerces-c-dev
 libxml2-dev libxml2-utils
 libxslt-dev xsltproc
-openjdk-17-jdk
+openjdk-25-jdk
 python3 python3-dev python3-numpy pypy3 pypy3-dev python3-venv
 qtbase5-dev qtbase5-dev-tools
 rbenv ruby-build

+ 0 - 0
.gitlab/ci/docker/debian12-x86_64/docker-clean → .gitlab/ci/docker/debian13-x86_64/docker-clean


+ 0 - 0
.gitlab/ci/docker/debian12-x86_64/dpkg-exclude → .gitlab/ci/docker/debian13-x86_64/dpkg-exclude


+ 0 - 0
.gitlab/ci/docker/debian12-x86_64/install_deps.sh → .gitlab/ci/docker/debian13-x86_64/install_deps.sh


+ 1 - 1
.gitlab/ci/docker/debian12-x86_64/install_iwyu.sh → .gitlab/ci/docker/debian13-x86_64/install_iwyu.sh

@@ -8,7 +8,7 @@ apt-get install -y $(grep '^[^#]\+$' /root/iwyu_packages.lst)
 cd /root
 git clone "https://github.com/include-what-you-use/include-what-you-use.git"
 cd include-what-you-use
-readonly llvm_version="$( clang-15 --version | head -n1 | cut -d' ' -f4 | cut -d. -f-1 )"
+readonly llvm_version="$( clang-19 --version | head -n1 | cut -d' ' -f4 | cut -d. -f-1 )"
 git checkout "clang_$llvm_version"
 mkdir build
 cd build

+ 0 - 0
.gitlab/ci/docker/debian12-x86_64/install_rvm.sh → .gitlab/ci/docker/debian13-x86_64/install_rvm.sh


+ 3 - 3
.gitlab/ci/docker/debian12-x86_64/iwyu_packages.lst → .gitlab/ci/docker/debian13-x86_64/iwyu_packages.lst

@@ -1,7 +1,7 @@
 # Install development tools.
-clang-15
-libclang-15-dev
-llvm-15-dev
+clang-19
+libclang-19-dev
+llvm-19-dev
 libz-dev
 g++
 cmake

+ 1 - 1
.gitlab/ci/docker/debian12-x86_64/rvm_packages.lst → .gitlab/ci/docker/debian13-x86_64/rvm_packages.lst

@@ -11,7 +11,7 @@ libc6-dev
 libffi-dev
 libgdbm-dev
 libgmp-dev
-libncurses5-dev
+libncurses-dev
 libreadline-dev
 libsqlite3-dev
 libssl-dev

+ 0 - 9
.gitlab/ci/env_debian12_hip_radeon.sh

@@ -1,9 +0,0 @@
-export HIPCXX=/usr/bin/clang++-15
-export HIPFLAGS='--rocm-path=/usr --rocm-device-lib-path=/usr/lib/x86_64-linux-gnu/amdgcn/bitcode'
-
-# FIXME(debian): Clang is supposed to automatically parse a HIP version file.
-# The ROCm installer places it at '$prefix/bin/.hipVersion', but the package
-# on Debian moves it to '$prefix/share/hip/version'.  llvm-toolchain package
-# version 15.0.7-4 has 'debian/patches/amdgpu/usr-search-paths.patch' for this,
-# but Debian 12 currently provides version 15.0.6-4 without the patch.
-export HIPFLAGS="$HIPFLAGS --hip-version=5.2"

+ 0 - 0
.gitlab/ci/env_debian12_aarch64_extdeps.sh → .gitlab/ci/env_debian13_aarch64_extdeps.sh


+ 0 - 0
.gitlab/ci/env_debian12_extdeps.sh → .gitlab/ci/env_debian13_extdeps.sh


+ 1 - 0
.gitlab/ci/env_debian13_hip_radeon.sh

@@ -0,0 +1 @@
+export HIPCXX=/usr/bin/clang++-17

+ 2 - 2
.gitlab/ci/env_debian12_ninja_clang.sh → .gitlab/ci/env_debian13_makefiles_clang.sh

@@ -4,5 +4,5 @@ if test "$CMAKE_CI_NIGHTLY" = "true"; then
   source .gitlab/ci/emsdk-env.sh
 fi
 
-export CC=/usr/bin/clang-15
-export CXX=/usr/bin/clang++-15
+export CC=/usr/bin/clang-19
+export CXX=/usr/bin/clang++-19

+ 0 - 0
.gitlab/ci/env_debian12_ninja.sh → .gitlab/ci/env_debian13_ninja.sh


+ 2 - 2
.gitlab/ci/env_debian12_makefiles_clang.sh → .gitlab/ci/env_debian13_ninja_clang.sh

@@ -4,5 +4,5 @@ if test "$CMAKE_CI_NIGHTLY" = "true"; then
   source .gitlab/ci/emsdk-env.sh
 fi
 
-export CC=/usr/bin/clang-15
-export CXX=/usr/bin/clang++-15
+export CC=/usr/bin/clang-19
+export CXX=/usr/bin/clang++-19

+ 0 - 0
.gitlab/ci/env_debian12_ninja_multi_symlinked.sh → .gitlab/ci/env_debian13_ninja_multi_symlinked.sh


+ 4 - 4
.gitlab/ci/swift-env.sh

@@ -1,7 +1,7 @@
-curl -L -O "https://download.swift.org/swift-5.7.1-release/ubuntu1804/swift-5.7.1-RELEASE/swift-5.7.1-RELEASE-ubuntu18.04.tar.gz"
-echo '2b30f9efc969d9e96f0836d0871130dffb369822a3823ee6f3db44c29c1698e3  swift-5.7.1-RELEASE-ubuntu18.04.tar.gz' > swift.sha256sum
+curl -L -O "https://download.swift.org/swift-6.2.1-release/debian12/swift-6.2.1-RELEASE/swift-6.2.1-RELEASE-debian12.tar.gz"
+echo 'd6405e4fb7f092cbb9973a892ce8410837b4335f67d95bf8607baef1f69939e4  swift-6.2.1-RELEASE-debian12.tar.gz' > swift.sha256sum
 sha256sum --check swift.sha256sum
 mkdir /opt/swift
-tar xzf swift-5.7.1-RELEASE-ubuntu18.04.tar.gz -C /opt/swift --strip-components=2
-rm swift-5.7.1-RELEASE-ubuntu18.04.tar.gz swift.sha256sum
+tar xzf swift-6.2.1-RELEASE-debian12.tar.gz -C /opt/swift --strip-components=2
+rm swift-6.2.1-RELEASE-debian12.tar.gz swift.sha256sum
 export SWIFTC="/opt/swift/bin/swiftc"

+ 3 - 3
.gitlab/ci/ticlang.sh

@@ -5,9 +5,9 @@ set -e
 case "$(uname -s)-$(uname -m)" in
     Linux-x86_64)
         shatool="sha256sum"
-        sha256sum="c69ac58e403b82eac1c407cc67b35fab5d95c5d8db75b019095f9412aacff27d"
-        filename="ti_cgt_armllvm_3.2.1.LTS_linux-x64_installer.bin"
-        dirname="ti-cgt-armllvm_3.2.1.LTS"
+        sha256sum="98c60ecc259a07a54be6fcc0f55990332f493bfe5dad460c0ba83963f5dcb06f"
+        filename="ti_cgt_armllvm_4.0.4.LTS_linux-x64_installer.bin"
+        dirname="ti-cgt-armllvm_4.0.4.LTS"
         ;;
     *)
         echo "Unrecognized platform $(uname -s)-$(uname -m)"

+ 36 - 36
.gitlab/os-linux.yml

@@ -58,23 +58,23 @@
 
 ### Debian
 
-.debian12:
-    image: "kitware/cmake:ci-debian12-x86_64-2025-03-31"
+.debian13:
+    image: "kitware/cmake:ci-debian13-x86_64-2025-11-11"
 
     variables:
         GIT_CLONE_PATH: "$CI_BUILDS_DIR/cmake ci"
         CMAKE_ARCH: x86_64
 
-.debian12_iwyu:
-    extends: .debian12
+.debian13_iwyu:
+    extends: .debian13
 
     variables:
-        CMAKE_CONFIGURATION: debian12_iwyu
+        CMAKE_CONFIGURATION: debian13_iwyu
         CTEST_NO_WARNINGS_ALLOWED: 1
         CMAKE_CI_NO_INSTALL: 1
 
-.debian12_aarch64:
-    image: "kitware/cmake:ci-debian12-aarch64-2025-03-31"
+.debian13_aarch64:
+    image: "kitware/cmake:ci-debian13-aarch64-2025-11-11"
 
     variables:
         GIT_CLONE_PATH: "$CI_BUILDS_DIR/cmake ci"
@@ -169,54 +169,54 @@
 
 #### Build and test
 
-.debian12_ninja:
-    extends: .debian12
+.debian13_ninja:
+    extends: .debian13
 
     variables:
-        CMAKE_CONFIGURATION: debian12_ninja
+        CMAKE_CONFIGURATION: debian13_ninja
         CTEST_NO_WARNINGS_ALLOWED: 1
 
-.debian12_aarch64_ninja:
-    extends: .debian12_aarch64
+.debian13_aarch64_ninja:
+    extends: .debian13_aarch64
 
     variables:
-        CMAKE_CONFIGURATION: debian12_aarch64_ninja
+        CMAKE_CONFIGURATION: debian13_aarch64_ninja
         CTEST_NO_WARNINGS_ALLOWED: 1
 
-.debian12_makefiles_inplace:
-    extends: .debian12
+.debian13_makefiles_inplace:
+    extends: .debian13
 
     variables:
-        CMAKE_CONFIGURATION: debian12_makefiles_inplace
+        CMAKE_CONFIGURATION: debian13_makefiles_inplace
         CMAKE_GENERATOR: "Unix Makefiles"
         CMAKE_CI_BOOTSTRAP: 1
         CMAKE_CI_INPLACE: 1
         CMAKE_CI_NO_INSTALL: 1
         CTEST_NO_WARNINGS_ALLOWED: 1
 
-.debian12_ninja_multi_symlinked:
-    extends: .debian12
+.debian13_ninja_multi_symlinked:
+    extends: .debian13
 
     variables:
-        CMAKE_CONFIGURATION: debian12_ninja_multi_symlinked
+        CMAKE_CONFIGURATION: debian13_ninja_multi_symlinked
         CMAKE_GENERATOR: "Ninja Multi-Config"
         CTEST_NO_WARNINGS_ALLOWED: 1
         CMAKE_CI_IN_SYMLINK_TREE: 1
         CMAKE_CI_BUILD_DIR: "real_work/work/build"
 
-.debian12_extdeps:
-    extends: .debian12
+.debian13_extdeps:
+    extends: .debian13
 
     variables:
-        CMAKE_CONFIGURATION: debian12_extdeps
+        CMAKE_CONFIGURATION: debian13_extdeps
         CMAKE_CI_BUILD_TYPE: Release
         CTEST_NO_WARNINGS_ALLOWED: 1
 
-.debian12_aarch64_extdeps:
-    extends: .debian12_aarch64
+.debian13_aarch64_extdeps:
+    extends: .debian13_aarch64
 
     variables:
-        CMAKE_CONFIGURATION: debian12_aarch64_extdeps
+        CMAKE_CONFIGURATION: debian13_aarch64_extdeps
         CMAKE_CI_BUILD_TYPE: Release
         CTEST_NO_WARNINGS_ALLOWED: 1
 
@@ -272,18 +272,18 @@
 
 ### Clang Compiler
 
-.debian12_makefiles_clang:
-    extends: .debian12
+.debian13_makefiles_clang:
+    extends: .debian13
 
     variables:
-        CMAKE_CONFIGURATION: debian12_makefiles_clang
+        CMAKE_CONFIGURATION: debian13_makefiles_clang
         CMAKE_GENERATOR: "Unix Makefiles"
 
-.debian12_ninja_clang:
-    extends: .debian12
+.debian13_ninja_clang:
+    extends: .debian13
 
     variables:
-        CMAKE_CONFIGURATION: debian12_ninja_clang
+        CMAKE_CONFIGURATION: debian13_ninja_clang
 
 .fedora43_makefiles_clang:
     extends: .fedora43
@@ -551,11 +551,11 @@
         CMAKE_CONFIGURATION: hip6.3_radeon
         CMAKE_GENERATOR: "Ninja Multi-Config"
 
-.debian12_hip_radeon:
-    extends: .debian12
+.debian13_hip_radeon:
+    extends: .debian13
 
     variables:
-        CMAKE_CONFIGURATION: debian12_hip_radeon
+        CMAKE_CONFIGURATION: debian13_hip_radeon
         CTEST_LABELS: "HIP"
 
 .fedora43_hip_radeon:
@@ -677,11 +677,11 @@
         - docker
         - linux-x86_64
 
-.linux_x86_64_tags_rocm5.2:
+.linux_x86_64_tags_rocm5.7:
     tags:
         - cmake
         - radeon
-        - rocm-5.2
+        - rocm-5.7
         - docker
         - linux-x86_64
 

+ 21 - 15
Modules/FindImageMagick.cmake

@@ -298,23 +298,29 @@ function(_ImageMagick_GetVersion)
     )
 
     foreach(dir IN LISTS ImageMagick_INCLUDE_DIRS)
-      if(EXISTS ${dir}/magick/version.h)
-        file(STRINGS "${dir}/magick/version.h" results REGEX "${regex}")
-
-        foreach(line ${results})
-          if(line MATCHES "${regex}")
-            if(DEFINED version)
-              string(APPEND version "${CMAKE_MATCH_2}")
-            else()
-              set(version "${CMAKE_MATCH_2}")
+      foreach(subdir IN ITEMS MagickCore magick)
+        if(EXISTS ${dir}/${subdir}/version.h)
+          file(STRINGS "${dir}/${subdir}/version.h" results REGEX "${regex}")
+
+          foreach(line ${results})
+            if(line MATCHES "${regex}")
+              if(DEFINED version)
+                string(APPEND version "${CMAKE_MATCH_2}")
+              else()
+                set(version "${CMAKE_MATCH_2}")
+              endif()
+
+              if(CMAKE_MATCH_1 STREQUAL "MagickLibAddendum")
+                break()
+              endif()
             endif()
+          endforeach()
+        endif()
 
-            if(CMAKE_MATCH_1 STREQUAL "MagickLibAddendum")
-              break()
-            endif()
-          endif()
-        endforeach()
-      endif()
+        if(DEFINED version)
+          break()
+        endif()
+      endforeach()
 
       if(DEFINED version)
         break()

+ 5 - 0
Modules/FindJNI.cmake

@@ -385,6 +385,11 @@ set(_JNI_JAVA_DIRECTORIES_BASE
   # Arch Linux specific paths for default JVM
   /usr/lib/jvm/default
   # Ubuntu specific paths for default JVM
+  /usr/lib/jvm/java-26-openjdk-{libarch}
+  /usr/lib/jvm/java-25-openjdk-{libarch}    # Ubuntu 24.04 LTS
+  /usr/lib/jvm/java-24-openjdk-{libarch}
+  /usr/lib/jvm/java-23-openjdk-{libarch}
+  /usr/lib/jvm/java-22-openjdk-{libarch}
   /usr/lib/jvm/java-21-openjdk-{libarch}    # Ubuntu 23.04
   /usr/lib/jvm/java-20-openjdk-{libarch}    # Ubuntu 22.10
   /usr/lib/jvm/java-19-openjdk-{libarch}    # Ubuntu 22.04 LTS

+ 2 - 0
Modules/FindPostgreSQL.cmake

@@ -131,6 +131,7 @@ indicated by preprocessor macros in the ``libpq-fe.h`` header (e.g.
 # In Windows the default installation of PostgreSQL uses that as part of the path.
 # E.g C:\Program Files\PostgreSQL\8.4.
 # Currently, the following version numbers are known to this module:
+# "17"
 # "16" "15" "14" "13" "12" "11" "10" "9.6" "9.5" "9.4" "9.3" "9.2" "9.1" "9.0" "8.4" "8.3" "8.2" "8.1" "8.0"
 #
 # To use this variable just do something like this:
@@ -180,6 +181,7 @@ set(PostgreSQL_ROOT_DIR_MESSAGE "Set the PostgreSQL_ROOT system variable to wher
 
 
 set(PostgreSQL_KNOWN_VERSIONS ${PostgreSQL_ADDITIONAL_VERSIONS}
+    "17"
     "16" "15" "14" "13" "12" "11" "10" "9.6" "9.5" "9.4" "9.3" "9.2" "9.1" "9.0" "8.4" "8.3" "8.2" "8.1" "8.0")
 
 # Define additional search paths for root directories.

+ 2 - 0
Source/CPack/cmCPackAppImageGenerator.cxx

@@ -11,6 +11,8 @@
 
 #include <fcntl.h>
 
+#include <sys/types.h>
+
 #include "cmsys/FStream.hxx"
 
 #include "cmCPackLog.h"

+ 0 - 1
Source/CPack/cmCPackExternalGenerator.h

@@ -9,7 +9,6 @@
 
 #include "cmCPackGenerator.h"
 
-class cmGlobalGenerator;
 namespace Json {
 class Value;
 }

+ 0 - 5
Source/CTest/cmCTestBuildCommand.h

@@ -4,15 +4,10 @@
 
 #include "cmConfigure.h" // IWYU pragma: keep
 
-#include <memory>
 #include <string>
-#include <vector>
 
 #include "cmCTestHandlerCommand.h"
 
-class cmExecutionStatus;
-class cmCTestGenericHandler;
-
 class cmCTestBuildCommand : public cmCTestHandlerCommand
 {
 public:

+ 0 - 1
Source/CTest/cmCTestBuildHandler.cxx

@@ -4,7 +4,6 @@
 
 #include <cstdlib>
 #include <memory>
-#include <ratio>
 #include <set>
 #include <utility>
 

+ 0 - 1
Source/CTest/cmCTestBuildHandler.h

@@ -17,7 +17,6 @@
 #include "cmDuration.h"
 #include "cmProcessOutput.h"
 
-class cmMakefile;
 class cmStringReplaceHelper;
 class cmXMLWriter;
 class cmCTest;

+ 0 - 1
Source/CTest/cmCTestConfigureCommand.h

@@ -5,7 +5,6 @@
 #include "cmConfigure.h" // IWYU pragma: keep
 
 #include <string>
-#include <vector>
 
 #include "cmCTestHandlerCommand.h"
 

+ 0 - 4
Source/CTest/cmCTestCoverageCommand.h

@@ -4,7 +4,6 @@
 
 #include "cmConfigure.h" // IWYU pragma: keep
 
-#include <memory>
 #include <string>
 #include <vector>
 
@@ -13,9 +12,6 @@
 #include "cmArgumentParserTypes.h" // IWYU pragma: keep
 #include "cmCTestHandlerCommand.h"
 
-class cmExecutionStatus;
-class cmCTestGenericHandler;
-
 class cmCTestCoverageCommand : public cmCTestHandlerCommand
 {
 public:

+ 0 - 4
Source/CTest/cmCTestCoverageHandler.cxx

@@ -9,9 +9,7 @@
 #include <iomanip>
 #include <iterator>
 #include <memory>
-#include <ratio>
 #include <sstream>
-#include <type_traits>
 #include <utility>
 
 #include <cmext/algorithm>
@@ -36,8 +34,6 @@
 #include "cmWorkingDirectory.h"
 #include "cmXMLWriter.h"
 
-class cmMakefile;
-
 #define SAFEDIV(x, y) (((y) != 0) ? ((x) / (y)) : (0))
 
 cmCTestCoverageHandler::cmCTestCoverageHandler(cmCTest* ctest)

+ 0 - 1
Source/CTest/cmCTestCoverageHandler.h

@@ -15,7 +15,6 @@
 #include "cmCTestGenericHandler.h"
 
 class cmGeneratedFileStream;
-class cmMakefile;
 class cmXMLWriter;
 class cmCTest;
 

+ 3 - 0
Source/CTest/cmCTestLaunch.cxx

@@ -4,11 +4,14 @@
 
 #include <cstdio>
 #include <cstring>
+#include <functional>
 #include <iostream>
 #include <map>
 #include <memory>
 #include <utility>
 
+#include <cm/optional>
+
 #include <cm3p/uv.h>
 
 #include "cmsys/FStream.hxx"

+ 4 - 2
Source/CTest/cmCTestLaunchReporter.h

@@ -8,10 +8,12 @@
 #include <string>
 #include <vector>
 
-#include "cmsys/RegularExpression.hxx"
-
 #include "cmUVProcessChain.h"
 
+namespace cmsys {
+class RegularExpression;
+}
+
 class cmXMLElement;
 
 /** \class cmCTestLaunchReporter

+ 0 - 6
Source/CTest/cmCTestMemCheckCommand.h

@@ -4,16 +4,10 @@
 
 #include "cmConfigure.h" // IWYU pragma: keep
 
-#include <memory>
 #include <string>
-#include <vector>
 
 #include "cmCTestTestCommand.h"
 
-class cmExecutionStatus;
-class cmCTestGenericHandler;
-class cmCTestTestHandler;
-
 class cmCTestMemCheckCommand : public cmCTestTestCommand
 {
 public:

+ 0 - 1
Source/CTest/cmCTestMemCheckHandler.cxx

@@ -7,7 +7,6 @@
 #include <cstring>
 #include <iostream>
 #include <iterator>
-#include <ratio>
 #include <sstream>
 #include <utility>
 

+ 0 - 2
Source/CTest/cmCTestMemCheckHandler.h

@@ -9,8 +9,6 @@
 
 #include "cmCTestTestHandler.h"
 
-class cmMakefile;
-class cmXMLWriter;
 class cmCTest;
 
 /** \class cmCTestMemCheckHandler

+ 1 - 1
Source/CTest/cmCTestMultiProcessHandler.cxx

@@ -8,6 +8,7 @@
 #include <cmath>
 #include <cstddef> // IWYU pragma: keep
 #include <cstdlib>
+#include <functional>
 #include <iomanip>
 #include <iostream>
 #include <list>
@@ -34,7 +35,6 @@
 #include "cmCTestBinPacker.h"
 #include "cmCTestRunTest.h"
 #include "cmCTestTestHandler.h"
-#include "cmDuration.h"
 #include "cmJSONState.h"
 #include "cmListFileCache.h"
 #include "cmRange.h"

+ 2 - 0
Source/CTest/cmCTestReadCustomFilesCommand.cxx

@@ -2,6 +2,8 @@
    file LICENSE.rst or https://cmake.org/licensing for details.  */
 #include "cmCTestReadCustomFilesCommand.h"
 
+#include <vector>
+
 #include "cmCTest.h"
 #include "cmExecutionStatus.h"
 

+ 0 - 3
Source/CTest/cmCTestReadCustomFilesCommand.h

@@ -5,12 +5,9 @@
 #include "cmConfigure.h" // IWYU pragma: keep
 
 #include <string>
-#include <vector>
 
 #include "cmCTestCommand.h"
 
-class cmExecutionStatus;
-
 class cmCTestReadCustomFilesCommand : public cmCTestCommand
 {
 public:

+ 2 - 0
Source/CTest/cmCTestRunScriptCommand.cxx

@@ -2,6 +2,8 @@
    file LICENSE.rst or https://cmake.org/licensing for details.  */
 #include "cmCTestRunScriptCommand.h"
 
+#include <vector>
+
 #include "cmCTestScriptHandler.h"
 #include "cmExecutionStatus.h"
 #include "cmMakefile.h"

+ 0 - 3
Source/CTest/cmCTestRunScriptCommand.h

@@ -5,12 +5,9 @@
 #include "cmConfigure.h" // IWYU pragma: keep
 
 #include <string>
-#include <vector>
 
 #include "cmCTestCommand.h"
 
-class cmExecutionStatus;
-
 /** \class cmCTestRunScript
  * \brief Run a ctest script
  */

+ 0 - 1
Source/CTest/cmCTestSVN.h

@@ -13,7 +13,6 @@
 
 class cmCTest;
 class cmMakefile;
-class cmXMLWriter;
 
 /** \class cmCTestSVN
  * \brief Interaction with subversion command-line tool

+ 1 - 1
Source/CTest/cmCTestScriptHandler.cxx

@@ -4,8 +4,8 @@
 
 #include <chrono>
 #include <cstdlib>
+#include <functional>
 #include <map>
-#include <ratio>
 #include <sstream>
 #include <utility>
 

+ 1 - 0
Source/CTest/cmCTestStartCommand.cxx

@@ -4,6 +4,7 @@
 
 #include <cstddef>
 #include <sstream>
+#include <vector>
 
 #include "cmCTest.h"
 #include "cmCTestVC.h"

+ 0 - 1
Source/CTest/cmCTestStartCommand.h

@@ -6,7 +6,6 @@
 
 #include <iosfwd>
 #include <string>
-#include <vector>
 
 #include "cmCTestCommand.h"
 

+ 0 - 4
Source/CTest/cmCTestSubmitCommand.h

@@ -4,7 +4,6 @@
 
 #include "cmConfigure.h" // IWYU pragma: keep
 
-#include <memory>
 #include <string>
 #include <vector>
 
@@ -13,9 +12,6 @@
 #include "cmArgumentParserTypes.h"
 #include "cmCTestHandlerCommand.h"
 
-class cmExecutionStatus;
-class cmCTestGenericHandler;
-
 class cmCTestSubmitCommand : public cmCTestHandlerCommand
 {
 public:

+ 0 - 2
Source/CTest/cmCTestTestCommand.h

@@ -7,7 +7,6 @@
 #include <memory>
 #include <string>
 #include <type_traits>
-#include <vector>
 
 #include <cm/optional>
 #include <cmext/string_view>
@@ -17,7 +16,6 @@
 #include "cmCTestHandlerCommand.h"
 
 class cmExecutionStatus;
-class cmCTestGenericHandler;
 class cmCTestTestHandler;
 
 class cmCTestTestCommand : public cmCTestHandlerCommand

+ 0 - 1
Source/CTest/cmCTestTestHandler.h

@@ -25,7 +25,6 @@
 #include "cmDuration.h"
 #include "cmListFileCache.h"
 
-class cmMakefile;
 class cmXMLWriter;
 
 struct cmCTestTestOptions

+ 0 - 1
Source/CTest/cmCTestUpdateCommand.cxx

@@ -5,7 +5,6 @@
 #include <chrono>
 #include <sstream>
 #include <string>
-#include <vector>
 
 #include <cm/memory>
 #include <cmext/string_view>

+ 0 - 1
Source/CTest/cmCTestUpdateCommand.h

@@ -5,7 +5,6 @@
 #include "cmConfigure.h" // IWYU pragma: keep
 
 #include <string>
-#include <vector>
 
 #include "cmCTestHandlerCommand.h"
 

+ 2 - 0
Source/CTest/cmProcess.h

@@ -16,6 +16,8 @@
 
 #include <cm3p/uv.h>
 
+#include <sys/types.h>
+
 #include "cmDuration.h"
 #include "cmProcessOutput.h"
 #include "cmUVHandlePtr.h"

+ 2 - 0
Source/CTest/cmUVJobServerClient.cxx

@@ -12,6 +12,8 @@
 
 #  include <fcntl.h>
 #  include <unistd.h>
+
+#  include <sys/types.h>
 #endif
 
 #include <cm/memory>

+ 0 - 2
Source/CursesDialog/cmCursesBoolWidget.h

@@ -7,8 +7,6 @@
 #include "cmCursesStandardIncludes.h"
 #include "cmCursesWidget.h"
 
-class cmCursesMainForm;
-
 class cmCursesBoolWidget : public cmCursesWidget
 {
 public:

+ 0 - 2
Source/CursesDialog/cmCursesDummyWidget.h

@@ -7,8 +7,6 @@
 #include "cmCursesStandardIncludes.h"
 #include "cmCursesWidget.h"
 
-class cmCursesMainForm;
-
 class cmCursesDummyWidget : public cmCursesWidget
 {
 public:

+ 0 - 2
Source/CursesDialog/cmCursesLabelWidget.h

@@ -9,8 +9,6 @@
 #include "cmCursesStandardIncludes.h"
 #include "cmCursesWidget.h"
 
-class cmCursesMainForm;
-
 class cmCursesLabelWidget : public cmCursesWidget
 {
 public:

+ 1 - 1
Source/CursesDialog/cmCursesMainForm.h

@@ -11,12 +11,12 @@
 
 #include <cm/optional>
 
-#include "cmCursesCacheEntryComposite.h"
 #include "cmCursesForm.h"
 #include "cmCursesStandardIncludes.h"
 #include "cmStateTypes.h"
 
 class cmake;
+class cmCursesCacheEntryComposite;
 class cmCursesLongMessageForm;
 
 /** \class cmCursesMainForm

+ 0 - 2
Source/CursesDialog/cmCursesOptionsWidget.h

@@ -10,8 +10,6 @@
 #include "cmCursesStandardIncludes.h"
 #include "cmCursesWidget.h"
 
-class cmCursesMainForm;
-
 class cmCursesOptionsWidget : public cmCursesWidget
 {
 public:

+ 0 - 2
Source/CursesDialog/cmCursesPathWidget.h

@@ -9,8 +9,6 @@
 #include "cmCursesStandardIncludes.h"
 #include "cmCursesStringWidget.h"
 
-class cmCursesMainForm;
-
 class cmCursesPathWidget : public cmCursesStringWidget
 {
 public:

+ 0 - 1
Source/cmArgumentParser.h

@@ -7,7 +7,6 @@
 #include <cassert>
 #include <cstddef>
 #include <functional>
-#include <iterator>
 #include <map>
 #include <string>
 #include <utility>

+ 1 - 0
Source/cmBinUtilsLinuxELFObjdumpGetRuntimeDependenciesTool.cxx

@@ -4,6 +4,7 @@
 #include "cmBinUtilsLinuxELFObjdumpGetRuntimeDependenciesTool.h"
 
 #include <sstream>
+#include <vector>
 
 #include <cmsys/RegularExpression.hxx>
 

+ 0 - 1
Source/cmBinUtilsLinuxELFObjdumpGetRuntimeDependenciesTool.h

@@ -4,7 +4,6 @@
 #pragma once
 
 #include <string>
-#include <vector>
 
 #include "cmBinUtilsLinuxELFGetRuntimeDependenciesTool.h"
 

+ 1 - 0
Source/cmBinUtilsMacOSMachOOToolGetRuntimeDependenciesTool.cxx

@@ -4,6 +4,7 @@
 #include "cmBinUtilsMacOSMachOOToolGetRuntimeDependenciesTool.h"
 
 #include <sstream>
+#include <vector>
 
 #include <cmsys/RegularExpression.hxx>
 

+ 0 - 1
Source/cmBinUtilsMacOSMachOOToolGetRuntimeDependenciesTool.h

@@ -4,7 +4,6 @@
 #pragma once
 
 #include <string>
-#include <vector>
 
 #include "cmBinUtilsMacOSMachOGetRuntimeDependenciesTool.h"
 

+ 1 - 0
Source/cmBinUtilsWindowsPEDumpbinGetRuntimeDependenciesTool.cxx

@@ -4,6 +4,7 @@
 #include "cmBinUtilsWindowsPEDumpbinGetRuntimeDependenciesTool.h"
 
 #include <sstream>
+#include <vector>
 
 #include <cmsys/RegularExpression.hxx>
 

+ 0 - 1
Source/cmBinUtilsWindowsPEDumpbinGetRuntimeDependenciesTool.h

@@ -4,7 +4,6 @@
 #pragma once
 
 #include <string>
-#include <vector>
 
 #include "cmBinUtilsWindowsPEGetRuntimeDependenciesTool.h"
 

+ 1 - 0
Source/cmBinUtilsWindowsPEObjdumpGetRuntimeDependenciesTool.cxx

@@ -4,6 +4,7 @@
 #include "cmBinUtilsWindowsPEObjdumpGetRuntimeDependenciesTool.h"
 
 #include <sstream>
+#include <vector>
 
 #include <cmsys/RegularExpression.hxx>
 

+ 0 - 1
Source/cmBinUtilsWindowsPEObjdumpGetRuntimeDependenciesTool.h

@@ -4,7 +4,6 @@
 #pragma once
 
 #include <string>
-#include <vector>
 
 #include "cmBinUtilsWindowsPEGetRuntimeDependenciesTool.h"
 

+ 0 - 1
Source/cmBlockCommand.cxx

@@ -4,7 +4,6 @@
 #include "cmBlockCommand.h"
 
 #include <cstdint>
-#include <initializer_list>
 #include <utility>
 
 #include <cm/memory>

+ 0 - 1
Source/cmCMakePresetsGraph.cxx

@@ -11,7 +11,6 @@
 #include <utility>
 
 #include <cm/memory>
-#include <cm/string_view>
 
 #include "cmsys/RegularExpression.hxx"
 

+ 1 - 1
Source/cmCMakePresetsGraphReadJSON.cxx

@@ -1,7 +1,7 @@
 /* Distributed under the OSI-approved BSD 3-Clause License.  See accompanying
    file LICENSE.rst or https://cmake.org/licensing for details.  */
 #include <algorithm>
-#include <fstream>
+#include <cstddef>
 #include <functional>
 #include <map>
 #include <string>

+ 2 - 1
Source/cmCMakePresetsGraphReadJSONPackagePresets.cxx

@@ -1,6 +1,7 @@
 /* Distributed under the OSI-approved BSD 3-Clause License.  See accompanying
    file LICENSE.rst or https://cmake.org/licensing for details.  */
 #include <cstddef>
+#include <functional>
 #include <map>
 #include <memory>
 #include <string>
@@ -15,7 +16,7 @@
 #include "cmCMakePresetsGraph.h"
 #include "cmCMakePresetsGraphInternal.h"
 #include "cmJSONHelpers.h"
-class cmJSONState;
+#include "cmJSONState.h"
 
 namespace {
 using PackagePreset = cmCMakePresetsGraph::PackagePreset;

+ 1 - 0
Source/cmCMakePresetsGraphReadJSONTestPresets.cxx

@@ -1,6 +1,7 @@
 /* Distributed under the OSI-approved BSD 3-Clause License.  See accompanying
    file LICENSE.rst or https://cmake.org/licensing for details.  */
 #include <cstddef>
+#include <functional>
 #include <map>
 #include <memory>
 #include <string>

+ 1 - 0
Source/cmCMakePresetsGraphReadJSONWorkflowPresets.cxx

@@ -1,6 +1,7 @@
 /* Distributed under the OSI-approved BSD 3-Clause License.  See accompanying
    file LICENSE.rst or https://cmake.org/licensing for details.  */
 #include <cstddef>
+#include <functional>
 #include <string>
 #include <vector>
 

+ 0 - 1
Source/cmCPackPropertiesGenerator.cxx

@@ -1,7 +1,6 @@
 #include "cmCPackPropertiesGenerator.h"
 
 #include <map>
-#include <memory>
 #include <ostream>
 
 #include "cmGeneratorExpression.h"

+ 3 - 0
Source/cmCTest.cxx

@@ -10,6 +10,7 @@
 #include <cstdlib>
 #include <cstring>
 #include <ctime>
+#include <functional>
 #include <initializer_list>
 #include <iostream>
 #include <map>
@@ -76,6 +77,8 @@
 #  include <be/kernel/OS.h> /* disable_debugger() API. */
 #endif
 
+struct tm;
+
 struct cmCTest::Private
 {
   Private(cmCTest* ctest)

+ 1 - 1
Source/cmCommands.cxx

@@ -3,7 +3,7 @@
 
 #include "cmCommands.h"
 
-#include <cm/memory>
+#include <string>
 
 #include "cmAddCompileDefinitionsCommand.h"
 #include "cmAddCustomCommandCommand.h"

+ 0 - 1
Source/cmCommonTargetGenerator.cxx

@@ -4,7 +4,6 @@
 
 #include <algorithm>
 #include <sstream>
-#include <type_traits>
 #include <utility>
 
 #include <cm/string_view>

+ 0 - 1
Source/cmComputeLinkDepends.cxx

@@ -8,7 +8,6 @@
 #include <cstdio>
 #include <iterator>
 #include <sstream>
-#include <type_traits>
 #include <unordered_map>
 #include <utility>
 

+ 1 - 0
Source/cmConfigureLog.h

@@ -2,6 +2,7 @@
    file LICENSE.rst or https://cmake.org/licensing for details.  */
 #pragma once
 
+#include <cstddef>
 #include <map>
 #include <memory>
 #include <string>

+ 1 - 0
Source/cmCoreTryCompile.cxx

@@ -5,6 +5,7 @@
 #include <array>
 #include <cstdio>
 #include <cstring>
+#include <functional>
 #include <set>
 #include <sstream>
 #include <utility>

+ 1 - 0
Source/cmDebuggerExceptionManager.h

@@ -5,6 +5,7 @@
 #include "cmConfigure.h" // IWYU pragma: keep
 
 #include <cstddef>
+#include <functional>
 #include <mutex>
 #include <string>
 #include <unordered_map>

+ 3 - 0
Source/cmDebuggerThreadManager.cxx

@@ -5,6 +5,9 @@
 
 #include <algorithm>
 
+#include <cm/optional>
+
+#include <cm3p/cppdap/optional.h>
 #include <cm3p/cppdap/protocol.h>
 #include <cm3p/cppdap/types.h>
 

Some files were not shown because too many files changed in this diff