Browse Source

Merge topic 'ci-fedora-38'

1689e0a118 ci: Subsume Clang C++ modules testing in main Fedora+Clang jobs
bdaa9e1e4e ci: use Fedora 38 images and environments
b69c63d3aa ci: update Linux image to Fedora 38
9c388fb064 ci: Remove nlohmann-json from Fedora base image
d9d061d19f ci: Disable sccache in clang-analyzer job
fad150d314 clang-tidy module: Update to build against LLVM/Clang 16
ce3ec02bb2 clang-tidy module: Drop unused variable
2c27968619 clang-tidy: ignore warnings new in version 16
...

Acked-by: Kitware Robot <[email protected]>
Merge-request: !8502
Brad King 2 years ago
parent
commit
e05230ebcf
100 changed files with 223 additions and 299 deletions
  1. 1 0
      .clang-tidy
  2. 2 2
      .codespellrc
  3. 44 54
      .gitlab-ci.yml
  4. 0 1
      .gitlab/ci/configure_fedora37_clang_analyzer.cmake
  5. 0 1
      .gitlab/ci/configure_fedora37_makefiles_clang.cmake
  6. 0 1
      .gitlab/ci/configure_fedora37_ninja_clang.cmake
  7. 1 1
      .gitlab/ci/configure_fedora38_asan.cmake
  8. 3 0
      .gitlab/ci/configure_fedora38_clang_analyzer.cmake
  9. 0 0
      .gitlab/ci/configure_fedora38_common.cmake
  10. 0 0
      .gitlab/ci/configure_fedora38_common_clang.cmake
  11. 0 0
      .gitlab/ci/configure_fedora38_extdeps.cmake
  12. 0 0
      .gitlab/ci/configure_fedora38_makefiles.cmake
  13. 1 0
      .gitlab/ci/configure_fedora38_makefiles_clang.cmake
  14. 1 1
      .gitlab/ci/configure_fedora38_ninja.cmake
  15. 1 1
      .gitlab/ci/configure_fedora38_ninja_clang.cmake
  16. 0 0
      .gitlab/ci/configure_fedora38_ninja_multi.cmake
  17. 1 1
      .gitlab/ci/configure_fedora38_ninja_multi_clang.cmake
  18. 0 0
      .gitlab/ci/configure_fedora38_sphinx.cmake
  19. 0 0
      .gitlab/ci/configure_fedora38_sphinx_package.cmake
  20. 1 1
      .gitlab/ci/configure_fedora38_tidy.cmake
  21. 0 0
      .gitlab/ci/ctest_memcheck_fedora38_asan.lsan.supp
  22. 0 13
      .gitlab/ci/docker/clang_cxx_modules/Dockerfile
  23. 0 7
      .gitlab/ci/docker/clang_cxx_modules/install_cmake_deps.sh
  24. 0 7
      .gitlab/ci/docker/clang_cxx_modules/install_deps.sh
  25. 0 39
      .gitlab/ci/docker/clang_cxx_modules/install_llvm.sh
  26. 1 1
      .gitlab/ci/docker/fedora38/Dockerfile
  27. 0 1
      .gitlab/ci/docker/fedora38/deps_packages.lst
  28. 0 0
      .gitlab/ci/docker/fedora38/install_deps.sh
  29. 0 0
      .gitlab/ci/docker/fedora38/install_iwyu.sh
  30. 0 0
      .gitlab/ci/docker/fedora38/install_rvm.sh
  31. 0 0
      .gitlab/ci/docker/fedora38/iwyu_packages.lst
  32. 0 0
      .gitlab/ci/docker/fedora38/rvm_packages.lst
  33. 0 1
      .gitlab/ci/env_fedora37_makefiles_clang.sh
  34. 0 1
      .gitlab/ci/env_fedora37_ninja_clang.sh
  35. 0 0
      .gitlab/ci/env_fedora38_asan.sh
  36. 0 0
      .gitlab/ci/env_fedora38_clang_analyzer.sh
  37. 2 2
      .gitlab/ci/env_fedora38_common_clang.sh
  38. 0 0
      .gitlab/ci/env_fedora38_extdeps.sh
  39. 0 0
      .gitlab/ci/env_fedora38_makefiles.cmake
  40. 0 0
      .gitlab/ci/env_fedora38_makefiles.sh
  41. 1 0
      .gitlab/ci/env_fedora38_makefiles_clang.sh
  42. 0 0
      .gitlab/ci/env_fedora38_ninja.sh
  43. 1 0
      .gitlab/ci/env_fedora38_ninja_clang.sh
  44. 0 0
      .gitlab/ci/env_fedora38_ninja_multi.sh
  45. 1 0
      .gitlab/ci/env_fedora38_ninja_multi_clang.sh
  46. 0 0
      .gitlab/ci/pre_build_fedora38_tidy.sh
  47. 45 60
      .gitlab/os-linux.yml
  48. 2 2
      .gitlab/upload.yml
  49. 1 1
      Help/command/include_directories.rst
  50. 1 1
      Modules/CMakePackageConfigHelpers.cmake
  51. 1 1
      Modules/CPackComponent.cmake
  52. 1 1
      Modules/FindCUDA.cmake
  53. 1 1
      Modules/FindMPI.cmake
  54. 1 1
      Modules/FindMatlab.cmake
  55. 1 1
      Modules/FindOpenGL.cmake
  56. 1 1
      Modules/FindOpenSSL.cmake
  57. 1 1
      Modules/FindwxWindows.cmake
  58. 1 1
      Modules/Internal/CPack/CPackRPM.cmake
  59. 1 1
      Source/CPack/cmCPackInnoSetupGenerator.cxx
  60. 4 0
      Source/CursesDialog/form/frm_def.c
  61. 1 1
      Source/cmCPluginAPI.h
  62. 2 1
      Source/cmCommandArgumentParserHelper.cxx
  63. 1 1
      Source/cmCommonTargetGenerator.cxx
  64. 2 2
      Source/cmConditionEvaluator.cxx
  65. 3 3
      Source/cmCustomCommandGenerator.cxx
  66. 1 1
      Source/cmDependsFortran.cxx
  67. 1 1
      Source/cmDependsJavaParserHelper.cxx
  68. 1 1
      Source/cmGetTestPropertyCommand.cxx
  69. 3 3
      Source/cmGlobalCommonGenerator.cxx
  70. 5 5
      Source/cmGlobalGhsMultiGenerator.cxx
  71. 1 1
      Source/cmGlobalVisualStudio7Generator.cxx
  72. 1 1
      Source/cmMakefileLibraryTargetGenerator.cxx
  73. 3 4
      Source/cmQtAutoMocUic.cxx
  74. 16 16
      Source/cmake.cxx
  75. 4 0
      Source/kwsys/RegularExpression.cxx
  76. 3 2
      Tests/FindOpenAL/Test/main.cxx
  77. 13 13
      Tests/Module/ExternalData/Data1Check.cmake
  78. 2 2
      Tests/Module/ExternalData/Data2/Data2Check.cmake
  79. 2 2
      Tests/Module/ExternalData/Data3/Data3Check.cmake
  80. 2 2
      Tests/Module/ExternalData/Data4/Data4Check.cmake
  81. 1 1
      Tests/Module/ExternalData/Data5/Data5Check.cmake
  82. 1 1
      Tests/Module/ExternalData/DataNoSymlinks/DataNoSymlinksCheck.cmake
  83. 1 1
      Tests/RunCMake/CheckModules/CheckStructHasMemberWrongKey-stderr.txt
  84. 1 1
      Tests/RunCMake/CheckModules/CheckStructHasMemberWrongKey.cmake
  85. 1 1
      Tests/RunCMake/CheckModules/CheckTypeSizeUnknownArgument-stderr.txt
  86. 1 1
      Tests/RunCMake/CheckModules/CheckTypeSizeUnknownArgument.cmake
  87. 1 1
      Tests/RunCMake/CompileFeatures/RunCMakeTest.cmake
  88. 1 1
      Tests/RunCMake/File_Generate/CMP0070-NEW-check.cmake
  89. 1 1
      Tests/RunCMake/File_Generate/CMP0070-OLD-check.cmake
  90. 1 1
      Tests/RunCMake/File_Generate/CMP0070-WARN-check.cmake
  91. 1 1
      Tests/RunCMake/GenEx-LINK_LIBRARY/RunCMakeTest.cmake
  92. 1 1
      Tests/RunCMake/GeneratorToolset/TestToolsetCustomFlagTableDir-check.cmake
  93. 2 2
      Tests/RunCMake/GoogleTest/GoogleTestXML.cmake
  94. 1 1
      Tests/RunCMake/MacOSVersions/MacOSVersions-build-check.cmake
  95. 4 2
      Tests/RunCMake/Ninja/CustomCommandDepfile-check.cmake
  96. 2 2
      Tests/RunCMake/Ninja/CustomCommandJobPool-check.cmake
  97. 4 2
      Tests/RunCMake/NinjaMultiConfig/CustomCommandDepfile-check.cmake
  98. 3 3
      Tests/RunCMake/ctest_memcheck/testAddressLeakSanitizer.cmake
  99. 1 1
      Tests/RunCMake/ctest_memcheck/testAddressSanitizer.cmake
  100. 3 3
      Tests/RunCMake/ctest_memcheck/testLeakSanitizer.cmake

+ 1 - 0
.clang-tidy

@@ -15,6 +15,7 @@ misc-*,\
 -misc-no-recursion,\
 -misc-non-private-member-variables-in-classes,\
 -misc-static-assert,\
+-misc-use-anonymous-namespace,\
 modernize-*,\
 -modernize-avoid-c-arrays,\
 -modernize-macro-to-enum,\

+ 2 - 2
.codespellrc

@@ -4,5 +4,5 @@ check-hidden =
 # Disable warnings about binary files
 quiet-level = 2
 builtin = clear,rare,en-GB_to_en-US
-skip = */.git,*/build,*/Copyright.txt,*/doxygen.config,*/Modules/Internal/CPack/NSIS.template.in,*/Source/CursesDialog/form/*,*/Source/kwsys/*,*/Tests/RunCMake/CPack/tests/DMG_SLA/German.*,*/Tests/RunCMake/ParseImplicitData/*.input,*/Utilities/cm*
-ignore-words-list = aci,ake,ans,ba,cconfiguration,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
+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

+ 44 - 54
.gitlab-ci.yml

@@ -55,7 +55,7 @@ p:source-package:
 
 p:doc-package:
     extends:
-        - .fedora37_sphinx_package
+        - .fedora38_sphinx_package
         - .cmake_prep_doc_linux
         - .linux_x86_64_tags
         - .cmake_doc_artifacts
@@ -103,16 +103,16 @@ l:iwyu-debian10:
         - .linux_x86_64_tags
         - .run_automatically
 
-l:tidy-fedora37:
+l:tidy-fedora38:
     extends:
-        - .fedora37_tidy
+        - .fedora38_tidy
         - .cmake_build_linux
         - .linux_x86_64_tags
         - .run_automatically
 
-l:sphinx-fedora37:
+l:sphinx-fedora38:
     extends:
-        - .fedora37_sphinx
+        - .fedora38_sphinx
         - .cmake_build_linux
         - .cmake_sphinx_artifacts
         - .linux_x86_64_tags
@@ -121,9 +121,9 @@ l:sphinx-fedora37:
         CMAKE_CI_JOB_CONTINUOUS: "true"
         CMAKE_CI_JOB_HELP: "true"
 
-l:clang-analyzer-fedora37:
+l:clang-analyzer-fedora38:
     extends:
-        - .fedora37_clang_analyzer
+        - .fedora38_clang_analyzer
         - .cmake_build_linux
         - .linux_x86_64_tags
         - .run_automatically
@@ -195,9 +195,9 @@ t:debian10-makefiles-clang:
     variables:
         CMAKE_CI_JOB_NIGHTLY: "true"
 
-t:fedora37-ninja-clang:
+t:fedora38-ninja-clang:
     extends:
-        - .fedora37_ninja_clang
+        - .fedora38_ninja_clang
         - .cmake_test_linux_release
         - .linux_x86_64_tags
         - .run_dependent
@@ -205,9 +205,9 @@ t:fedora37-ninja-clang:
     variables:
         CMAKE_CI_JOB_NIGHTLY: "true"
 
-t:fedora37-makefiles-clang:
+t:fedora38-ninja-multi-clang:
     extends:
-        - .fedora37_makefiles_clang
+        - .fedora38_ninja_multi_clang
         - .cmake_test_linux_release
         - .linux_x86_64_tags
         - .run_dependent
@@ -215,17 +215,27 @@ t:fedora37-makefiles-clang:
     variables:
         CMAKE_CI_JOB_NIGHTLY: "true"
 
-t:fedora37-makefiles:
+t:fedora38-makefiles-clang:
     extends:
-        - .fedora37_makefiles
+        - .fedora38_makefiles_clang
+        - .cmake_test_linux_release
+        - .linux_x86_64_tags
+        - .run_dependent
+        - .needs_centos6_x86_64
+    variables:
+        CMAKE_CI_JOB_NIGHTLY: "true"
+
+t:fedora38-makefiles:
+    extends:
+        - .fedora38_makefiles
         - .cmake_test_linux_release
         - .linux_x86_64_tags
         - .run_dependent
         - .needs_centos6_x86_64
 
-t:fedora37-makefiles-nospace:
+t:fedora38-makefiles-nospace:
     extends:
-        - .fedora37_makefiles
+        - .fedora38_makefiles
         - .cmake_test_linux_release
         - .linux_x86_64_tags
         - .cmake_junit_artifacts
@@ -233,7 +243,7 @@ t:fedora37-makefiles-nospace:
         - .needs_centos6_x86_64
     variables:
         GIT_CLONE_PATH: "$CI_BUILDS_DIR/cmake-ci"
-        CMAKE_CI_BUILD_NAME: fedora37_makefiles_nospace
+        CMAKE_CI_BUILD_NAME: fedora38_makefiles_nospace
         CMAKE_CI_JOB_NIGHTLY: "true"
 
 t:nvhpc22.11-ninja:
@@ -334,29 +344,9 @@ t:linux-gcc-cxx-modules-ninja-multi:
     variables:
         CMAKE_CI_JOB_NIGHTLY: "true"
 
-t:linux-clang-cxx-modules-ninja:
-    extends:
-        - .clang_cxx_modules_ninja
-        - .cmake_test_linux_release
-        - .linux_x86_64_tags
-        - .run_dependent
-        - .needs_centos6_x86_64
-    variables:
-        CMAKE_CI_JOB_NIGHTLY: "true"
-
-t:linux-clang-cxx-modules-ninja-multi:
-    extends:
-        - .clang_cxx_modules_ninja_multi
-        - .cmake_test_linux_release
-        - .linux_x86_64_tags
-        - .run_dependent
-        - .needs_centos6_x86_64
-    variables:
-        CMAKE_CI_JOB_NIGHTLY: "true"
-
-b:fedora37-ninja:
+b:fedora38-ninja:
     extends:
-        - .fedora37_ninja
+        - .fedora38_ninja
         - .cmake_build_linux
         - .cmake_build_artifacts
         - .linux_x86_64_tags
@@ -391,40 +381,40 @@ b:debian10-aarch64-extdeps:
     variables:
         CMAKE_CI_JOB_NIGHTLY: "true"
 
-b:fedora37-extdeps:
+b:fedora38-extdeps:
     extends:
-        - .fedora37_extdeps
+        - .fedora38_extdeps
         - .cmake_build_linux_standalone
         - .linux_x86_64_tags
         - .run_manually
     variables:
         CMAKE_CI_JOB_NIGHTLY: "true"
 
-t:fedora37-ninja:
+t:fedora38-ninja:
     extends:
-        - .fedora37_ninja
+        - .fedora38_ninja
         - .cmake_test_linux
         - .linux_x86_64_tags_x11
         - .cmake_test_artifacts
         - .run_dependent
     dependencies:
-        - b:fedora37-ninja
+        - b:fedora38-ninja
     needs:
-        - b:fedora37-ninja
+        - b:fedora38-ninja
     variables:
         CMAKE_CI_JOB_CONTINUOUS: "true"
 
-t:fedora37-ninja-multi:
+t:fedora38-ninja-multi:
     extends:
-        - .fedora37_ninja_multi
+        - .fedora38_ninja_multi
         - .cmake_test_linux_external
         - .linux_x86_64_tags
         - .cmake_junit_artifacts
         - .run_dependent
     dependencies:
-        - t:fedora37-ninja
+        - t:fedora38-ninja
     needs:
-        - t:fedora37-ninja
+        - t:fedora38-ninja
 
 t:intel2016-makefiles:
     extends:
@@ -791,9 +781,9 @@ u:linux-aarch64-package:
 
 ## Sanitizer builds
 
-b:fedora37-asan:
+b:fedora38-asan:
     extends:
-        - .fedora37_asan
+        - .fedora38_asan
         - .cmake_build_linux
         - .cmake_build_artifacts
         - .linux_x86_64_tags
@@ -801,16 +791,16 @@ b:fedora37-asan:
     variables:
         CMAKE_CI_JOB_NIGHTLY: "true"
 
-t:fedora37-asan:
+t:fedora38-asan:
     extends:
-        - .fedora37_asan
+        - .fedora38_asan
         - .cmake_memcheck_linux
         - .linux_x86_64_tags
         - .run_dependent
     dependencies:
-        - b:fedora37-asan
+        - b:fedora38-asan
     needs:
-        - b:fedora37-asan
+        - b:fedora38-asan
     variables:
         CMAKE_CI_JOB_NIGHTLY: "true"
 

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

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

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

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

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

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

+ 1 - 1
.gitlab/ci/configure_fedora37_asan.cmake → .gitlab/ci/configure_fedora38_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_fedora37_common.cmake")
+include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora38_common.cmake")

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

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

+ 0 - 0
.gitlab/ci/configure_fedora37_common.cmake → .gitlab/ci/configure_fedora38_common.cmake


+ 0 - 0
.gitlab/ci/configure_fedora37_common_clang.cmake → .gitlab/ci/configure_fedora38_common_clang.cmake


+ 0 - 0
.gitlab/ci/configure_fedora37_extdeps.cmake → .gitlab/ci/configure_fedora38_extdeps.cmake


+ 0 - 0
.gitlab/ci/configure_fedora37_makefiles.cmake → .gitlab/ci/configure_fedora38_makefiles.cmake


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

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

+ 1 - 1
.gitlab/ci/configure_fedora37_ninja.cmake → .gitlab/ci/configure_fedora38_ninja.cmake

@@ -11,4 +11,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_fedora37_common.cmake")
+include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora38_common.cmake")

+ 1 - 1
.gitlab/ci/configure_linux_clang_cxx_modules_ninja.cmake → .gitlab/ci/configure_fedora38_ninja_clang.cmake

@@ -1,4 +1,4 @@
 set(CMake_TEST_MODULE_COMPILATION "named,collation,partitions,internal_partitions,export_bmi,install_bmi,shared" CACHE STRING "")
 set(CMake_TEST_MODULE_COMPILATION_RULES "${CMAKE_CURRENT_LIST_DIR}/cxx_modules_rules_clang.cmake" CACHE STRING "")
 
-include("${CMAKE_CURRENT_LIST_DIR}/configure_external_test.cmake")
+include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora38_common_clang.cmake")

+ 0 - 0
.gitlab/ci/configure_fedora37_ninja_multi.cmake → .gitlab/ci/configure_fedora38_ninja_multi.cmake


+ 1 - 1
.gitlab/ci/configure_linux_clang_cxx_modules_ninja_multi.cmake → .gitlab/ci/configure_fedora38_ninja_multi_clang.cmake

@@ -1,4 +1,4 @@
 set(CMake_TEST_MODULE_COMPILATION "named,collation,partitions,internal_partitions,export_bmi,install_bmi,shared" CACHE STRING "")
 set(CMake_TEST_MODULE_COMPILATION_RULES "${CMAKE_CURRENT_LIST_DIR}/cxx_modules_rules_clang.cmake" CACHE STRING "")
 
-include("${CMAKE_CURRENT_LIST_DIR}/configure_external_test.cmake")
+include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora38_common_clang.cmake")

+ 0 - 0
.gitlab/ci/configure_fedora37_sphinx.cmake → .gitlab/ci/configure_fedora38_sphinx.cmake


+ 0 - 0
.gitlab/ci/configure_fedora37_sphinx_package.cmake → .gitlab/ci/configure_fedora38_sphinx_package.cmake


+ 1 - 1
.gitlab/ci/configure_fedora37_tidy.cmake → .gitlab/ci/configure_fedora38_tidy.cmake

@@ -2,4 +2,4 @@ set(CMake_RUN_CLANG_TIDY ON CACHE BOOL "")
 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 "")
 
-include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora37_common.cmake")
+include("${CMAKE_CURRENT_LIST_DIR}/configure_fedora38_common.cmake")

+ 0 - 0
.gitlab/ci/ctest_memcheck_fedora37_asan.lsan.supp → .gitlab/ci/ctest_memcheck_fedora38_asan.lsan.supp


+ 0 - 13
.gitlab/ci/docker/clang_cxx_modules/Dockerfile

@@ -1,13 +0,0 @@
-FROM fedora:37
-MAINTAINER Ben Boeckel <[email protected]>
-
-# Install build dependencies for packages.
-COPY install_deps.sh /root/install_deps.sh
-RUN sh /root/install_deps.sh
-
-COPY install_llvm.sh /root/install_llvm.sh
-RUN sh /root/install_llvm.sh
-
-# Install build dependencies for CMake's CI.
-COPY install_cmake_deps.sh /root/install_cmake_deps.sh
-RUN sh /root/install_cmake_deps.sh

+ 0 - 7
.gitlab/ci/docker/clang_cxx_modules/install_cmake_deps.sh

@@ -1,7 +0,0 @@
-#!/bin/sh
-
-set -e
-
-dnf install -y --setopt=install_weak_deps=False \
-    file git-core
-dnf clean all

+ 0 - 7
.gitlab/ci/docker/clang_cxx_modules/install_deps.sh

@@ -1,7 +0,0 @@
-#!/bin/sh
-
-set -e
-
-dnf install -y --setopt=install_weak_deps=False \
-    gcc-c++ cmake ninja-build
-dnf clean all

+ 0 - 39
.gitlab/ci/docker/clang_cxx_modules/install_llvm.sh

@@ -1,39 +0,0 @@
-#!/bin/sh
-
-set -e
-
-readonly revision="6d859df46e93e04bd7a4f90d9a9056763998f638" # llvmorg-16.0.0-rc2-31-g6d859df46e93
-readonly tarball="https://github.com/llvm/llvm-project/archive/$revision.tar.gz"
-
-readonly workdir="$HOME/llvm"
-readonly srcdir="$workdir/llvm"
-readonly builddir="$workdir/build"
-
-mkdir -p "$workdir"
-cd "$workdir"
-curl -L "$tarball" > "llvm-$revision.tar.gz"
-tar xf "llvm-$revision.tar.gz"
-mv "llvm-project-$revision" "$srcdir"
-mkdir -p "$builddir"
-cd "$builddir"
-cmake -GNinja \
-    -DCMAKE_BUILD_TYPE=Release \
-    -DBUILD_SHARED_LIBS=ON \
-    -DLLVM_ENABLE_BINDINGS=OFF \
-    -DLLVM_INCLUDE_BENCHMARKS=OFF \
-    -DLLVM_INCLUDE_DOCS=OFF \
-    -DLLVM_INCLUDE_EXAMPLES=OFF \
-    -DLLVM_INCLUDE_RUNTIMES=OFF \
-    -DLLVM_INCLUDE_TESTS=OFF \
-    -DLLVM_INCLUDE_UTILS=OFF \
-    -DLLVM_TARGETS_TO_BUILD=X86 \
-    -DLLVM_TOOL_CLANG_BUILD=ON \
-    -DLLVM_USE_SYMLINKS=ON \
-    "-DLLVM_EXTERNAL_CLANG_SOURCE_DIR=$srcdir/clang" \
-    -DLLVM_PARALLEL_LINK_JOBS=1 \
-    -DCLANG_BUILD_TOOLS=ON \
-    "-DCMAKE_INSTALL_PREFIX=/opt/llvm-p1689" \
-    "$srcdir/llvm"
-ninja
-ninja install/strip
-rm -rf "$workdir"

+ 1 - 1
.gitlab/ci/docker/fedora37/Dockerfile → .gitlab/ci/docker/fedora38/Dockerfile

@@ -1,6 +1,6 @@
 # syntax=docker/dockerfile:1
 
-ARG BASE_IMAGE=fedora:37
+ARG BASE_IMAGE=fedora:38
 
 FROM ${BASE_IMAGE} AS dnf-cache
 # Populate DNF cache w/ the fresh metadata and prefetch packages.

+ 0 - 1
.gitlab/ci/docker/fedora37/deps_packages.lst → .gitlab/ci/docker/fedora38/deps_packages.lst

@@ -19,7 +19,6 @@ make
 bzip2-devel
 expat-devel
 jsoncpp-devel
-json-devel
 libarchive-devel
 libcurl-devel
 libuv-devel

+ 0 - 0
.gitlab/ci/docker/fedora37/install_deps.sh → .gitlab/ci/docker/fedora38/install_deps.sh


+ 0 - 0
.gitlab/ci/docker/fedora37/install_iwyu.sh → .gitlab/ci/docker/fedora38/install_iwyu.sh


+ 0 - 0
.gitlab/ci/docker/fedora37/install_rvm.sh → .gitlab/ci/docker/fedora38/install_rvm.sh


+ 0 - 0
.gitlab/ci/docker/fedora37/iwyu_packages.lst → .gitlab/ci/docker/fedora38/iwyu_packages.lst


+ 0 - 0
.gitlab/ci/docker/fedora37/rvm_packages.lst → .gitlab/ci/docker/fedora38/rvm_packages.lst


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

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

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

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

+ 0 - 0
.gitlab/ci/env_fedora37_asan.sh → .gitlab/ci/env_fedora38_asan.sh


+ 0 - 0
.gitlab/ci/env_fedora37_clang_analyzer.sh → .gitlab/ci/env_fedora38_clang_analyzer.sh


+ 2 - 2
.gitlab/ci/env_fedora37_common_clang.sh → .gitlab/ci/env_fedora38_common_clang.sh

@@ -1,4 +1,4 @@
-export CC=/usr/bin/clang-15
-export CXX=/usr/bin/clang++-15
+export CC=/usr/bin/clang-16
+export CXX=/usr/bin/clang++-16
 export FC=/usr/bin/flang-new
 export FFLAGS=-flang-experimental-exec

+ 0 - 0
.gitlab/ci/env_fedora37_extdeps.sh → .gitlab/ci/env_fedora38_extdeps.sh


+ 0 - 0
.gitlab/ci/env_fedora37_makefiles.cmake → .gitlab/ci/env_fedora38_makefiles.cmake


+ 0 - 0
.gitlab/ci/env_fedora37_makefiles.sh → .gitlab/ci/env_fedora38_makefiles.sh


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

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

+ 0 - 0
.gitlab/ci/env_fedora37_ninja.sh → .gitlab/ci/env_fedora38_ninja.sh


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

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

+ 0 - 0
.gitlab/ci/env_fedora37_ninja_multi.sh → .gitlab/ci/env_fedora38_ninja_multi.sh


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

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

+ 0 - 0
.gitlab/ci/pre_build_fedora37_tidy.sh → .gitlab/ci/pre_build_fedora38_tidy.sh


+ 45 - 60
.gitlab/os-linux.yml

@@ -5,7 +5,7 @@
 ### Release
 
 .linux_prep_source:
-    image: "fedora:37"
+    image: "fedora:38"
 
     variables:
         GIT_CLONE_PATH: "$CI_BUILDS_DIR/cmake ci"
@@ -68,8 +68,8 @@
 
 ### Fedora
 
-.fedora37:
-    image: "kitware/cmake:ci-fedora37-x86_64-2023-05-17"
+.fedora38:
+    image: "kitware/cmake:ci-fedora38-x86_64-2023-05-22"
 
     variables:
         GIT_CLONE_PATH: "$CI_BUILDS_DIR/cmake ci/long file name for testing purposes"
@@ -77,37 +77,37 @@
 
 #### Lint builds
 
-.fedora37_tidy:
-    extends: .fedora37
+.fedora38_tidy:
+    extends: .fedora38
 
     variables:
-        CMAKE_CONFIGURATION: fedora37_tidy
+        CMAKE_CONFIGURATION: fedora38_tidy
         CTEST_NO_WARNINGS_ALLOWED: 1
         CMAKE_CI_NO_INSTALL: 1
 
-.fedora37_clang_analyzer:
-    extends: .fedora37
+.fedora38_clang_analyzer:
+    extends: .fedora38
 
     variables:
-        CMAKE_CONFIGURATION: fedora37_clang_analyzer
+        CMAKE_CONFIGURATION: fedora38_clang_analyzer
         CMAKE_CI_BUILD_TYPE: Debug
         CTEST_NO_WARNINGS_ALLOWED: 1
         CMAKE_CI_NO_INSTALL: 1
 
-.fedora37_sphinx:
-    extends: .fedora37
+.fedora38_sphinx:
+    extends: .fedora38
 
     variables:
-        CMAKE_CONFIGURATION: fedora37_sphinx
+        CMAKE_CONFIGURATION: fedora38_sphinx
         CTEST_NO_WARNINGS_ALLOWED: 1
         CTEST_SOURCE_SUBDIRECTORY: "Utilities/Sphinx"
         CMAKE_CI_NO_INSTALL: 1
 
-.fedora37_sphinx_package:
-    extends: .fedora37
+.fedora38_sphinx_package:
+    extends: .fedora38
 
     variables:
-        CMAKE_CONFIGURATION: fedora37_sphinx_package
+        CMAKE_CONFIGURATION: fedora38_sphinx_package
         CTEST_SOURCE_SUBDIRECTORY: "Utilities/Sphinx"
 
 #### Build and test
@@ -153,35 +153,35 @@
         CMAKE_CI_BUILD_TYPE: Release
         CTEST_NO_WARNINGS_ALLOWED: 1
 
-.fedora37_extdeps:
-    extends: .fedora37
+.fedora38_extdeps:
+    extends: .fedora38
 
     variables:
-        CMAKE_CONFIGURATION: fedora37_extdeps
+        CMAKE_CONFIGURATION: fedora38_extdeps
         CMAKE_CI_BUILD_TYPE: Release
         CTEST_NO_WARNINGS_ALLOWED: 1
 
-.fedora37_ninja:
-    extends: .fedora37
+.fedora38_ninja:
+    extends: .fedora38
 
     variables:
-        CMAKE_CONFIGURATION: fedora37_ninja
+        CMAKE_CONFIGURATION: fedora38_ninja
         CMAKE_CI_BUILD_TYPE: Release
         CTEST_NO_WARNINGS_ALLOWED: 1
 
-.fedora37_ninja_multi:
-    extends: .fedora37
+.fedora38_ninja_multi:
+    extends: .fedora38
 
     variables:
-        CMAKE_CONFIGURATION: fedora37_ninja_multi
+        CMAKE_CONFIGURATION: fedora38_ninja_multi
         CTEST_NO_WARNINGS_ALLOWED: 1
         CMAKE_GENERATOR: "Ninja Multi-Config"
 
-.fedora37_makefiles:
-    extends: .fedora37
+.fedora38_makefiles:
+    extends: .fedora38
 
     variables:
-        CMAKE_CONFIGURATION: fedora37_makefiles
+        CMAKE_CONFIGURATION: fedora38_makefiles
         CTEST_NO_WARNINGS_ALLOWED: 1
         CMAKE_GENERATOR: "Unix Makefiles"
 
@@ -200,18 +200,25 @@
     variables:
         CMAKE_CONFIGURATION: debian10_ninja_clang
 
-.fedora37_makefiles_clang:
-    extends: .fedora37
+.fedora38_makefiles_clang:
+    extends: .fedora38
 
     variables:
-        CMAKE_CONFIGURATION: fedora37_makefiles_clang
+        CMAKE_CONFIGURATION: fedora38_makefiles_clang
         CMAKE_GENERATOR: "Unix Makefiles"
 
-.fedora37_ninja_clang:
-    extends: .fedora37
+.fedora38_ninja_clang:
+    extends: .fedora38
 
     variables:
-        CMAKE_CONFIGURATION: fedora37_ninja_clang
+        CMAKE_CONFIGURATION: fedora38_ninja_clang
+
+.fedora38_ninja_multi_clang:
+    extends: .fedora38
+
+    variables:
+        CMAKE_CONFIGURATION: fedora38_ninja_multi_clang
+        CMAKE_GENERATOR: "Ninja Multi-Config"
 
 ### Sanitizers
 
@@ -226,13 +233,13 @@
         CTEST_MEMORYCHECK_TYPE: AddressSanitizer
         CTEST_MEMORYCHECK_SANITIZER_OPTIONS: ""
 
-.fedora37_asan:
+.fedora38_asan:
     extends:
-        - .fedora37
+        - .fedora38
         - .fedora_asan_addon
 
     variables:
-        CMAKE_CONFIGURATION: fedora37_asan
+        CMAKE_CONFIGURATION: fedora38_asan
 
 ### Intel Compiler
 
@@ -376,28 +383,6 @@
         CMAKE_CONFIGURATION: linux_gcc_cxx_modules_ninja_multi
         CMAKE_GENERATOR: "Ninja Multi-Config"
 
-.clang_cxx_modules_x86_64:
-    image: "kitware/cmake:ci-clang_cxx_modules-x86_64-2023-02-15"
-
-    variables:
-        GIT_CLONE_PATH: "$CI_BUILDS_DIR/cmake ci"
-        CMAKE_ARCH: x86_64
-        CC: "/opt/llvm-p1689/bin/clang"
-        CXX: "/opt/llvm-p1689/bin/clang++"
-
-.clang_cxx_modules_ninja:
-    extends: .clang_cxx_modules_x86_64
-
-    variables:
-        CMAKE_CONFIGURATION: linux_clang_cxx_modules_ninja
-
-.clang_cxx_modules_ninja_multi:
-    extends: .clang_cxx_modules_x86_64
-
-    variables:
-        CMAKE_CONFIGURATION: linux_clang_cxx_modules_ninja_multi
-        CMAKE_GENERATOR: "Ninja Multi-Config"
-
 ## Tags
 
 .linux_x86_64_tags:
@@ -478,7 +463,7 @@
 
 .cmake_codespell_linux:
     stage: build
-    extends: .fedora37
+    extends: .fedora38
     script:
         - .gitlab/ci/codespell.sh
     interruptible: true
@@ -623,7 +608,7 @@
 .cmake_org_help:
     stage: build
     extends:
-        - .fedora37
+        - .fedora38
         - .linux_x86_64_tags
         - .cmake_org_help_artifacts
     script:

+ 2 - 2
.gitlab/upload.yml

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

+ 1 - 1
Help/command/include_directories.rst

@@ -25,7 +25,7 @@ prepending, independent of the default.
 
 If the ``SYSTEM`` option is given, the compiler will be told the
 directories are meant as system include directories on some platforms.
-Signalling this setting might achieve effects such as the compiler
+Signaling this setting might achieve effects such as the compiler
 skipping warnings, or these fixed-install system files not being
 considered in dependency calculations - see compiler docs.
 

+ 1 - 1
Modules/CMakePackageConfigHelpers.cmake

@@ -188,7 +188,7 @@ resulting version file.  Depending on the ``COMPATIBILITY``, the corresponding
 ``BasicConfigVersion-<COMPATIBILITY>.cmake.in`` file is used.
 Please note that these files are internal to CMake and you should not call
 :command:`configure_file()` on them yourself, but they can be used as starting
-point to create more sophisticted custom ``ConfigVersion.cmake`` files.
+point to create more sophisticated custom ``ConfigVersion.cmake`` files.
 
 Example Generating Package Files
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

+ 1 - 1
Modules/CPackComponent.cmake

@@ -149,7 +149,7 @@ installed or not.
 REQUIRED indicates that this component is required, and therefore will
 always be installed.  It will be visible in the graphical installer,
 but it cannot be unselected.  (Typically, required components are
-shown greyed out).
+shown grayed out).
 
 DISABLED indicates that this component should be disabled (unselected)
 by default.  The user is free to select this component for

+ 1 - 1
Modules/FindCUDA.cmake

@@ -1942,7 +1942,7 @@ function(CUDA_LINK_SEPARABLE_COMPILATION_OBJECTS output_file cuda_target options
       list(APPEND flags -Xcompiler ${f})
     endforeach()
 
-    # Add our general CUDA_NVCC_FLAGS with the configuration specifig flags
+    # Add our general CUDA_NVCC_FLAGS with the configuration specific flags
     set(nvcc_flags ${CUDA_NVCC_FLAGS} ${config_specific_flags} ${nvcc_flags})
 
     file(RELATIVE_PATH output_file_relative_path "${CMAKE_BINARY_DIR}" "${output_file}")

+ 1 - 1
Modules/FindMPI.cmake

@@ -1554,7 +1554,7 @@ foreach(LANG IN ITEMS C CXX Fortran)
           endif()
         endif()
 
-        # We are on a Cray, environment identfier: PE_ENV is set (CRAY), and
+        # We are on a Cray, environment identifier: PE_ENV is set (CRAY), and
         # have NOT found an mpic++-like compiler wrapper (previous block),
         # and we do NOT use the Cray cc/CC compiler wrappers as CC/CXX CMake
         # compiler.

+ 1 - 1
Modules/FindMatlab.cmake

@@ -951,7 +951,7 @@ function(matlab_add_unit_test)
   endif()
 
   # The option to run a batch program with MATLAB changes depending on the MATLAB version
-  # For MATLAB before R2019a (9.6), the only supported option is -r, afterwords the suggested option
+  # For MATLAB before R2019a (9.6), the only supported option is -r, afterwards the suggested option
   # is -batch as -r is deprecated
   set(maut_BATCH_OPTION "-r")
   if(NOT (Matlab_VERSION_STRING STREQUAL ""))

+ 1 - 1
Modules/FindOpenGL.cmake

@@ -160,7 +160,7 @@ The value may be one of:
 
  .. versionchanged:: 3.11
   This is the default, unless policy :policy:`CMP0072` is set to ``OLD``
-  and no components are requeted (since components
+  and no components are requested (since components
   correspond to GLVND libraries).
 
 ``LEGACY``

+ 1 - 1
Modules/FindOpenSSL.cmake

@@ -107,7 +107,7 @@ The following variables may be set to control search behavior:
 
 ``ENV{PKG_CONFIG_PATH}``
   On UNIX-like systems, ``pkg-config`` is used to locate the system OpenSSL.
-  Set the ``PKG_CONFIG_PATH`` environment varialbe to look in alternate
+  Set the ``PKG_CONFIG_PATH`` environment variable to look in alternate
   locations.  Useful on multi-lib systems.
 #]=======================================================================]
 

+ 1 - 1
Modules/FindwxWindows.cmake

@@ -613,7 +613,7 @@ else()
     option(WXWINDOWS_USE_SHARED_LIBS "Use shared versions (.so) of wxWindows libraries" ON)
     mark_as_advanced(WXWINDOWS_USE_SHARED_LIBS)
 
-    # JW removed option and force the develper th SET it.
+    # JW removed option and force the developer to SET it.
     # option(WXWINDOWS_USE_GL "use wxWindows with GL support (use additional
     # --gl-libs for wx-config)?" OFF)
 

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

@@ -1150,7 +1150,7 @@ function(cpack_rpm_generate_package)
   endforeach()
 
   # CPACK_RPM_SPEC_INSTALL_POST
-  # May be used to define a RPM post intallation script
+  # May be used to define a RPM post installation script
   # for example setting it to "/bin/true" may prevent
   # rpmbuild from stripping binaries.
   if(CPACK_RPM_SPEC_INSTALL_POST)

+ 1 - 1
Source/CPack/cmCPackInnoSetupGenerator.cxx

@@ -277,7 +277,7 @@ bool cmCPackInnoSetupGenerator::ProcessSetupSection()
     return false;
   }
 
-  const std::string& architecture = GetOption("CPACK_INNOSETUP_ARCHITECTURE");
+  cmValue const architecture = GetOption("CPACK_INNOSETUP_ARCHITECTURE");
   if (architecture != "x86" && architecture != "x64" &&
       architecture != "arm64" && architecture != "ia64") {
     cmCPackLogger(cmCPackLog::LOG_ERROR,

+ 4 - 0
Source/CursesDialog/form/frm_def.c

@@ -220,6 +220,10 @@ static int Connect_Fields(FORM  * form, FIELD ** fields)
   for(page_nr = 0;page_nr < form->maxpage; page_nr++)
     {
       FIELD *fld = (FIELD *)0;
+      #ifdef __clang_analyzer__
+      /* Tell clang-analyzer the loop body runs at least once.  */
+      assert(form->page[page_nr].pmin <= form->page[page_nr].pmax);
+      #endif
       for(j = form->page[page_nr].pmin;j <= form->page[page_nr].pmax;j++)
 	{
 	  fields[j]->index = j;

+ 1 - 1
Source/cmCPluginAPI.h

@@ -32,7 +32,7 @@ cmCPLuginAPI.cxx
 typedef struct
 {
   /*=========================================================================
-  Here we define the set of functions that a plugin may call. The first goup
+  Here we define the set of functions that a plugin may call. The first group
   of functions are utility functions that are specific to the plugin API
   =========================================================================*/
   /* set/Get the ClientData in the cmLoadedCommandInfo structure, this is how

+ 2 - 1
Source/cmCommandArgumentParserHelper.cxx

@@ -96,7 +96,8 @@ const char* cmCommandArgumentParserHelper::ExpandVariable(const char* var)
   }
   if (this->FileLine >= 0 && strcmp(var, "CMAKE_CURRENT_LIST_LINE") == 0) {
     std::string line;
-    cmListFileContext const& top = this->Makefile->GetBacktrace().Top();
+    cmListFileBacktrace bt = this->Makefile->GetBacktrace();
+    cmListFileContext const& top = bt.Top();
     if (top.DeferId) {
       line = cmStrCat("DEFERRED:"_s, *top.DeferId);
     } else {

+ 1 - 1
Source/cmCommonTargetGenerator.cxx

@@ -236,7 +236,7 @@ std::string cmCommonTargetGenerator::GetManifests(const std::string& config)
   manifests.reserve(manifest_srcs.size());
 
   std::string lang = this->GeneratorTarget->GetLinkerLanguage(config);
-  std::string const& manifestFlag =
+  std::string manifestFlag =
     this->Makefile->GetDefinition("CMAKE_" + lang + "_LINKER_MANIFEST_FLAG");
   for (cmSourceFile const* manifest_src : manifest_srcs) {
     manifests.push_back(manifestFlag +

+ 2 - 2
Source/cmConditionEvaluator.cxx

@@ -741,8 +741,8 @@ bool cmConditionEvaluator::HandleLevel2(cmArgumentList& newArgs,
                                 keyVERSION_LESS_EQUAL, keyVERSION_GREATER,
                                 keyVERSION_GREATER_EQUAL, keyVERSION_EQUAL))) {
       const auto op = MATCH2CMPOP[matchNo - 1];
-      const std::string& lhs = this->GetVariableOrString(*args.current);
-      const std::string& rhs = this->GetVariableOrString(*args.nextnext);
+      const cmValue lhs = this->GetVariableOrString(*args.current);
+      const cmValue rhs = this->GetVariableOrString(*args.nextnext);
       const auto result = cmSystemTools::VersionCompare(op, lhs, rhs);
       newArgs.ReduceTwoArgs(result, args);
     }

+ 3 - 3
Source/cmCustomCommandGenerator.cxx

@@ -332,9 +332,9 @@ const char* cmCustomCommandGenerator::GetArgv0Location(unsigned int c) const
 
 bool cmCustomCommandGenerator::HasOnlyEmptyCommandLines() const
 {
-  for (size_t i = 0; i < this->CommandLines.size(); ++i) {
-    for (size_t j = 0; j < this->CommandLines[i].size(); ++j) {
-      if (!this->CommandLines[i][j].empty()) {
+  for (cmCustomCommandLine const& ccl : this->CommandLines) {
+    for (std::string const& cl : ccl) {
+      if (!cl.empty()) {
         return false;
       }
     }

+ 1 - 1
Source/cmDependsFortran.cxx

@@ -416,7 +416,7 @@ bool cmDependsFortran::WriteDependenciesReal(std::string const& obj,
       // file is not updated. In such case the stamp file will be always
       // older than its prerequisite and trigger cmake_copy_f90_mod
       // on each new build. This is expected behavior for incremental
-      // builds and can not be changed without preforming recursive make
+      // builds and can not be changed without performing recursive make
       // calls that would considerably slow down the building process.
       makeDepends << stampFileForMake << ": " << obj_m << '\n';
       makeDepends << "\t$(CMAKE_COMMAND) -E cmake_copy_f90_mod " << modFile

+ 1 - 1
Source/cmDependsJavaParserHelper.cxx

@@ -155,7 +155,7 @@ void cmDependsJavaParserHelper::CheckEmpty(
 void cmDependsJavaParserHelper::PrepareElement(
   cmDependsJavaParserHelper::ParserType* me)
 {
-  // Inititalize self
+  // Initialize self
   me->str = nullptr;
 }
 

+ 1 - 1
Source/cmGetTestPropertyCommand.cxx

@@ -25,7 +25,7 @@ bool cmGetTestPropertyCommand(std::vector<std::string> const& args,
       prop = test->GetProperty(args[1]);
     }
     if (prop) {
-      mf.AddDefinition(var, prop->c_str());
+      mf.AddDefinition(var, prop);
       return true;
     }
   }

+ 3 - 3
Source/cmGlobalCommonGenerator.cxx

@@ -34,8 +34,8 @@ cmGlobalCommonGenerator::ComputeDirectoryTargets() const
 {
   std::map<std::string, DirectoryTarget> dirTargets;
   for (const auto& lg : this->LocalGenerators) {
-    std::string const& currentBinaryDir(
-      lg->GetStateSnapshot().GetDirectory().GetCurrentBinary());
+    std::string currentBinaryDir =
+      lg->GetStateSnapshot().GetDirectory().GetCurrentBinary();
     DirectoryTarget& dirTarget = dirTargets[currentBinaryDir];
     dirTarget.LG = lg.get();
     const std::vector<std::string>& configs =
@@ -68,7 +68,7 @@ cmGlobalCommonGenerator::ComputeDirectoryTargets() const
           for (cmStateSnapshot dir =
                  lg->GetStateSnapshot().GetBuildsystemDirectoryParent();
                dir.IsValid(); dir = dir.GetBuildsystemDirectoryParent()) {
-            std::string const& d = dir.GetDirectory().GetCurrentBinary();
+            std::string d = dir.GetDirectory().GetCurrentBinary();
             dirTargets[d].Targets.emplace_back(t);
           }
         }

+ 5 - 5
Source/cmGlobalGhsMultiGenerator.cxx

@@ -101,11 +101,11 @@ bool cmGlobalGhsMultiGenerator::SetGeneratorToolset(std::string const& ts,
 
   /* check if the toolset changed from last generate */
   if (cmNonempty(prevTool) && !cmSystemTools::ComparePath(gbuild, *prevTool)) {
-    std::string const& e =
-      cmStrCat("toolset build tool: ", gbuild,
-               "\nDoes not match the previously used build tool: ", *prevTool,
-               "\nEither remove the CMakeCache.txt file and CMakeFiles "
-               "directory or choose a different binary directory.");
+    std::string const& e = cmStrCat(
+      "toolset build tool: ", gbuild, '\n',
+      "Does not match the previously used build tool: ", *prevTool, '\n',
+      "Either remove the CMakeCache.txt file and CMakeFiles "
+      "directory or choose a different binary directory.");
     mf->IssueMessage(MessageType::FATAL_ERROR, e);
     return false;
   }

+ 1 - 1
Source/cmGlobalVisualStudio7Generator.cxx

@@ -716,7 +716,7 @@ std::set<std::string> cmGlobalVisualStudio7Generator::IsPartOfDefaultBuild(
   cmGeneratorTarget const* target)
 {
   std::set<std::string> activeConfigs;
-  // if it is a utilitiy target then only make it part of the
+  // if it is a utility target then only make it part of the
   // default build if another target depends on it
   int type = target->GetType();
   if (type == cmStateEnums::GLOBAL_TARGET) {

+ 1 - 1
Source/cmMakefileLibraryTargetGenerator.cxx

@@ -785,7 +785,7 @@ void cmMakefileLibraryTargetGenerator::WriteLibraryRules(
     if (this->GeneratorTarget->HasSOName(this->GetConfigName())) {
       vars.SONameFlag = this->Makefile->GetSONameFlag(linkLanguage);
       targetOutSOName = this->LocalGenerator->ConvertToOutputFormat(
-        this->TargetNames.SharedObject.c_str(), cmOutputConverter::SHELL);
+        this->TargetNames.SharedObject, cmOutputConverter::SHELL);
       vars.TargetSOName = targetOutSOName.c_str();
     }
     vars.LinkFlags = linkFlags.c_str();

+ 3 - 4
Source/cmQtAutoMocUic.cxx

@@ -2272,10 +2272,9 @@ cmQtAutoMocUicT::JobDepFilesMergeT::initialDependencies() const
 void cmQtAutoMocUicT::JobDepFilesMergeT::Process()
 {
   if (this->Log().Verbose()) {
-    this->Log().Info(
-      GenT::MOC,
-      cmStrCat("Merging MOC dependencies into ",
-               this->MessagePath(this->BaseConst().DepFile.c_str())));
+    this->Log().Info(GenT::MOC,
+                     cmStrCat("Merging MOC dependencies into ",
+                              this->MessagePath(this->BaseConst().DepFile)));
   }
   auto processDepFile =
     [this](const std::string& mocOutputFile) -> std::vector<std::string> {

+ 16 - 16
Source/cmake.cxx

@@ -2369,11 +2369,11 @@ int cmake::ActualConfigure()
   cmValue genName = this->State->GetInitializedCacheValue("CMAKE_GENERATOR");
   if (genName) {
     if (!this->GlobalGenerator->MatchesGeneratorName(*genName)) {
-      std::string message =
-        cmStrCat("Error: generator : ", this->GlobalGenerator->GetName(),
-                 "\nDoes not match the generator used previously: ", *genName,
-                 "\nEither remove the CMakeCache.txt file and CMakeFiles "
-                 "directory or choose a different binary directory.");
+      std::string message = cmStrCat(
+        "Error: generator : ", this->GlobalGenerator->GetName(), '\n',
+        "Does not match the generator used previously: ", *genName, '\n',
+        "Either remove the CMakeCache.txt file and CMakeFiles "
+        "directory or choose a different binary directory.");
       cmSystemTools::Error(message);
       return -2;
     }
@@ -2399,11 +2399,11 @@ int cmake::ActualConfigure()
   if (cmValue instance =
         this->State->GetInitializedCacheValue("CMAKE_GENERATOR_INSTANCE")) {
     if (this->GeneratorInstanceSet && this->GeneratorInstance != *instance) {
-      std::string message =
-        cmStrCat("Error: generator instance: ", this->GeneratorInstance,
-                 "\nDoes not match the instance used previously: ", *instance,
-                 "\nEither remove the CMakeCache.txt file and CMakeFiles "
-                 "directory or choose a different binary directory.");
+      std::string message = cmStrCat(
+        "Error: generator instance: ", this->GeneratorInstance, '\n',
+        "Does not match the instance used previously: ", *instance, '\n',
+        "Either remove the CMakeCache.txt file and CMakeFiles "
+        "directory or choose a different binary directory.");
       cmSystemTools::Error(message);
       return -2;
     }
@@ -2418,9 +2418,9 @@ int cmake::ActualConfigure()
     if (this->GeneratorPlatformSet &&
         this->GeneratorPlatform != *platformName) {
       std::string message = cmStrCat(
-        "Error: generator platform: ", this->GeneratorPlatform,
-        "\nDoes not match the platform used previously: ", *platformName,
-        "\nEither remove the CMakeCache.txt file and CMakeFiles "
+        "Error: generator platform: ", this->GeneratorPlatform, '\n',
+        "Does not match the platform used previously: ", *platformName, '\n',
+        "Either remove the CMakeCache.txt file and CMakeFiles "
         "directory or choose a different binary directory.");
       cmSystemTools::Error(message);
       return -2;
@@ -2434,9 +2434,9 @@ int cmake::ActualConfigure()
         this->State->GetInitializedCacheValue("CMAKE_GENERATOR_TOOLSET")) {
     if (this->GeneratorToolsetSet && this->GeneratorToolset != *tsName) {
       std::string message =
-        cmStrCat("Error: generator toolset: ", this->GeneratorToolset,
-                 "\nDoes not match the toolset used previously: ", *tsName,
-                 "\nEither remove the CMakeCache.txt file and CMakeFiles "
+        cmStrCat("Error: generator toolset: ", this->GeneratorToolset, '\n',
+                 "Does not match the toolset used previously: ", *tsName, '\n',
+                 "Either remove the CMakeCache.txt file and CMakeFiles "
                  "directory or choose a different binary directory.");
       cmSystemTools::Error(message);
       return -2;

+ 4 - 0
Source/kwsys/RegularExpression.cxx

@@ -378,6 +378,10 @@ bool RegularExpression::compile(const char* exp)
     return false;
   }
 
+#ifdef __clang_analyzer__ /* Convince it that the program is initialized.  */
+  memset(this->program, 0, comp.regsize);
+#endif
+
   // Second pass: emit code.
   comp.regparse = exp;
   comp.regnpar = 1;

+ 3 - 2
Tests/FindOpenAL/Test/main.cxx

@@ -10,9 +10,10 @@
 int main()
 {
   /* Reference an AL symbol without requiring a context at runtime.  */
-  printf("&alGetString = %p\n", &alGetString);
+  printf("AL_VERSION: %s\n", alGetString(AL_VERSION));
 
   /* Reference an ALC symbol without requiring a context at runtime.  */
-  printf("&alcGetString = %p\n", &alcGetString);
+  printf("ALC_DEVICE_SPECIFIER: %s\n",
+         alcGetString(NULL, ALC_DEVICE_SPECIFIER));
   return 0;
 }

+ 13 - 13
Tests/Module/ExternalData/Data1Check.cmake

@@ -1,24 +1,24 @@
 file(STRINGS "${Data}" lines LIMIT_INPUT 1024)
 if(NOT "x${lines}" STREQUAL "xInput file already transformed.")
-  message(SEND_ERROR "Input file:\n  ${Data}\ndoes not have expected content, but [[${lines}]]")
+  message(SEND_ERROR "Input file:\n  ${Data}\n" "does not have expected content, but [[${lines}]]")
 endif()
 if(DEFINED DataSpace)
   file(STRINGS "${DataSpace}" lines LIMIT_INPUT 1024)
   if(NOT "x${lines}" STREQUAL "xInput file already transformed.")
-    message(SEND_ERROR "Input file:\n  ${DataSpace}\ndoes not have expected content, but [[${lines}]]")
+    message(SEND_ERROR "Input file:\n  ${DataSpace}\n" "does not have expected content, but [[${lines}]]")
   endif()
 endif()
 file(STRINGS "${DataScript}" lines LIMIT_INPUT 1024)
 if(NOT "x${lines}" STREQUAL "xDataScript")
-  message(SEND_ERROR "Input file:\n  ${DataScript}\ndoes not have expected content, but [[${lines}]]")
+  message(SEND_ERROR "Input file:\n  ${DataScript}\n" "does not have expected content, but [[${lines}]]")
 endif()
 file(STRINGS "${DataAlgoMapA}" lines LIMIT_INPUT 1024)
 if(NOT "x${lines}" STREQUAL "xDataAlgoMap")
-  message(SEND_ERROR "Input file:\n  ${DataAlgoMapA}\ndoes not have expected content, but [[${lines}]]")
+  message(SEND_ERROR "Input file:\n  ${DataAlgoMapA}\n" "does not have expected content, but [[${lines}]]")
 endif()
 file(STRINGS "${DataAlgoMapB}" lines LIMIT_INPUT 1024)
 if(NOT "x${lines}" STREQUAL "xDataAlgoMap")
-  message(SEND_ERROR "Input file:\n  ${DataAlgoMapB}\ndoes not have expected content, but [[${lines}]]")
+  message(SEND_ERROR "Input file:\n  ${DataAlgoMapB}\n" "does not have expected content, but [[${lines}]]")
 endif()
 if(DataMissing)
   if(EXISTS "${DataMissing}")
@@ -54,7 +54,7 @@ foreach(s A B C D)
   foreach(n "" ${Series${s}l})
     string(REGEX REPLACE "\\.dat$" "${n}.dat" file "${Series${s}}")
     if(NOT EXISTS "${file}")
-      message(SEND_ERROR "Input file:\n  ${file}\ndoes not exist!")
+      message(SEND_ERROR "Input file:\n  ${file}\n" "does not exist!")
     endif()
   endforeach()
 endforeach()
@@ -62,45 +62,45 @@ foreach(s A B C D)
   foreach(n ${Series${s}l})
     string(REGEX REPLACE "${Series${s}n1}$" "${n}.dat" file "${Series${s}n}")
     if(NOT EXISTS "${file}")
-      message(SEND_ERROR "Input file:\n  ${file}\ndoes not exist!")
+      message(SEND_ERROR "Input file:\n  ${file}\n" "does not exist!")
     endif()
   endforeach()
 endforeach()
 foreach(n .1 .2 .3 .4)
   string(REGEX REPLACE "\\.1\\.dat$" "${n}.dat" file "${SeriesMixed}")
   if(NOT EXISTS "${file}")
-    message(SEND_ERROR "Input file:\n  ${file}\ndoes not exist!")
+    message(SEND_ERROR "Input file:\n  ${file}\n" "does not exist!")
   endif()
 endforeach()
 foreach(n A B)
   string(REGEX REPLACE "A\\.dat$" "${n}.dat" file "${Paired}")
   if(NOT EXISTS "${file}")
-    message(SEND_ERROR "Input file:\n  ${file}\ndoes not exist!")
+    message(SEND_ERROR "Input file:\n  ${file}\n" "does not exist!")
   endif()
 endforeach()
 foreach(n Top A B C)
   string(REGEX REPLACE "Top\\.dat$" "${n}.dat" file "${Meta}")
   if(NOT EXISTS "${file}")
-    message(SEND_ERROR "Input file:\n  ${file}\ndoes not exist!")
+    message(SEND_ERROR "Input file:\n  ${file}\n" "does not exist!")
   endif()
 endforeach()
 foreach(n A B C)
   set(file "${Directory}/${n}.dat")
   if(NOT EXISTS "${file}")
-    message(SEND_ERROR "Input file:\n  ${file}\ndoes not exist!")
+    message(SEND_ERROR "Input file:\n  ${file}\n" "does not exist!")
   endif()
 endforeach()
 foreach(n A Sub1/A Sub2/Dir/A B Sub1/B Sub2/Dir/B C Sub1/C Sub2/Dir/C)
   set(file "${DirRecurse}/${n}.dat")
   if(NOT EXISTS "${file}")
-    message(SEND_ERROR "Input file:\n  ${file}\ndoes not exist!")
+    message(SEND_ERROR "Input file:\n  ${file}\n" "does not exist!")
   endif()
 endforeach()
 list(LENGTH Semicolons len)
 if("${len}" EQUAL 2)
   foreach(file ${Semicolons})
     if(NOT EXISTS "${file}")
-      message(SEND_ERROR "Input file:\n  ${file}\ndoes not exist!")
+      message(SEND_ERROR "Input file:\n  ${file}\n" "does not exist!")
     endif()
   endforeach()
 else()

+ 2 - 2
Tests/Module/ExternalData/Data2/Data2Check.cmake

@@ -1,12 +1,12 @@
 foreach(d "${Data2}" "${Data2b}")
   file(STRINGS "${d}" lines LIMIT_INPUT 1024)
   if(NOT "x${lines}" STREQUAL "xInput file already transformed.")
-    message(SEND_ERROR "Input file:\n  ${d}\ndoes not have expected content, but [[${lines}]]")
+    message(SEND_ERROR "Input file:\n  ${d}\n" "does not have expected content, but [[${lines}]]")
   endif()
 endforeach()
 foreach(n 1 2 3)
   string(REGEX REPLACE "_1_\\.my\\.dat$" "_${n}_.my.dat" SeriesCFile "${SeriesC}")
   if(NOT EXISTS "${SeriesCFile}")
-    message(SEND_ERROR "Input file:\n  ${SeriesCFile}\ndoes not exist!")
+    message(SEND_ERROR "Input file:\n  ${SeriesCFile}\n" "does not exist!")
   endif()
 endforeach()

+ 2 - 2
Tests/Module/ExternalData/Data3/Data3Check.cmake

@@ -1,8 +1,8 @@
 if(NOT EXISTS "${Data}")
-  message(SEND_ERROR "Input file:\n  ${Data}\ndoes not exist!")
+  message(SEND_ERROR "Input file:\n  ${Data}\n" "does not exist!")
 endif()
 if(NOT EXISTS "${Other}")
-  message(SEND_ERROR "Input file:\n  ${Other}\ndoes not exist!")
+  message(SEND_ERROR "Input file:\n  ${Other}\n" "does not exist!")
 endif()
 # Verify that the 'Data' object was found in the second store location left
 # from Data1 target downloads and that the 'Other' object was downloaded to

+ 2 - 2
Tests/Module/ExternalData/Data4/Data4Check.cmake

@@ -1,8 +1,8 @@
 if(NOT EXISTS "${Data}")
-  message(SEND_ERROR "Input file:\n  ${Data}\ndoes not exist!")
+  message(SEND_ERROR "Input file:\n  ${Data}\n" "does not exist!")
 endif()
 if(NOT EXISTS "${Other}")
-  message(SEND_ERROR "Input file:\n  ${Other}\ndoes not exist!")
+  message(SEND_ERROR "Input file:\n  ${Other}\n" "does not exist!")
 endif()
 # Verify that the 'Data' object was found in the second store location left
 # from Data1 target downloads and that the 'Other' object was found in the

+ 1 - 1
Tests/Module/ExternalData/Data5/Data5Check.cmake

@@ -1,4 +1,4 @@
 file(STRINGS "${Data5}" lines LIMIT_INPUT 1024)
 if(NOT "x${lines}" STREQUAL "xInput file already transformed.")
-  message(SEND_ERROR "Input file:\n  ${Data5}\ndoes not have expected content, but [[${lines}]]")
+  message(SEND_ERROR "Input file:\n  ${Data5}\n" "does not have expected content, but [[${lines}]]")
 endif()

+ 1 - 1
Tests/Module/ExternalData/DataNoSymlinks/DataNoSymlinksCheck.cmake

@@ -1,5 +1,5 @@
 if(NOT EXISTS "${Data}")
-  message(SEND_ERROR "Input file:\n  ${Data}\ndoes not exist!")
+  message(SEND_ERROR "Input file:\n  ${Data}\n" "does not exist!")
 endif()
 if(IS_SYMLINK "${Data}")
   message(SEND_ERROR "Input file:\n  ${Data}\nis a symlink but should not be!")

+ 1 - 1
Tests/RunCMake/CheckModules/CheckStructHasMemberWrongKey-stderr.txt

@@ -1,7 +1,7 @@
 CMake Error at .*/Modules/CheckStructHasMember.cmake:[0-9]+. \(message\):
   Unknown arguments:
 
-    LANGUAG;C
+    LANGUAG_;C
 
 Call Stack \(most recent call first\):
   CheckStructHasMemberWrongKey.cmake:[0-9]+ \(check_struct_has_member\)

+ 1 - 1
Tests/RunCMake/CheckModules/CheckStructHasMemberWrongKey.cmake

@@ -1,2 +1,2 @@
 include(CheckStructHasMember)
-check_struct_has_member("struct timeval" tv_sec sys/select.h HAVE_TIMEVAL_TV_SEC_K LANGUAG C)
+check_struct_has_member("struct timeval" tv_sec sys/select.h HAVE_TIMEVAL_TV_SEC_K LANGUAG_ C)

+ 1 - 1
Tests/RunCMake/CheckModules/CheckTypeSizeUnknownArgument-stderr.txt

@@ -1,7 +1,7 @@
 CMake Error at .*/Modules/CheckTypeSize.cmake:[0-9]+. \(message\):
   Unknown argument:
 
-    LANGUAG
+    LANGUAG_
 
 Call Stack \(most recent call first\):
   CheckTypeSizeUnknownArgument.cmake:[0-9]+ \(check_type_size\)

+ 1 - 1
Tests/RunCMake/CheckModules/CheckTypeSizeUnknownArgument.cmake

@@ -1,2 +1,2 @@
 include(CheckTypeSize)
-check_type_size(int SIZEOF_INT BUILTIN_TYPES_ONLY LANGUAG CXX)
+check_type_size(int SIZEOF_INT BUILTIN_TYPES_ONLY LANGUAG_ CXX)

+ 1 - 1
Tests/RunCMake/CompileFeatures/RunCMakeTest.cmake

@@ -130,7 +130,7 @@ endfunction()
 
 function(test_cmp0128_warn_unset)
   # For compilers that had CMAKE_<LANG>_EXTENSION_COMPILE_OPTION (only IAR)
-  # there is no behavioural change and thus no warning.
+  # there is no behavioral change and thus no warning.
   if(NOT "${${lang}_EXT_FLAG}" STREQUAL "")
     return()
   endif()

+ 1 - 1
Tests/RunCMake/File_Generate/CMP0070-NEW-check.cmake

@@ -5,7 +5,7 @@ foreach(f
   if(EXISTS "${f}")
     file(READ "${f}" content)
     if(NOT content MATCHES "^relative-input-NEW[\r\n]*$")
-      string(APPEND RunCMake_TEST_FAILED "File\n  ${f}\ndoes not have expected content.\n")
+      string(APPEND RunCMake_TEST_FAILED "File\n  ${f}\n" "does not have expected content.\n")
     endif()
   else()
     string(APPEND RunCMake_TEST_FAILED "Missing\n  ${f}\n")

+ 1 - 1
Tests/RunCMake/File_Generate/CMP0070-OLD-check.cmake

@@ -5,7 +5,7 @@ foreach(f
   if(EXISTS "${f}")
     file(READ "${f}" content)
     if(NOT content MATCHES "^relative-input-OLD[\r\n]*$")
-      string(APPEND RunCMake_TEST_FAILED "File\n  ${f}\ndoes not have expected content.\n")
+      string(APPEND RunCMake_TEST_FAILED "File\n  ${f}\n" "does not have expected content.\n")
     endif()
   else()
     string(APPEND RunCMake_TEST_FAILED "Missing\n  ${f}\n")

+ 1 - 1
Tests/RunCMake/File_Generate/CMP0070-WARN-check.cmake

@@ -5,7 +5,7 @@ foreach(f
   if(EXISTS "${f}")
     file(READ "${f}" content)
     if(NOT content MATCHES "^relative-input-WARN[\r\n]*$")
-      string(APPEND RunCMake_TEST_FAILED "File\n  ${f}\ndoes not have expected content.\n")
+      string(APPEND RunCMake_TEST_FAILED "File\n  ${f}\n" "does not have expected content.\n")
     endif()
   else()
     string(APPEND RunCMake_TEST_FAILED "Missing\n  ${f}\n")

+ 1 - 1
Tests/RunCMake/GenEx-LINK_LIBRARY/RunCMakeTest.cmake

@@ -29,7 +29,7 @@ run_cmake(nested-compatible-features)
 run_cmake(nested-incompatible-features)
 run_cmake(only-targets)
 
-# testing target propertes LINK_LIBRARY_OVERRIDE and LINK_LIBRARY_OVERRIDE_<LIBRARY>
+# testing target properties LINK_LIBRARY_OVERRIDE and LINK_LIBRARY_OVERRIDE_<LIBRARY>
 run_cmake(override-features1)
 run_cmake(override-features2)
 run_cmake(override-features3)

+ 1 - 1
Tests/RunCMake/GeneratorToolset/TestToolsetCustomFlagTableDir-check.cmake

@@ -1,6 +1,6 @@
 set(vcProjectFile "${RunCMake_TEST_BINARY_DIR}/main.vcxproj")
 if(NOT EXISTS "${vcProjectFile}")
-  set(RunCMake_TEST_FAILED "Project file\n  ${vcProjectFile}\ndoes not exist.")
+  string(CONCAT RunCMake_TEST_FAILED "Project file\n  ${vcProjectFile}\n" "does not exist.")
   return()
 endif()
 

+ 2 - 2
Tests/RunCMake/GoogleTest/GoogleTestXML.cmake

@@ -5,13 +5,13 @@ enable_testing()
 
 include(xcode_sign_adhoc.cmake)
 
-# This creates the folder structure for the paramterized tests
+# This creates the folder structure for the parameterized tests
 # to avoid handling missing folders in C++
 #
 # This must match the match the name defined in xml_output.cpp
 # for every instance of tests with GetParam.
 #
-# The folder name is created fom the test name (output of the line
+# The folder name is created from the test name (output of the line
 # without leading spaces: "GoogleTestXMLSpecial/cases.") and
 # the parts until the last slash ("case/"). These parts are concatenated.
 file(MAKE_DIRECTORY "${CMAKE_BINARY_DIR}/GoogleTestXMLSpecial/cases.case")

+ 1 - 1
Tests/RunCMake/MacOSVersions/MacOSVersions-build-check.cmake

@@ -21,7 +21,7 @@ foreach(ver
     [[compatibility version 2\.1\.0]]
     )
   if(NOT "${out}" MATCHES "( |\n)${ver}( |\n)")
-    set(RunCMake_TEST_FAILED "Library file:\n  ${lib}\ndoes not contain '${ver}'")
+    string(CONCAT RunCMake_TEST_FAILED "Library file:\n  ${lib}\n" "does not contain '${ver}'")
     return()
   endif()
 endforeach()

+ 4 - 2
Tests/RunCMake/Ninja/CustomCommandDepfile-check.cmake

@@ -3,8 +3,10 @@ file(READ "${log}" build_file)
 
 set(RunCMake_TEST_FAILED)
 if(NOT "${build_file}" MATCHES "depfile = test\\.d")
-  list(APPEND RunCMake_TEST_FAILED "Log file:\n ${log}\ndoes not have expected line: depfile = test.d")
+  string(CONCAT no_test_d "Log file:\n ${log}\n" "does not have expected line: depfile = test.d")
+  list(APPEND RunCMake_TEST_FAILED "${no_test_d}")
 endif()
 if(NOT "${build_file}" MATCHES "depfile = test_Debug\\.d")
-  list(APPEND RunCMake_TEST_FAILED "\nLog file:\n ${log}\ndoes not have expected line: depfile = test_Debug.d")
+  string(CONCAT no_test_Debug_d "\nLog file:\n ${log}\n" "does not have expected line: depfile = test_Debug.d")
+  list(APPEND RunCMake_TEST_FAILED "${no_test_Debug_d}")
 endif()

+ 2 - 2
Tests/RunCMake/Ninja/CustomCommandJobPool-check.cmake

@@ -1,8 +1,8 @@
 set(log "${RunCMake_BINARY_DIR}/CustomCommandJobPool-build/build.ninja")
 file(READ "${log}" build_file)
 if(NOT "${build_file}" MATCHES "pool = custom_command_pool")
-  set(RunCMake_TEST_FAILED "Log file:\n ${log}\ndoes not have expected line: pool = custom_command_pool")
+  string(CONCAT RunCMake_TEST_FAILED "Log file:\n ${log}\n" "does not have expected line: pool = custom_command_pool")
 endif()
 if(NOT "${build_file}" MATCHES "pool = custom_target_pool")
-  set(RunCMake_TEST_FAILED "Log file:\n ${log}\ndoes not have expected line: pool = custom_target_pool")
+  string(CONCAT RunCMake_TEST_FAILED "Log file:\n ${log}\n" "does not have expected line: pool = custom_target_pool")
 endif()

+ 4 - 2
Tests/RunCMake/NinjaMultiConfig/CustomCommandDepfile-check.cmake

@@ -3,8 +3,10 @@ file(READ "${log}" build_file)
 
 set(RunCMake_TEST_FAILED)
 if(NOT "${build_file}" MATCHES "depfile = test\\.d")
-  list(APPEND RunCMake_TEST_FAILED "Log file:\n ${log}\ndoes not have expected line: depfile = test.d")
+  string(CONCAT no_test_d "Log file:\n ${log}\n" "does not have expected line: depfile = test.d")
+  list(APPEND RunCMake_TEST_FAILED "${no_test_d}")
 endif()
 if(NOT "${build_file}" MATCHES "depfile = test_Debug\\.d")
-  list(APPEND RunCMake_TEST_FAILED "\nLog file:\n ${log}\ndoes not have expected line: depfile = test_Debug.d")
+  string(CONCAT no_test_Debug_d "\nLog file:\n ${log}\n" "does not have expected line: depfile = test_Debug.d")
+  list(APPEND RunCMake_TEST_FAILED "${no_test_Debug_d}")
 endif()

+ 3 - 3
Tests/RunCMake/ctest_memcheck/testAddressLeakSanitizer.cmake

@@ -23,7 +23,7 @@ file(APPEND "${LOG_FILE}.2343"
 Direct leak of 4360 byte(s) in 1 object(s) allocated from:
     #0 0x46c669 in operator new[](unsigned long) (/home/kitware/msan/a.out+0x46c669)
     #1 0x4823b4 in main /home/kitware/msan/memcheck.cxx:12
-    #2 0x7fa72bee476c in __libc_start_main /build/buildd/eglibc-2.15/csu/libc-start.c:226
+    #2 0x7fa72bee476c in __libc_start_main /build/eglibc-2.15/csu/libc-start.c:226
 
 SUMMARY: AddressSanitizer: 4436 byte(s) leaked in 2 allocation(s).
 ")
@@ -35,13 +35,13 @@ Direct leak of 76 byte(s) in 1 object(s) allocated from:
     #0 0x46c669 in operator new[](unsigned long) (/home/kitware/msan/a.out+0x46c669)
     #1 0x4821b8 in foo() /home/kitware/msan/memcheck.cxx:4
     #2 0x4823f2 in main /home/kitware/msan/memcheck.cxx:14
-    #3 0x7fa72bee476c in __libc_start_main /build/buildd/eglibc-2.15/csu/libc-start.c:226
+    #3 0x7fa72bee476c in __libc_start_main /build/eglibc-2.15/csu/libc-start.c:226
 
 Indirect leak of 76 byte(s) in 1 object(s) allocated from:
     #0 0x46c669 in operator new[](unsigned long) (/home/kitware/msan/a.out+0x46c669)
     #1 0x4821b8 in foo() /home/kitware/msan/memcheck.cxx:4
     #2 0x4823f2 in main /home/kitware/msan/memcheck.cxx:14
-    #3 0x7fa72bee476c in __libc_start_main /build/buildd/eglibc-2.15/csu/libc-start.c:226
+    #3 0x7fa72bee476c in __libc_start_main /build/eglibc-2.15/csu/libc-start.c:226
 
 SUMMARY: AddressSanitizer: 4436 byte(s) leaked in 2 allocation(s).
 ")

+ 1 - 1
Tests/RunCMake/ctest_memcheck/testAddressSanitizer.cmake

@@ -42,7 +42,7 @@ Shadow byte legend (one shadow byte represents 8 application bytes):
   Addressable:           00
   Partially addressable: 01 02 03 04 05 06 07
   Heap left redzone:     fa
-  Heap righ redzone:     fb
+  Heap right redzone:    fb
   Freed Heap region:     fd
   Stack left redzone:    f1
   Stack mid redzone:     f2

+ 3 - 3
Tests/RunCMake/ctest_memcheck/testLeakSanitizer.cmake

@@ -23,7 +23,7 @@ file(APPEND "${LOG_FILE}.2343"
 Direct leak of 4360 byte(s) in 1 object(s) allocated from:
     #0 0x46c669 in operator new[](unsigned long) (/home/kitware/msan/a.out+0x46c669)
     #1 0x4823b4 in main /home/kitware/msan/memcheck.cxx:12
-    #2 0x7fa72bee476c in __libc_start_main /build/buildd/eglibc-2.15/csu/libc-start.c:226
+    #2 0x7fa72bee476c in __libc_start_main /build/eglibc-2.15/csu/libc-start.c:226
 
 SUMMARY: LeakSanitizer: 4436 byte(s) leaked in 2 allocation(s).
 ")
@@ -35,13 +35,13 @@ Direct leak of 76 byte(s) in 1 object(s) allocated from:
     #0 0x46c669 in operator new[](unsigned long) (/home/kitware/msan/a.out+0x46c669)
     #1 0x4821b8 in foo() /home/kitware/msan/memcheck.cxx:4
     #2 0x4823f2 in main /home/kitware/msan/memcheck.cxx:14
-    #3 0x7fa72bee476c in __libc_start_main /build/buildd/eglibc-2.15/csu/libc-start.c:226
+    #3 0x7fa72bee476c in __libc_start_main /build/eglibc-2.15/csu/libc-start.c:226
 
 Indirect leak of 76 byte(s) in 1 object(s) allocated from:
     #0 0x46c669 in operator new[](unsigned long) (/home/kitware/msan/a.out+0x46c669)
     #1 0x4821b8 in foo() /home/kitware/msan/memcheck.cxx:4
     #2 0x4823f2 in main /home/kitware/msan/memcheck.cxx:14
-    #3 0x7fa72bee476c in __libc_start_main /build/buildd/eglibc-2.15/csu/libc-start.c:226
+    #3 0x7fa72bee476c in __libc_start_main /build/eglibc-2.15/csu/libc-start.c:226
 
 SUMMARY: LeakSanitizer: 4436 byte(s) leaked in 2 allocation(s).
 ")

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