Browse Source

Merge topic 'ci-fedora-41' into release-3.31

566b07bbf7 ci: Restore cmake.org html documentation search results for index entries
c8591c61d8 ci: use Fedora 41 images and environments
46d89b8524 ci: update Linux image to Fedora 41
e6da61fcd9 ci: Run Fedora + Makefiles job on x86_64-v3 hosts for mpich+libfabric
92d5c48b14 CTestCustom: Suppress clang-analyzer warning in libuv
5c7a55edc2 cmStringAlgorithms: Fix core.NonNullParamChecker diagnostic in cmAlphaNum
51ed0eba18 KWSys: SystemInformation: Add missing EOF check when reading /proc/cpuinfo
f60b4c553e Utilities/Sphinx: Tell linkcheck to not treat timeouts as broken
...

Acked-by: Kitware Robot <[email protected]>
Merge-request: !9947
Brad King 1 year ago
parent
commit
7e7d1c6a46
84 changed files with 207 additions and 189 deletions
  1. 11 3
      .clang-tidy
  2. 1 1
      .codespellrc
  3. 48 48
      .gitlab-ci.yml
  4. 0 3
      .gitlab/ci/configure_fedora40_clang_analyzer.cmake
  5. 0 1
      .gitlab/ci/configure_fedora40_makefiles_lfortran.cmake
  6. 0 1
      .gitlab/ci/configure_fedora40_ninja_lfortran.cmake
  7. 1 1
      .gitlab/ci/configure_fedora41_asan.cmake
  8. 3 0
      .gitlab/ci/configure_fedora41_clang_analyzer.cmake
  9. 0 0
      .gitlab/ci/configure_fedora41_common.cmake
  10. 1 1
      .gitlab/ci/configure_fedora41_common_clang.cmake
  11. 0 0
      .gitlab/ci/configure_fedora41_common_lfortran.cmake
  12. 0 0
      .gitlab/ci/configure_fedora41_extdeps.cmake
  13. 0 2
      .gitlab/ci/configure_fedora41_makefiles.cmake
  14. 1 1
      .gitlab/ci/configure_fedora41_makefiles_clang.cmake
  15. 1 0
      .gitlab/ci/configure_fedora41_makefiles_lfortran.cmake
  16. 1 1
      .gitlab/ci/configure_fedora41_makefiles_symlinked.cmake
  17. 1 1
      .gitlab/ci/configure_fedora41_ninja.cmake
  18. 1 1
      .gitlab/ci/configure_fedora41_ninja_clang.cmake
  19. 1 0
      .gitlab/ci/configure_fedora41_ninja_lfortran.cmake
  20. 0 0
      .gitlab/ci/configure_fedora41_ninja_multi.cmake
  21. 1 1
      .gitlab/ci/configure_fedora41_ninja_multi_clang.cmake
  22. 0 0
      .gitlab/ci/configure_fedora41_sphinx.cmake
  23. 0 0
      .gitlab/ci/configure_fedora41_sphinx_package.cmake
  24. 1 1
      .gitlab/ci/configure_fedora41_tidy.cmake
  25. 0 0
      .gitlab/ci/ctest_memcheck_fedora41_asan.lsan.supp
  26. 4 4
      .gitlab/ci/docker/fedora41/Dockerfile
  27. 0 1
      .gitlab/ci/docker/fedora41/deps_packages.lst
  28. 2 11
      .gitlab/ci/docker/fedora41/install_deps.sh
  29. 3 1
      .gitlab/ci/docker/fedora41/install_iwyu.sh
  30. 0 0
      .gitlab/ci/docker/fedora41/install_rvm.sh
  31. 0 0
      .gitlab/ci/docker/fedora41/iwyu_packages.lst
  32. 1 0
      .gitlab/ci/docker/fedora41/rvm_packages.lst
  33. 0 3
      .gitlab/ci/env_fedora40_common_clang.sh
  34. 0 1
      .gitlab/ci/env_fedora40_makefiles_clang.sh
  35. 0 1
      .gitlab/ci/env_fedora40_makefiles_lfortran.sh
  36. 0 1
      .gitlab/ci/env_fedora40_makefiles_symlinked.cmake
  37. 0 1
      .gitlab/ci/env_fedora40_makefiles_symlinked.sh
  38. 0 1
      .gitlab/ci/env_fedora40_ninja_clang.sh
  39. 0 1
      .gitlab/ci/env_fedora40_ninja_lfortran.sh
  40. 0 1
      .gitlab/ci/env_fedora40_ninja_multi_clang.sh
  41. 0 0
      .gitlab/ci/env_fedora41_asan.sh
  42. 0 0
      .gitlab/ci/env_fedora41_clang_analyzer.sh
  43. 3 0
      .gitlab/ci/env_fedora41_common_clang.sh
  44. 0 0
      .gitlab/ci/env_fedora41_common_lfortran.sh
  45. 0 0
      .gitlab/ci/env_fedora41_extdeps.sh
  46. 0 0
      .gitlab/ci/env_fedora41_makefiles.cmake
  47. 0 0
      .gitlab/ci/env_fedora41_makefiles.sh
  48. 1 0
      .gitlab/ci/env_fedora41_makefiles_clang.sh
  49. 1 0
      .gitlab/ci/env_fedora41_makefiles_lfortran.sh
  50. 1 0
      .gitlab/ci/env_fedora41_makefiles_symlinked.cmake
  51. 1 0
      .gitlab/ci/env_fedora41_makefiles_symlinked.sh
  52. 0 0
      .gitlab/ci/env_fedora41_ninja.sh
  53. 1 0
      .gitlab/ci/env_fedora41_ninja_clang.sh
  54. 1 0
      .gitlab/ci/env_fedora41_ninja_lfortran.sh
  55. 0 0
      .gitlab/ci/env_fedora41_ninja_multi.sh
  56. 1 0
      .gitlab/ci/env_fedora41_ninja_multi_clang.sh
  57. 0 0
      .gitlab/ci/post_build_fedora41_tidy.sh
  58. 0 0
      .gitlab/ci/pre_build_fedora41_tidy.sh
  59. 57 52
      .gitlab/os-linux.yml
  60. 2 2
      .gitlab/upload.yml
  61. 1 0
      CTestCustom.cmake.in
  62. 1 1
      Help/variable/CMAKE_FIND_PACKAGE_TARGETS_GLOBAL.rst
  63. 2 2
      Modules/FindCUDA.cmake
  64. 1 1
      Modules/Internal/CPack/CPackDeb.cmake
  65. 1 1
      Source/CTest/cmCTestScriptHandler.h
  66. 1 1
      Source/CTest/cmCTestTestHandler.h
  67. 7 7
      Source/cmGeneratorExpressionNode.cxx
  68. 1 1
      Source/cmStringAlgorithms.h
  69. 3 2
      Source/kwsys/SystemInformation.cxx
  70. 1 1
      Templates/MSBuild/FlagTables/v142_CL.json
  71. 1 1
      Templates/MSBuild/FlagTables/v143_CL.json
  72. 2 2
      Tests/FindBoost/TestPython/CMakeLists.txt
  73. 2 2
      Tests/FortranModules/Submodules/obfuscated_parent.f90
  74. 6 3
      Tests/RunCMake/BuildDepends/LinkDependsCheck.cmake
  75. 4 1
      Tests/RunCMake/BuildDepends/RunCMakeTest.cmake
  76. 1 1
      Tests/RunCMake/CPack/DEB/Helpers.cmake
  77. 1 1
      Tests/RunCMake/CPack/README.txt
  78. 1 1
      Tests/RunCMake/ctest_labels_for_subprojects/CTestScriptVariableCommandLine-stderr.txt
  79. 4 4
      Tests/RunCMake/ctest_labels_for_subprojects/MyThirdPartyDependency/src/CMakeLists.txt
  80. 0 0
      Tests/RunCMake/ctest_labels_for_subprojects/MyThirdPartyDependency/src/third_party.c
  81. 2 0
      Tests/RunCMake/detect_jobserver.c
  82. 9 7
      Tests/RunCMake/pseudo_llvm-rc.c
  83. 1 1
      Utilities/Scripts/update-third-party.bash
  84. 2 0
      Utilities/Sphinx/conf.py.in

+ 11 - 3
.clang-tidy

@@ -2,6 +2,7 @@
 Checks: "-*,\
 bugprone-*,\
 -bugprone-assignment-in-if-condition,\
+-bugprone-crtp-constructor-accessibility,\
 -bugprone-easily-swappable-parameters,\
 -bugprone-empty-catch,\
 -bugprone-implicit-widening-of-multiplication-result,\
@@ -10,19 +11,23 @@ bugprone-*,\
 -bugprone-misplaced-widening-cast,\
 -bugprone-multi-level-implicit-pointer-conversion,\
 -bugprone-narrowing-conversions,\
+-bugprone-return-const-ref-from-parameter,\
+-bugprone-suspicious-stringview-data-usage,\
 -bugprone-switch-missing-default-case,\
 -bugprone-too-small-loop-variable,\
 -bugprone-unchecked-optional-access,\
 -bugprone-unused-local-non-trivial-variable,\
 -bugprone-unused-return-value,\
+-bugprone-use-after-move,\
 misc-*,\
 -misc-confusable-identifiers,\
 -misc-const-correctness,\
 -misc-include-cleaner,\
--misc-no-recursion,\
 -misc-non-private-member-variables-in-classes,\
+-misc-no-recursion,\
 -misc-static-assert,\
 -misc-use-anonymous-namespace,\
+-misc-use-internal-linkage,\
 modernize-*,\
 -modernize-avoid-c-arrays,\
 -modernize-macro-to-enum,\
@@ -36,13 +41,14 @@ modernize-*,\
 performance-*,\
 -performance-avoid-endl,\
 -performance-enum-size,\
--performance-inefficient-vector-operation,\
--performance-noexcept-swap,\
+-performance-unnecessary-copy-initialization,\
+-performance-unnecessary-value-param,\
 readability-*,\
 -readability-avoid-nested-conditional-operator,\
 -readability-avoid-return-with-void-value,\
 -readability-avoid-unconditional-preprocessor-if,\
 -readability-convert-member-functions-to-static,\
+-readability-enum-initial-value,\
 -readability-function-cognitive-complexity,\
 -readability-function-size,\
 -readability-identifier-length,\
@@ -51,6 +57,7 @@ readability-*,\
 -readability-inconsistent-declaration-parameter-name,\
 -readability-magic-numbers,\
 -readability-make-member-function-const,\
+-readability-math-missing-parentheses,\
 -readability-named-parameter,\
 -readability-redundant-casting,\
 -readability-redundant-declaration,\
@@ -61,6 +68,7 @@ readability-*,\
 -readability-static-accessed-through-instance,\
 -readability-suspicious-call-argument,\
 -readability-uppercase-literal-suffix,\
+-readability-use-std-min-max,\
 cmake-*,\
 -cmake-ostringstream-use-cmstrcat,\
 -cmake-string-concatenation-use-cmstrcat,\

+ 1 - 1
.codespellrc

@@ -5,4 +5,4 @@ check-hidden =
 quiet-level = 2
 builtin = clear,rare,en-GB_to_en-US
 skip = */.git,*/build,*/Copyright.txt,*/CTestCustom.cmake.in,*/doxygen.config,*/Modules/Internal/CPack/NSIS.template.in,*/Source/CursesDialog/form/*,*/Source/kwsys/*,*/Tests/RunCMake/CPack/tests/DMG_SLA/German.*,*/Tests/RunCMake/ParseImplicitData/*.input,*/Tests/StringFileTest/test.utf8,*.pfx,*/Utilities/cm*
-ignore-words-list = aci,ags,ake,ans,ba,ccompiler,cconfiguration,certi,conly,dependees,dne,dum,earch,ect,filetest,fo,helpfull,hiden,isnt,keypair,nd,ned,nin,nknown,ot,pard,seh,ser,te,upto,varn,vas,wee
+ignore-words-list = aci,ags,ake,ans,ba,ccompiler,cconfiguration,certi,conly,copyin,dependees,dne,dum,earch,ect,filetest,fo,helpfull,hiden,isnt,keypair,nd,ned,nin,nknown,ot,pard,sectionin,seh,ser,te,upto,varn,vas,wee

+ 48 - 48
.gitlab-ci.yml

@@ -59,7 +59,7 @@ p:source-package:
 
 p:doc-package:
     extends:
-        - .fedora40_sphinx_package
+        - .fedora41_sphinx_package
         - .cmake_prep_doc_linux
         - .linux_x86_64_tags
         - .cmake_doc_artifacts
@@ -108,18 +108,18 @@ l:iwyu-debian12:
         - .cmake_cdash_artifacts
         - .run_automatically
 
-l:tidy-fedora40:
+l:tidy-fedora41:
     extends:
-        - .fedora40_tidy
+        - .fedora41_tidy
         - .cmake_build_linux
         - .cmake_tidy_artifacts
         - .linux_x86_64_tags
         - .cmake_cdash_artifacts
         - .run_automatically
 
-l:sphinx-fedora40:
+l:sphinx-fedora41:
     extends:
-        - .fedora40_sphinx
+        - .fedora41_sphinx
         - .cmake_build_linux
         - .cmake_sphinx_artifacts
         - .linux_x86_64_tags
@@ -128,9 +128,9 @@ l:sphinx-fedora40:
         CMAKE_CI_JOB_CONTINUOUS: "true"
         CMAKE_CI_JOB_HELP: "true"
 
-l:clang-analyzer-fedora40:
+l:clang-analyzer-fedora41:
     extends:
-        - .fedora40_clang_analyzer
+        - .fedora41_clang_analyzer
         - .cmake_build_linux
         - .linux_x86_64_tags
         - .run_automatically
@@ -234,9 +234,9 @@ t:fedora39-hip-radeon:
     variables:
         CMAKE_CI_JOB_NIGHTLY: "true"
 
-t:fedora40-makefiles-lfortran:
+t:fedora41-makefiles-lfortran:
     extends:
-        - .fedora40_makefiles_lfortran
+        - .fedora41_makefiles_lfortran
         - .cmake_test_linux_release
         - .linux_x86_64_tags
         - .run_dependent
@@ -244,9 +244,9 @@ t:fedora40-makefiles-lfortran:
     variables:
         CMAKE_CI_JOB_NIGHTLY: "true"
 
-t:fedora40-ninja-lfortran:
+t:fedora41-ninja-lfortran:
     extends:
-        - .fedora40_ninja_lfortran
+        - .fedora41_ninja_lfortran
         - .cmake_test_linux_release
         - .linux_x86_64_tags
         - .run_dependent
@@ -254,9 +254,9 @@ t:fedora40-ninja-lfortran:
     variables:
         CMAKE_CI_JOB_NIGHTLY: "true"
 
-t:fedora40-ninja-clang:
+t:fedora41-ninja-clang:
     extends:
-        - .fedora40_ninja_clang
+        - .fedora41_ninja_clang
         - .cmake_test_linux_release
         - .linux_x86_64_tags
         - .run_dependent
@@ -264,9 +264,9 @@ t:fedora40-ninja-clang:
     variables:
         CMAKE_CI_JOB_NIGHTLY: "true"
 
-t:fedora40-ninja-multi-clang:
+t:fedora41-ninja-multi-clang:
     extends:
-        - .fedora40_ninja_multi_clang
+        - .fedora41_ninja_multi_clang
         - .cmake_test_linux_release
         - .linux_x86_64_tags
         - .run_dependent
@@ -274,9 +274,9 @@ t:fedora40-ninja-multi-clang:
     variables:
         CMAKE_CI_JOB_NIGHTLY: "true"
 
-t:fedora40-makefiles-clang:
+t:fedora41-makefiles-clang:
     extends:
-        - .fedora40_makefiles_clang
+        - .fedora41_makefiles_clang
         - .cmake_test_linux_release
         - .linux_x86_64_tags
         - .run_dependent
@@ -284,25 +284,25 @@ t:fedora40-makefiles-clang:
     variables:
         CMAKE_CI_JOB_NIGHTLY: "true"
 
-t:fedora40-makefiles:
+t:fedora41-makefiles:
     extends:
-        - .fedora40_makefiles
+        - .fedora41_makefiles
         - .cmake_test_linux_release
-        - .linux_x86_64_tags
+        - .linux_x86_64_v3_tags
         - .run_dependent
         - .needs_centos7_x86_64
 
-t:fedora40-makefiles-nospace:
+t:fedora41-makefiles-nospace:
     extends:
-        - .fedora40_makefiles
+        - .fedora41_makefiles
         - .cmake_test_linux_release
-        - .linux_x86_64_tags
+        - .linux_x86_64_v3_tags
         - .cmake_junit_artifacts
         - .run_dependent
         - .needs_centos7_x86_64
     variables:
         GIT_CLONE_PATH: "$CI_BUILDS_DIR/cmake-ci"
-        CMAKE_CI_BUILD_NAME: fedora40_makefiles_nospace
+        CMAKE_CI_BUILD_NAME: fedora41_makefiles_nospace
         CMAKE_CI_JOB_NIGHTLY: "true"
 
 t:nvhpc22.11-ninja:
@@ -448,9 +448,9 @@ t:debian10-legacy:
     variables:
         CMAKE_CI_JOB_NIGHTLY: "true"
 
-b:fedora40-ninja:
+b:fedora41-ninja:
     extends:
-        - .fedora40_ninja
+        - .fedora41_ninja
         - .cmake_build_linux
         - .cmake_build_artifacts
         - .linux_x86_64_tags
@@ -458,9 +458,9 @@ b:fedora40-ninja:
     variables:
         CMAKE_CI_JOB_CONTINUOUS: "true"
 
-b:fedora40-makefiles-symlinked:
+b:fedora41-makefiles-symlinked:
     extends:
-        - .fedora40_makefiles_symlinked
+        - .fedora41_makefiles_symlinked
         - .cmake_build_linux
         - .cmake_build_artifacts
         - .linux_x86_64_tags
@@ -495,54 +495,54 @@ b:debian12-aarch64-extdeps:
     variables:
         CMAKE_CI_JOB_NIGHTLY: "true"
 
-b:fedora40-extdeps:
+b:fedora41-extdeps:
     extends:
-        - .fedora40_extdeps
+        - .fedora41_extdeps
         - .cmake_build_linux_standalone
         - .linux_x86_64_tags
         - .run_manually
     variables:
         CMAKE_CI_JOB_NIGHTLY: "true"
 
-t:fedora40-ninja:
+t:fedora41-ninja:
     extends:
-        - .fedora40_ninja
+        - .fedora41_ninja
         - .cmake_test_linux
         - .linux_x86_64_tags_x11
         - .cmake_test_artifacts
         - .run_dependent
     dependencies:
-        - b:fedora40-ninja
+        - b:fedora41-ninja
     needs:
-        - b:fedora40-ninja
+        - b:fedora41-ninja
     variables:
         CMAKE_CI_JOB_CONTINUOUS: "true"
 
-t:fedora40-makefiles-symlinked:
+t:fedora41-makefiles-symlinked:
     extends:
-        - .fedora40_makefiles_symlinked
+        - .fedora41_makefiles_symlinked
         - .cmake_test_linux
         - .linux_x86_64_tags_x11
         - .cmake_test_artifacts
         - .run_dependent
     dependencies:
-        - b:fedora40-makefiles-symlinked
+        - b:fedora41-makefiles-symlinked
     needs:
-        - b:fedora40-makefiles-symlinked
+        - b:fedora41-makefiles-symlinked
     variables:
         CMAKE_CI_JOB_NIGHTLY: "true"
 
-t:fedora40-ninja-multi:
+t:fedora41-ninja-multi:
     extends:
-        - .fedora40_ninja_multi
+        - .fedora41_ninja_multi
         - .cmake_test_linux_external
         - .linux_x86_64_tags
         - .cmake_junit_artifacts
         - .run_dependent
     dependencies:
-        - t:fedora40-ninja
+        - t:fedora41-ninja
     needs:
-        - t:fedora40-ninja
+        - t:fedora41-ninja
 
 t:intel2016u2-makefiles:
     extends:
@@ -797,9 +797,9 @@ u:linux-aarch64-package:
 
 ## Sanitizer builds
 
-b:fedora40-asan:
+b:fedora41-asan:
     extends:
-        - .fedora40_asan
+        - .fedora41_asan
         - .cmake_build_linux
         - .cmake_build_artifacts
         - .linux_x86_64_tags
@@ -807,16 +807,16 @@ b:fedora40-asan:
     variables:
         CMAKE_CI_JOB_NIGHTLY: "true"
 
-t:fedora40-asan:
+t:fedora41-asan:
     extends:
-        - .fedora40_asan
+        - .fedora41_asan
         - .cmake_memcheck_linux
         - .linux_x86_64_tags
         - .run_dependent
     dependencies:
-        - b:fedora40-asan
+        - b:fedora41-asan
     needs:
-        - b:fedora40-asan
+        - b:fedora41-asan
     variables:
         CMAKE_CI_JOB_NIGHTLY: "true"
 

+ 0 - 3
.gitlab/ci/configure_fedora40_clang_analyzer.cmake

@@ -1,3 +0,0 @@
-set(configure_no_sccache 1)
-
-include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora40_common.cmake")

+ 0 - 1
.gitlab/ci/configure_fedora40_makefiles_lfortran.cmake

@@ -1 +0,0 @@
-include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora40_common_lfortran.cmake")

+ 0 - 1
.gitlab/ci/configure_fedora40_ninja_lfortran.cmake

@@ -1 +0,0 @@
-include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora40_common_lfortran.cmake")

+ 1 - 1
.gitlab/ci/configure_fedora40_asan.cmake → .gitlab/ci/configure_fedora41_asan.cmake

@@ -1,4 +1,4 @@
 set(CMAKE_C_FLAGS "-fsanitize=address" CACHE STRING "")
 set(CMAKE_CXX_FLAGS "-fsanitize=address" CACHE STRING "")
 
-include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora40_common.cmake")
+include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora41_common.cmake")

+ 3 - 0
.gitlab/ci/configure_fedora41_clang_analyzer.cmake

@@ -0,0 +1,3 @@
+set(configure_no_sccache 1)
+
+include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora41_common.cmake")

+ 0 - 0
.gitlab/ci/configure_fedora40_common.cmake → .gitlab/ci/configure_fedora41_common.cmake


+ 1 - 1
.gitlab/ci/configure_fedora40_common_clang.cmake → .gitlab/ci/configure_fedora41_common_clang.cmake

@@ -11,7 +11,7 @@ set(CMake_TEST_FindOpenACC_CXX "ON" CACHE BOOL "")
 set(CMake_TEST_FindOpenACC_Fortran "OFF" CACHE BOOL "") # flang-new fails producing LLVM IR
 set(CMake_TEST_FindOpenMP_C "ON" CACHE BOOL "")
 set(CMake_TEST_FindOpenMP_CXX "ON" CACHE BOOL "")
-set(CMake_TEST_FindOpenMP_Fortran "ON" CACHE BOOL "")
+set(CMake_TEST_FindOpenMP_Fortran "OFF" CACHE BOOL "") # https://bugzilla.redhat.com/show_bug.cgi?id=2321571
 set(CMake_TEST_FindOpenMP "ON" CACHE BOOL "")
 
 include("${CMAKE_CURRENT_LIST_DIR}/configure_external_test.cmake")

+ 0 - 0
.gitlab/ci/configure_fedora40_common_lfortran.cmake → .gitlab/ci/configure_fedora41_common_lfortran.cmake


+ 0 - 0
.gitlab/ci/configure_fedora40_extdeps.cmake → .gitlab/ci/configure_fedora41_extdeps.cmake


+ 0 - 2
.gitlab/ci/configure_fedora40_makefiles.cmake → .gitlab/ci/configure_fedora41_makefiles.cmake

@@ -83,9 +83,7 @@ set(CMake_TEST_FindPNG "ON" CACHE BOOL "")
 set(CMake_TEST_FindPostgreSQL "ON" CACHE BOOL "")
 set(CMake_TEST_FindProtobuf "ON" CACHE BOOL "")
 set(CMake_TEST_FindProtobuf_gRPC "ON" CACHE BOOL "")
-set(CMake_TEST_FindPython2 "ON" CACHE BOOL "")
 set(CMake_TEST_FindPython3 "ON" CACHE BOOL "")
-set(CMake_TEST_FindPython2_NumPy "ON" CACHE BOOL "")
 set(CMake_TEST_FindPython3_NumPy "ON" CACHE BOOL "")
 set(CMake_TEST_FindPython2_PyPy "ON" CACHE BOOL "")
 set(CMake_TEST_FindPython3_PyPy "ON" CACHE BOOL "")

+ 1 - 1
.gitlab/ci/configure_fedora40_makefiles_clang.cmake → .gitlab/ci/configure_fedora41_makefiles_clang.cmake

@@ -2,4 +2,4 @@ if (NOT "$ENV{CMAKE_CI_NIGHTLY}" STREQUAL "")
   set(CMAKE_TESTS_CDASH_SERVER "https://open.cdash.org" CACHE STRING "")
 endif()
 
-include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora40_common_clang.cmake")
+include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora41_common_clang.cmake")

+ 1 - 0
.gitlab/ci/configure_fedora41_makefiles_lfortran.cmake

@@ -0,0 +1 @@
+include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora41_common_lfortran.cmake")

+ 1 - 1
.gitlab/ci/configure_fedora40_makefiles_symlinked.cmake → .gitlab/ci/configure_fedora41_makefiles_symlinked.cmake

@@ -1,2 +1,2 @@
 include("${CMAKE_CURRENT_LIST_DIR}/configure_symlinked_common.cmake")
-include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora40_common.cmake")
+include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora41_common.cmake")

+ 1 - 1
.gitlab/ci/configure_fedora40_ninja.cmake → .gitlab/ci/configure_fedora41_ninja.cmake

@@ -15,4 +15,4 @@ set(CMAKE_CXX_FLAGS_RELEASE "-O3" CACHE STRING "")
 # Cover compilation with C++11 only and not higher standards.
 set(CMAKE_CXX_STANDARD "11" CACHE STRING "")
 
-include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora40_common.cmake")
+include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora41_common.cmake")

+ 1 - 1
.gitlab/ci/configure_fedora40_ninja_clang.cmake → .gitlab/ci/configure_fedora41_ninja_clang.cmake

@@ -1,3 +1,3 @@
 set(CMake_TEST_MODULE_COMPILATION "named,compile_commands,collation,partitions,internal_partitions,export_bmi,install_bmi,shared,bmionly,build_database" CACHE STRING "")
 
-include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora40_common_clang.cmake")
+include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora41_common_clang.cmake")

+ 1 - 0
.gitlab/ci/configure_fedora41_ninja_lfortran.cmake

@@ -0,0 +1 @@
+include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora41_common_lfortran.cmake")

+ 0 - 0
.gitlab/ci/configure_fedora40_ninja_multi.cmake → .gitlab/ci/configure_fedora41_ninja_multi.cmake


+ 1 - 1
.gitlab/ci/configure_fedora40_ninja_multi_clang.cmake → .gitlab/ci/configure_fedora41_ninja_multi_clang.cmake

@@ -1,3 +1,3 @@
 set(CMake_TEST_MODULE_COMPILATION "named,compile_commands,collation,partitions,internal_partitions,export_bmi,install_bmi,shared,bmionly,build_database" CACHE STRING "")
 
-include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora40_common_clang.cmake")
+include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora41_common_clang.cmake")

+ 0 - 0
.gitlab/ci/configure_fedora40_sphinx.cmake → .gitlab/ci/configure_fedora41_sphinx.cmake


+ 0 - 0
.gitlab/ci/configure_fedora40_sphinx_package.cmake → .gitlab/ci/configure_fedora41_sphinx_package.cmake


+ 1 - 1
.gitlab/ci/configure_fedora40_tidy.cmake → .gitlab/ci/configure_fedora41_tidy.cmake

@@ -3,4 +3,4 @@ set(CMake_USE_CLANG_TIDY_MODULE ON CACHE BOOL "")
 set(CMake_CLANG_TIDY_MODULE "$ENV{CI_PROJECT_DIR}/Utilities/ClangTidyModule/build/libcmake-clang-tidy-module.so" CACHE FILEPATH "")
 set(CMake_CLANG_TIDY_EXPORT_FIXES_DIR "$ENV{CI_PROJECT_DIR}/.gitlab/clang-tidy-fixes" CACHE PATH "")
 
-include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora40_common.cmake")
+include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora41_common.cmake")

+ 0 - 0
.gitlab/ci/ctest_memcheck_fedora40_asan.lsan.supp → .gitlab/ci/ctest_memcheck_fedora41_asan.lsan.supp


+ 4 - 4
.gitlab/ci/docker/fedora40/Dockerfile → .gitlab/ci/docker/fedora41/Dockerfile

@@ -1,6 +1,6 @@
 # syntax=docker/dockerfile:1
 
-ARG BASE_IMAGE=fedora:40
+ARG BASE_IMAGE=fedora:41
 
 FROM ${BASE_IMAGE} AS dnf-cache
 # Populate DNF cache w/ the fresh metadata and prefetch packages.
@@ -23,7 +23,7 @@ LABEL maintainer="Ben Boeckel <[email protected]>"
 
 RUN --mount=type=bind,source=install_rvm.sh,target=/root/install_rvm.sh \
     --mount=type=bind,source=rvm_packages.lst,target=/root/rvm_packages.lst \
-    --mount=type=cache,from=dnf-cache,source=/var/cache/dnf,target=/var/cache/dnf,sharing=private \
+    --mount=type=cache,from=dnf-cache,source=/var/lib/dnf,target=/var/lib/dnf,sharing=private \
     --mount=type=tmpfs,target=/var/log \
     --mount=type=tmpfs,target=/tmp \
     sh /root/install_rvm.sh
@@ -34,7 +34,7 @@ LABEL maintainer="Kyle Edwards <[email protected]>"
 
 RUN --mount=type=bind,source=install_iwyu.sh,target=/root/install_iwyu.sh \
     --mount=type=bind,source=iwyu_packages.lst,target=/root/iwyu_packages.lst \
-    --mount=type=cache,from=dnf-cache,source=/var/cache/dnf,target=/var/cache/dnf,sharing=private \
+    --mount=type=cache,from=dnf-cache,source=/var/lib/dnf,target=/var/lib/dnf,sharing=private \
     --mount=type=tmpfs,target=/var/log \
     --mount=type=tmpfs,target=/tmp \
     sh /root/install_iwyu.sh
@@ -45,7 +45,7 @@ LABEL maintainer="Ben Boeckel <[email protected]>"
 
 RUN --mount=type=bind,source=install_deps.sh,target=/root/install_deps.sh \
     --mount=type=bind,source=deps_packages.lst,target=/root/deps_packages.lst \
-    --mount=type=cache,from=dnf-cache,source=/var/cache/dnf,target=/var/cache/dnf,sharing=private \
+    --mount=type=cache,from=dnf-cache,source=/var/lib/dnf,target=/var/lib/dnf,sharing=private \
     --mount=type=cache,target=/var/cache/pip \
     --mount=type=tmpfs,target=/var/log \
     --mount=type=tmpfs,target=/tmp \

+ 0 - 1
.gitlab/ci/docker/fedora40/deps_packages.lst → .gitlab/ci/docker/fedora41/deps_packages.lst

@@ -109,7 +109,6 @@ perl
 protobuf-devel protobuf-c-devel protobuf-lite-devel
 pypy2 pypy2-devel
 pypy3 pypy3-devel
-python2 python2-devel
 python3 python3-devel python3-numpy
 python3-jsmin python3-jsonschema
 ruby rubygems ruby-devel

+ 2 - 11
.gitlab/ci/docker/fedora40/install_deps.sh → .gitlab/ci/docker/fedora41/install_deps.sh

@@ -9,22 +9,13 @@ dnf install \
     -y \
     $(grep '^[^#]\+$' /root/deps_packages.lst)
 
-# Fedora no longer packages python2 numpy.
-curl https://bootstrap.pypa.io/pip/2.7/get-pip.py -o - | python2
-pip2.7 install --disable-pip-version-check --no-input --no-compile --cache-dir /var/cache/pip numpy
-
-# Remove demos and Python2 tests
-for p in Demo test; do
-    rm -rf /usr/lib64/python2.7/${p}
-done
-
 # Remove tests for numpy
-for v in 2.7 3.12; do
+for v in 3.13; do
     find /usr/lib64/python${v}/site-packages/numpy -type d -a -name tests -exec rm -rf {} +
 done
 
 # Remove some other packages tests
-find /usr/lib64/python3.12/site-packages/breezy -type d -a -name tests -exec rm -rf {} +
+find /usr/lib64/python3.13/site-packages/breezy -type d -a -name tests -exec rm -rf {} +
 
 # Perforce
 curl -L https://www.perforce.com/downloads/perforce/r21.2/bin.linux26x86_64/helix-core-server.tgz -o - \

+ 3 - 1
.gitlab/ci/docker/fedora40/install_iwyu.sh → .gitlab/ci/docker/fedora41/install_iwyu.sh

@@ -15,7 +15,9 @@ git clone "https://github.com/include-what-you-use/include-what-you-use.git"
 cd include-what-you-use
 readonly llvm_full_version="$( clang --version | head -n1 | cut -d' ' -f3 )"
 readonly llvm_version="$( echo "$llvm_full_version" | cut -d. -f-1 )"
-git checkout "clang_$llvm_version"
+#FIXME(IWYU): Create clang_19 branch.
+#git checkout "clang_$llvm_version"
+git checkout d2d092919f2774b5463e236e1ee9d56fb46ceb60 # 2024-10-05
 git apply <<EOF
 diff --git a/iwyu_driver.cc b/iwyu_driver.cc
 index dd4b046..cfd568a 100644

+ 0 - 0
.gitlab/ci/docker/fedora40/install_rvm.sh → .gitlab/ci/docker/fedora41/install_rvm.sh


+ 0 - 0
.gitlab/ci/docker/fedora40/iwyu_packages.lst → .gitlab/ci/docker/fedora41/iwyu_packages.lst


+ 1 - 0
.gitlab/ci/docker/fedora40/rvm_packages.lst → .gitlab/ci/docker/fedora41/rvm_packages.lst

@@ -5,6 +5,7 @@ bzip2
 findutils
 gcc-c++
 glibc-devel
+gnupg2
 libffi-devel
 libtool
 libyaml-devel

+ 0 - 3
.gitlab/ci/env_fedora40_common_clang.sh

@@ -1,3 +0,0 @@
-export CC=/usr/bin/clang-18
-export CXX=/usr/bin/clang++-18
-export FC=/usr/bin/flang-new

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

@@ -1 +0,0 @@
-. .gitlab/ci/env_fedora40_common_clang.sh

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

@@ -1 +0,0 @@
-. .gitlab/ci/env_fedora40_common_lfortran.sh

+ 0 - 1
.gitlab/ci/env_fedora40_makefiles_symlinked.cmake

@@ -1 +0,0 @@
-include("${CMAKE_CURRENT_LIST_DIR}/env_fedora40_makefiles.cmake")

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

@@ -1 +0,0 @@
-. .gitlab/ci/env_fedora40_makefiles.sh

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

@@ -1 +0,0 @@
-. .gitlab/ci/env_fedora40_common_clang.sh

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

@@ -1 +0,0 @@
-. .gitlab/ci/env_fedora40_common_lfortran.sh

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

@@ -1 +0,0 @@
-. .gitlab/ci/env_fedora40_common_clang.sh

+ 0 - 0
.gitlab/ci/env_fedora40_asan.sh → .gitlab/ci/env_fedora41_asan.sh


+ 0 - 0
.gitlab/ci/env_fedora40_clang_analyzer.sh → .gitlab/ci/env_fedora41_clang_analyzer.sh


+ 3 - 0
.gitlab/ci/env_fedora41_common_clang.sh

@@ -0,0 +1,3 @@
+export CC=/usr/bin/clang-19
+export CXX=/usr/bin/clang++-19
+export FC=/usr/bin/flang-new

+ 0 - 0
.gitlab/ci/env_fedora40_common_lfortran.sh → .gitlab/ci/env_fedora41_common_lfortran.sh


+ 0 - 0
.gitlab/ci/env_fedora40_extdeps.sh → .gitlab/ci/env_fedora41_extdeps.sh


+ 0 - 0
.gitlab/ci/env_fedora40_makefiles.cmake → .gitlab/ci/env_fedora41_makefiles.cmake


+ 0 - 0
.gitlab/ci/env_fedora40_makefiles.sh → .gitlab/ci/env_fedora41_makefiles.sh


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

@@ -0,0 +1 @@
+. .gitlab/ci/env_fedora41_common_clang.sh

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

@@ -0,0 +1 @@
+. .gitlab/ci/env_fedora41_common_lfortran.sh

+ 1 - 0
.gitlab/ci/env_fedora41_makefiles_symlinked.cmake

@@ -0,0 +1 @@
+include("${CMAKE_CURRENT_LIST_DIR}/env_fedora41_makefiles.cmake")

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

@@ -0,0 +1 @@
+. .gitlab/ci/env_fedora41_makefiles.sh

+ 0 - 0
.gitlab/ci/env_fedora40_ninja.sh → .gitlab/ci/env_fedora41_ninja.sh


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

@@ -0,0 +1 @@
+. .gitlab/ci/env_fedora41_common_clang.sh

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

@@ -0,0 +1 @@
+. .gitlab/ci/env_fedora41_common_lfortran.sh

+ 0 - 0
.gitlab/ci/env_fedora40_ninja_multi.sh → .gitlab/ci/env_fedora41_ninja_multi.sh


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

@@ -0,0 +1 @@
+. .gitlab/ci/env_fedora41_common_clang.sh

+ 0 - 0
.gitlab/ci/post_build_fedora40_tidy.sh → .gitlab/ci/post_build_fedora41_tidy.sh


+ 0 - 0
.gitlab/ci/pre_build_fedora40_tidy.sh → .gitlab/ci/pre_build_fedora41_tidy.sh


+ 57 - 52
.gitlab/os-linux.yml

@@ -5,7 +5,7 @@
 ### Release
 
 .linux_prep_source:
-    image: "fedora:40"
+    image: "fedora:41"
 
     variables:
         GIT_CLONE_PATH: "$CI_BUILDS_DIR/cmake ci"
@@ -68,8 +68,8 @@
 
 ### Fedora
 
-.fedora40:
-    image: "kitware/cmake:ci-fedora40-x86_64-2024-07-23"
+.fedora41:
+    image: "kitware/cmake:ci-fedora41-x86_64-2024-10-23"
 
     variables:
         GIT_CLONE_PATH: "$CI_BUILDS_DIR/cmake ci/long file name for testing purposes"
@@ -85,36 +85,36 @@
 
 #### Lint builds
 
-.fedora40_tidy:
-    extends: .fedora40
+.fedora41_tidy:
+    extends: .fedora41
 
     variables:
-        CMAKE_CONFIGURATION: fedora40_tidy
+        CMAKE_CONFIGURATION: fedora41_tidy
         CMAKE_CI_NO_INSTALL: 1
 
-.fedora40_clang_analyzer:
-    extends: .fedora40
+.fedora41_clang_analyzer:
+    extends: .fedora41
 
     variables:
-        CMAKE_CONFIGURATION: fedora40_clang_analyzer
+        CMAKE_CONFIGURATION: fedora41_clang_analyzer
         CMAKE_CI_BUILD_TYPE: Debug
         CTEST_NO_WARNINGS_ALLOWED: 1
         CMAKE_CI_NO_INSTALL: 1
 
-.fedora40_sphinx:
-    extends: .fedora40
+.fedora41_sphinx:
+    extends: .fedora41
 
     variables:
-        CMAKE_CONFIGURATION: fedora40_sphinx
+        CMAKE_CONFIGURATION: fedora41_sphinx
         CTEST_NO_WARNINGS_ALLOWED: 1
         CTEST_SOURCE_SUBDIRECTORY: "Utilities/Sphinx"
         CMAKE_CI_NO_INSTALL: 1
 
-.fedora40_sphinx_package:
-    extends: .fedora40
+.fedora41_sphinx_package:
+    extends: .fedora41
 
     variables:
-        CMAKE_CONFIGURATION: fedora40_sphinx_package
+        CMAKE_CONFIGURATION: fedora41_sphinx_package
         CTEST_SOURCE_SUBDIRECTORY: "Utilities/Sphinx"
 
 #### Build and test
@@ -170,43 +170,43 @@
         CMAKE_CI_BUILD_TYPE: Release
         CTEST_NO_WARNINGS_ALLOWED: 1
 
-.fedora40_extdeps:
-    extends: .fedora40
+.fedora41_extdeps:
+    extends: .fedora41
 
     variables:
-        CMAKE_CONFIGURATION: fedora40_extdeps
+        CMAKE_CONFIGURATION: fedora41_extdeps
         CMAKE_CI_BUILD_TYPE: Release
         CTEST_NO_WARNINGS_ALLOWED: 1
 
-.fedora40_ninja:
-    extends: .fedora40
+.fedora41_ninja:
+    extends: .fedora41
 
     variables:
-        CMAKE_CONFIGURATION: fedora40_ninja
+        CMAKE_CONFIGURATION: fedora41_ninja
         CMAKE_CI_BUILD_TYPE: Release
         CTEST_NO_WARNINGS_ALLOWED: 1
 
-.fedora40_ninja_multi:
-    extends: .fedora40
+.fedora41_ninja_multi:
+    extends: .fedora41
 
     variables:
-        CMAKE_CONFIGURATION: fedora40_ninja_multi
+        CMAKE_CONFIGURATION: fedora41_ninja_multi
         CTEST_NO_WARNINGS_ALLOWED: 1
         CMAKE_GENERATOR: "Ninja Multi-Config"
 
-.fedora40_makefiles:
-    extends: .fedora40
+.fedora41_makefiles:
+    extends: .fedora41
 
     variables:
-        CMAKE_CONFIGURATION: fedora40_makefiles
+        CMAKE_CONFIGURATION: fedora41_makefiles
         CTEST_NO_WARNINGS_ALLOWED: 1
         CMAKE_GENERATOR: "Unix Makefiles"
 
-.fedora40_makefiles_symlinked:
-    extends: .fedora40
+.fedora41_makefiles_symlinked:
+    extends: .fedora41
 
     variables:
-        CMAKE_CONFIGURATION: fedora40_makefiles_symlinked
+        CMAKE_CONFIGURATION: fedora41_makefiles_symlinked
         CTEST_NO_WARNINGS_ALLOWED: 1
         CMAKE_GENERATOR: "Unix Makefiles"
         CMAKE_CI_IN_SYMLINK_TREE: 1
@@ -227,43 +227,43 @@
     variables:
         CMAKE_CONFIGURATION: debian12_ninja_clang
 
-.fedora40_makefiles_clang:
-    extends: .fedora40
+.fedora41_makefiles_clang:
+    extends: .fedora41
 
     variables:
-        CMAKE_CONFIGURATION: fedora40_makefiles_clang
+        CMAKE_CONFIGURATION: fedora41_makefiles_clang
         CMAKE_GENERATOR: "Unix Makefiles"
 
-.fedora40_makefiles_lfortran:
-    extends: .fedora40
+.fedora41_makefiles_lfortran:
+    extends: .fedora41
 
     variables:
         # FIXME(lfortran): -rpath flags with spaces not forwarded
         GIT_CLONE_PATH: "$CI_BUILDS_DIR/cmake-ci"
-        CMAKE_CONFIGURATION: fedora40_makefiles_lfortran
+        CMAKE_CONFIGURATION: fedora41_makefiles_lfortran
         CMAKE_GENERATOR: "Unix Makefiles"
         CTEST_LABELS: "Fortran"
 
-.fedora40_ninja_lfortran:
-    extends: .fedora40
+.fedora41_ninja_lfortran:
+    extends: .fedora41
 
     variables:
         # FIXME(lfortran): -rpath flags with spaces not forwarded
         GIT_CLONE_PATH: "$CI_BUILDS_DIR/cmake-ci"
-        CMAKE_CONFIGURATION: fedora40_ninja_lfortran
+        CMAKE_CONFIGURATION: fedora41_ninja_lfortran
         CTEST_LABELS: "Fortran"
 
-.fedora40_ninja_clang:
-    extends: .fedora40
+.fedora41_ninja_clang:
+    extends: .fedora41
 
     variables:
-        CMAKE_CONFIGURATION: fedora40_ninja_clang
+        CMAKE_CONFIGURATION: fedora41_ninja_clang
 
-.fedora40_ninja_multi_clang:
-    extends: .fedora40
+.fedora41_ninja_multi_clang:
+    extends: .fedora41
 
     variables:
-        CMAKE_CONFIGURATION: fedora40_ninja_multi_clang
+        CMAKE_CONFIGURATION: fedora41_ninja_multi_clang
         CMAKE_GENERATOR: "Ninja Multi-Config"
 
 ### Sanitizers
@@ -279,13 +279,13 @@
         CTEST_MEMORYCHECK_TYPE: AddressSanitizer
         CTEST_MEMORYCHECK_SANITIZER_OPTIONS: ""
 
-.fedora40_asan:
+.fedora41_asan:
     extends:
-        - .fedora40
+        - .fedora41
         - .fedora_asan_addon
 
     variables:
-        CMAKE_CONFIGURATION: fedora40_asan
+        CMAKE_CONFIGURATION: fedora41_asan
 
 ### Intel Compiler
 
@@ -481,6 +481,13 @@
         - docker
         - linux-x86_64
 
+.linux_x86_64_v3_tags:
+    tags:
+        - cmake
+        - build
+        - docker
+        - linux-x86_64-v3
+
 .linux_x86_64_tags_x11:
     tags:
         - cmake
@@ -548,7 +555,7 @@
 
 .cmake_codespell_linux:
     stage: build
-    extends: .fedora40
+    extends: .fedora41
     script:
         - .gitlab/ci/codespell.sh
     interruptible: true
@@ -691,7 +698,7 @@
 .cmake_org_help:
     stage: build
     extends:
-        - .fedora40
+        - .fedora41
         - .linux_x86_64_tags
         - .cmake_org_help_artifacts
     script:
@@ -705,5 +712,3 @@
           -DCMake_SPHINX_CMAKE_ORG_OUTDATED=$CMAKE_CI_SPHINX_OUTDATED
           -DCMake_VERSION_NO_GIT=$CMAKE_CI_VERSION_NO_GIT
         - ninja
-        # FIXME(#25175): non-main index entries are scored too high.
-        - sed -i '/search for explicit entries in index directives/,/^$/d' html/_static/searchtools.js

+ 2 - 2
.gitlab/upload.yml

@@ -1,7 +1,7 @@
 # Steps for uploading artifacts
 
 .rsync_upload_package:
-    image: "fedora:40"
+    image: "fedora:41"
     stage: upload
     tags:
         - cmake
@@ -21,7 +21,7 @@
 
 .rsync_upload_help:
     stage: upload
-    image: "fedora:40"
+    image: "fedora:41"
     tags:
         - cmake
         - docker

+ 1 - 0
CTestCustom.cmake.in

@@ -101,6 +101,7 @@ list(APPEND CTEST_CUSTOM_WARNING_EXCEPTION
   "libuv/src/.*:[0-9]+:[0-9]+: warning: 1st function call argument is an uninitialized value"
   "libuv/src/.*:[0-9]+:[0-9]+: warning: Dereference of null pointer"
   "libuv/src/.*:[0-9]+:[0-9]+: warning: The left operand of '[^']+' is a garbage value"
+  "libuv/src/.*:[0-9]+:[0-9]+: warning: Value of '[^']+' was not checked and may be overwritten by function '[^']+'"
   "nghttp2/lib/.*:[0-9]+:[0-9]+: warning: Access to field '[^']+' results in a dereference of a null pointer"
   "nghttp2/lib/.*:[0-9]+:[0-9]+: warning: Dereference of null pointer"
   "nghttp2/lib/.*:[0-9]+:[0-9]+: warning: Value stored to '[^']+' is never read"

+ 1 - 1
Help/variable/CMAKE_FIND_PACKAGE_TARGETS_GLOBAL.rst

@@ -3,7 +3,7 @@ CMAKE_FIND_PACKAGE_TARGETS_GLOBAL
 
 .. versionadded:: 3.24
 
-Setting to ``TRUE`` promotes all :prop_tgt:`IMPORTED` targets discoverd
+Setting to ``TRUE`` promotes all :prop_tgt:`IMPORTED` targets discovered
 by :command:`find_package` to a ``GLOBAL`` scope.
 
 

+ 2 - 2
Modules/FindCUDA.cmake

@@ -1093,7 +1093,7 @@ endif()
 
 # Set the CUDA_LIBRARIES variable.  This is the set of stuff to link against if you are
 # using the CUDA runtime.  For the dynamic version of the runtime, most of the
-# dependencies are brough in, but for the static version there are additional libraries
+# dependencies are brought in, but for the static version there are additional libraries
 # and linker commands needed.
 # Initialize to empty
 set(CUDA_LIBRARIES)
@@ -1449,7 +1449,7 @@ function(CUDA_COMPUTE_BUILD_PATH path build_path)
   # Avoid spaces
   string(REPLACE " " "_" bpath "${bpath}")
 
-  # Strip off the filename.  I wait until here to do it, since removin the
+  # Strip off the filename.  I wait until here to do it, since removing the
   # basename can make a path that looked like path/../basename turn into
   # path/.. (notice the trailing slash).
   get_filename_component(bpath "${bpath}" PATH)

+ 1 - 1
Modules/Internal/CPack/CPackDeb.cmake

@@ -238,7 +238,7 @@ function(cpack_deb_prepare_package_vars)
     endforeach()
 
     # Only dynamically linked ELF files are included
-    # Extract only file name infront of ":"
+    # Extract only file name in front of ":"
     foreach(_FILE IN LISTS CPACK_DEB_INSTALL_FILES)
       if(_FILE MATCHES "ELF.*dynamically linked")
         string(REGEX MATCH "(^.*):" _FILE_NAME "${_FILE}")

+ 1 - 1
Source/CTest/cmCTestScriptHandler.h

@@ -67,7 +67,7 @@ public:
   void AddConfigurationScript(const std::string&, bool pscope);
 
   /**
-   * Run a dashboard using a specified confiuration script
+   * Run a dashboard using a specified configuration script
    */
   int ProcessHandler() override;
 

+ 1 - 1
Source/CTest/cmCTestTestHandler.h

@@ -65,7 +65,7 @@ public:
    */
   void PopulateCustomVectors(cmMakefile* mf) override;
 
-  //! Control the use of the regular expresisons, call these methods to turn
+  //! Control the use of the regular expressions, call these methods to turn
   /// them on
   void UseIncludeRegExp();
   void UseExcludeRegExp();

+ 7 - 7
Source/cmGeneratorExpressionNode.cxx

@@ -4469,8 +4469,8 @@ static const struct ShellPathNode : public cmGeneratorExpressionNode
     const GeneratorExpressionContent* content,
     cmGeneratorExpressionDAGChecker* /*dagChecker*/) const override
   {
-    cmList listIn{ parameters.front() };
-    if (listIn.empty()) {
+    cmList list_in{ parameters.front() };
+    if (list_in.empty()) {
       reportError(context, content->GetOriginalExpression(),
                   "\"\" is not an absolute path.");
       return std::string();
@@ -4478,17 +4478,17 @@ static const struct ShellPathNode : public cmGeneratorExpressionNode
     cmStateSnapshot snapshot = context->LG->GetStateSnapshot();
     cmOutputConverter converter(snapshot);
     const char* separator = snapshot.GetState()->UseWindowsShell() ? ";" : ":";
-    std::vector<std::string> listOut;
-    listOut.reserve(listIn.size());
-    for (auto const& in : listIn) {
+    std::vector<std::string> list_out;
+    list_out.reserve(list_in.size());
+    for (auto const& in : list_in) {
       if (!cmSystemTools::FileIsFullPath(in)) {
         reportError(context, content->GetOriginalExpression(),
                     "\"" + in + "\" is not an absolute path.");
         return std::string();
       }
-      listOut.emplace_back(converter.ConvertDirectorySeparatorsForShell(in));
+      list_out.emplace_back(converter.ConvertDirectorySeparatorsForShell(in));
     }
-    return cmJoin(listOut, separator);
+    return cmJoin(list_out, separator);
   }
 } shellPathNode;
 

+ 1 - 1
Source/cmStringAlgorithms.h

@@ -146,7 +146,7 @@ public:
   {
   }
   cmAlphaNum(const char* str)
-    : View_(str)
+    : View_(str ? cm::string_view(str) : cm::string_view())
   {
   }
   cmAlphaNum(char ch)

+ 3 - 2
Source/kwsys/SystemInformation.cxx

@@ -3405,8 +3405,9 @@ bool SystemInformationImplementation::RetrieveInformationFromCpuInfoFile()
   }
 
   size_t fileSize = 0;
-  while (!feof(fd)) {
-    buffer += static_cast<char>(fgetc(fd));
+  int fc;
+  while ((fc = fgetc(fd)) != EOF) {
+    buffer += static_cast<char>(fc);
     fileSize++;
   }
   fclose(fd);

+ 1 - 1
Templates/MSBuild/FlagTables/v142_CL.json

@@ -1090,7 +1090,7 @@
   {
     "name": "GenerateModuleDependencies",
     "switch": "sourceDependencies:directives",
-    "comment": "Generate Module Dependenices File",
+    "comment": "Generate Module Dependencies File",
     "value": "true",
     "flags": [
       "Continue"

+ 1 - 1
Templates/MSBuild/FlagTables/v143_CL.json

@@ -1092,7 +1092,7 @@
   {
     "name": "GenerateModuleDependencies",
     "switch": "sourceDependencies:directives",
-    "comment": "Generate Module Dependenices File",
+    "comment": "Generate Module Dependencies File",
     "value": "true",
     "flags": [
       "Continue"

+ 2 - 2
Tests/FindBoost/TestPython/CMakeLists.txt

@@ -2,10 +2,10 @@ cmake_minimum_required(VERSION 3.14)
 project(TestFindBoostPython CXX)
 include(CTest)
 
-find_package(Boost OPTIONAL_COMPONENTS python27 python34 python35 python36 python37 python38 python39 python310 python311 python312)
+find_package(Boost OPTIONAL_COMPONENTS python27 python34 python35 python36 python37 python38 python39 python310 python311 python312 python313 python314)
 
 set(FAILTEST TRUE)
-foreach (v IN ITEMS 27 34 35 36 37 38 39 310 311 312)
+foreach (v IN ITEMS 27 34 35 36 37 38 39 310 311 312 313 314)
   if (Boost_PYTHON${v}_FOUND)
     set(FAILTEST FALSE)
     break()

+ 2 - 2
Tests/FortranModules/Submodules/obfuscated_parent.f90

@@ -1,8 +1,8 @@
 ! This module has two procedures from the "parent" module
 ! but it has different combinations 'module <word>' phrases
-! in breaked lines for test of modules dependencies detection
+! in broken lines for test of modules dependencies detection
 
-! Module declaration on breaked line with reminder
+! Module declaration on broken line with reminder
 module &
          obfuscated_parent;  implicit none
 

+ 6 - 3
Tests/RunCMake/BuildDepends/LinkDependsCheck.cmake

@@ -1,9 +1,12 @@
 
 enable_language(C)
 
-file(WRITE "${CMAKE_BINARY_DIR}/LinkDependsUseLinker.cmake"
-     "set(CMAKE_LINK_DEPENDS_USE_LINKER ${CMAKE_LINK_DEPENDS_USE_LINKER})
-set(CMAKE_C_LINK_DEPENDS_USE_LINKER ${CMAKE_C_LINK_DEPENDS_USE_LINKER})\n")
+file(WRITE "${CMAKE_BINARY_DIR}/LinkDependsUseLinker.cmake" "
+set(CMAKE_LINK_DEPENDS_USE_LINKER ${CMAKE_LINK_DEPENDS_USE_LINKER})
+set(CMAKE_C_LINK_DEPENDS_USE_LINKER ${CMAKE_C_LINK_DEPENDS_USE_LINKER})
+set(CMAKE_C_COMPILER_LINKER_ID ${CMAKE_C_COMPILER_LINKER_ID})
+set(CMAKE_C_COMPILER_LINKER_VERSION ${CMAKE_C_COMPILER_LINKER_VERSION})
+")
 
 
 file(GENERATE  OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/check-$<LOWER_CASE:$<CONFIG>>.cmake"

+ 4 - 1
Tests/RunCMake/BuildDepends/RunCMakeTest.cmake

@@ -208,7 +208,10 @@ if (RunCMake_GENERATOR MATCHES "Make|Ninja")
   run_BuildDepends(LinkDependsCheck)
   include("${RunCMake_BINARY_DIR}/LinkDependsCheck-build/LinkDependsUseLinker.cmake")
   if ((NOT DEFINED CMAKE_LINK_DEPENDS_USE_LINKER OR CMAKE_LINK_DEPENDS_USE_LINKER)
-      AND CMAKE_C_LINK_DEPENDS_USE_LINKER)
+    AND CMAKE_C_LINK_DEPENDS_USE_LINKER
+    # FIXME(#26401): GNU binutils 2.43 broke dependency-file generation.
+    AND NOT (CMAKE_C_COMPILER_LINKER_ID STREQUAL "GNU" AND CMAKE_C_COMPILER_LINKER_VERSION VERSION_GREATER_EQUAL "2.43")
+    )
     run_BuildDepends(LinkDependsExternalLibrary)
     unset(run_BuildDepends_skip_step_2)
     run_BuildDepends(LinkDepends -DMAKE_SUPPORTS_SPACES=${MAKE_SUPPORTS_SPACES})

+ 1 - 1
Tests/RunCMake/CPack/DEB/Helpers.cmake

@@ -101,7 +101,7 @@ function(getMissingShlibsErrorExtra FILE RESULT_VAR)
         string(APPEND error_extra "; readelf \"\n")
 
         # Only dynamically linked ELF files are included
-        # Extract only file name infront of ":"
+        # Extract only file name in front of ":"
         foreach(_FILE IN LISTS deb_install_files)
           if(_FILE MATCHES "ELF.*shared object")
             string(REGEX MATCH "(^.*):" _FILE_NAME "${_FILE}")

+ 1 - 1
Tests/RunCMake/CPack/README.txt

@@ -173,7 +173,7 @@ This phase is executed if '<test_name>/VerifyResult.cmake' script exists.
 VerifyResult.cmake script also automatically prints out standard output and
 standard error from CPack execution phase that is compared with
 '<test_name>/<generator_name>-stdout.txt' regular expression and
-'<test_name>/<generator_name>-stderr.txt' regular expresson respectively.
+'<test_name>/<generator_name>-stderr.txt' regular expression respectively.
 NOTE: For subtests generator name can also be suffixed with subtest name and/or
       packaging type (MONOLITHIC, COMPONENT, GROUP) and in such cases the
       preferences of which file will be used are as follows:

+ 1 - 1
Tests/RunCMake/ctest_labels_for_subprojects/CTestScriptVariableCommandLine-stderr.txt

@@ -1,2 +1,2 @@
 Unable to find executable:.*MyThirdPartyDependency/src(/[^/
-]+)?/thirdparty
+]+)?/third_party

+ 4 - 4
Tests/RunCMake/ctest_labels_for_subprojects/MyThirdPartyDependency/src/CMakeLists.txt

@@ -3,8 +3,8 @@ project(MyThirdPartyDependency)
 
 include(CTest)
 
-add_executable(thirdparty thirdparty.c)
-add_test(NAME thirdparty COMMAND thirdparty)
+add_executable(third_party third_party.c)
+add_test(NAME third_party COMMAND third_party)
 
-set_property(TARGET thirdparty PROPERTY LABELS NotASubproject)
-set_property(TEST thirdparty PROPERTY LABELS NotASubproject)
+set_property(TARGET third_party PROPERTY LABELS NotASubproject)
+set_property(TEST third_party PROPERTY LABELS NotASubproject)

+ 0 - 0
Tests/RunCMake/ctest_labels_for_subprojects/MyThirdPartyDependency/src/thirdparty.c → Tests/RunCMake/ctest_labels_for_subprojects/MyThirdPartyDependency/src/third_party.c


+ 2 - 0
Tests/RunCMake/detect_jobserver.c

@@ -162,6 +162,7 @@ int main(int argc, char** argv)
 
   jobserver = jobserver_auth(message);
   if (jobserver == NULL) {
+    fclose(fp);
     fprintf(stderr, "%s\n", message);
     return 1;
   }
@@ -171,6 +172,7 @@ int main(int argc, char** argv)
 #else
   result = posix(jobserver, message);
 #endif
+  fclose(fp);
   free(jobserver);
   message[MAX_MESSAGE_LENGTH] = '\0';
 

+ 9 - 7
Tests/RunCMake/pseudo_llvm-rc.c

@@ -9,6 +9,8 @@ int main(int argc, char* argv[])
 {
   FILE* source;
   FILE* target;
+  char buffer[500];
+  size_t n;
   int i;
   for (i = 1; i < argc; ++i) {
     if (strcmp(argv[i], "-bad") == 0) {
@@ -22,13 +24,13 @@ int main(int argc, char* argv[])
     return 1;
   }
   target = fopen(argv[argc - 2], "wb");
-  if (target != NULL) {
-    char buffer[500];
-    size_t n = fread(buffer, 1, sizeof(buffer), source);
-    fwrite(buffer, 1, n, target);
+  if (target == NULL) {
     fclose(source);
-    fclose(target);
-    return 0;
+    return 1;
   }
-  return 1;
+  n = fread(buffer, 1, sizeof(buffer), source);
+  fwrite(buffer, 1, n, target);
+  fclose(source);
+  fclose(target);
+  return 0;
 }

+ 1 - 1
Utilities/Scripts/update-third-party.bash

@@ -25,7 +25,7 @@
 #   ownership
 #       A git author name/email for the commits.
 #   subtree
-#       The location of the thirdparty package within the main source
+#       The location of the third-party package within the main source
 #       tree.
 #   repo
 #       The git repository to use as upstream.

+ 2 - 0
Utilities/Sphinx/conf.py.in

@@ -103,3 +103,5 @@ linkcheck_allowed_redirects = {
     r'https://openjdk\.java\.net/jeps/313': r'https://openjdk\.org:443/jeps/313',
     r'https://www\.sphinx-doc\.org': r'https://www\.sphinx-doc\.org/en/master/',
 }
+
+linkcheck_report_timeouts_as_broken = False