diff options
22 files changed, 147 insertions, 153 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index d8d3a3626b..08fc107517 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -59,7 +59,7 @@ p:doc-package: - .cmake_doc_artifacts - .run_only_for_package -u:source-package: +.u:source-package: extends: - .rsync_upload_binary - .run_only_for_package @@ -77,7 +77,7 @@ b:help:master: - .cmake_org_help - .run_only_for_continuous_master -u:help:master: +.u:help:master: extends: - .rsync_upload_help - .run_only_for_continuous_master @@ -93,7 +93,7 @@ b:help:stage: - .cmake_org_help - .run_only_for_continuous_stage -u:help:stage: +.u:help:stage: extends: - .rsync_upload_help - .run_only_for_continuous_stage @@ -529,7 +529,7 @@ b:linux-x86_64-package: needs: - p:doc-package -u:linux-x86_64-package: +.u:linux-x86_64-package: extends: - .rsync_upload_binary - .run_only_for_package @@ -553,7 +553,7 @@ b:linux-aarch64-package: needs: - p:doc-package -u:linux-aarch64-package: +.u:linux-aarch64-package: extends: - .rsync_upload_binary - .run_only_for_package @@ -694,7 +694,7 @@ b:macos-package: needs: - p:doc-package -u:macos-package: +.u:macos-package: extends: - .rsync_upload_binary - .run_only_for_package @@ -717,7 +717,7 @@ b:macos10.10-package: needs: - p:doc-package -u:macos10.10-package: +.u:macos10.10-package: extends: - .rsync_upload_binary - .run_only_for_package diff --git a/.gitlab/ci/configure_windows_vs_common.cmake b/.gitlab/ci/configure_windows_vs_common.cmake index 703f5348e4..962f03db9f 100644 --- a/.gitlab/ci/configure_windows_vs_common.cmake +++ b/.gitlab/ci/configure_windows_vs_common.cmake @@ -5,5 +5,6 @@ set(CMake_TEST_FindOpenMP_C "ON" CACHE BOOL "") set(CMake_TEST_FindOpenMP_CXX "ON" CACHE BOOL "") set(CMake_TEST_FindOpenMP_Fortran "OFF" CACHE BOOL "") set(CMake_TEST_Java OFF CACHE BOOL "") +set(CMake_TEST_MFC "ON" CACHE BOOL "") include("${CMAKE_CURRENT_LIST_DIR}/configure_external_test.cmake") diff --git a/.gitlab/ci/configure_windows_vs_common_ninja.cmake b/.gitlab/ci/configure_windows_vs_common_ninja.cmake index ae73f8352c..1ae1a66bd4 100644 --- a/.gitlab/ci/configure_windows_vs_common_ninja.cmake +++ b/.gitlab/ci/configure_windows_vs_common_ninja.cmake @@ -8,5 +8,6 @@ set(CMake_TEST_FindOpenMP_CXX "ON" CACHE BOOL "") set(CMake_TEST_FindOpenMP_Fortran "OFF" CACHE BOOL "") set(CMake_TEST_IPO_WORKS_C "ON" CACHE BOOL "") set(CMake_TEST_IPO_WORKS_CXX "ON" CACHE BOOL "") +set(CMake_TEST_MFC "ON" CACHE BOOL "") include("${CMAKE_CURRENT_LIST_DIR}/configure_windows_common.cmake") diff --git a/.gitlab/os-windows.yml b/.gitlab/os-windows.yml index e15bbe9e8f..2bce8c876e 100644 --- a/.gitlab/os-windows.yml +++ b/.gitlab/os-windows.yml @@ -21,7 +21,7 @@ # could run at the same time, so we drop it. GIT_CLONE_PATH: "$CI_BUILDS_DIR\\cmake ci" -.windows_ninja: +.windows_build_ninja: extends: .windows_build variables: @@ -39,7 +39,7 @@ .windows_vs2022_x64_ninja: extends: - - .windows_ninja + - .windows_build_ninja - .windows_vcvarsall_vs2022_x64 variables: diff --git a/Help/dev/maint.rst b/Help/dev/maint.rst index 54d627dd52..151ea5a1b2 100644 --- a/Help/dev/maint.rst +++ b/Help/dev/maint.rst @@ -270,8 +270,8 @@ Update ``Source/CMakeVersion.cmake`` to set the version to set(CMake_VERSION_PATCH 0) set(CMake_VERSION_RC 0) -Update uses of ``DEVEL_CMAKE_VERSION`` in the source tree to mention the -actual version number: +Replace uses of ``DEVEL_CMAKE_VERSION`` in the source tree with +the literal release version number string ``"$major.$minor.0"``: .. code-block:: shell diff --git a/Help/manual/cmake.1.rst b/Help/manual/cmake.1.rst index 1463f0a23f..c2b4d68e7b 100644 --- a/Help/manual/cmake.1.rst +++ b/Help/manual/cmake.1.rst @@ -585,6 +585,8 @@ Run ``cmake -E`` or ``cmake -E help`` for a summary of commands. Available commands are: ``capabilities`` + .. versionadded:: 3.7 + Report cmake capabilities in JSON format. The output is a JSON object with the following keys: @@ -645,6 +647,8 @@ Available commands are: Always false since CMake 3.20. ``cat <files>...`` + .. versionadded:: 3.18 + Concatenate files and print on the standard output. ``chdir <dir> <cmd> [<arg>...]`` @@ -653,8 +657,11 @@ Available commands are: ``compare_files [--ignore-eol] <file1> <file2>`` Check if ``<file1>`` is same as ``<file2>``. If files are the same, then returns ``0``, if not it returns ``1``. In case of invalid - arguments, it returns 2. The ``--ignore-eol`` option - implies line-wise comparison and ignores LF/CRLF differences. + arguments, it returns 2. + + .. versionadded:: 3.14 + The ``--ignore-eol`` option implies line-wise comparison and ignores + LF/CRLF differences. ``copy <file>... <destination>`` Copy files to ``<destination>`` (either file or directory). @@ -663,11 +670,21 @@ Available commands are: ``copy`` does follow symlinks. That means it does not copy symlinks, but the files or directories it point to. + .. versionadded:: 3.5 + Support for multiple input files. + ``copy_directory <dir>... <destination>`` Copy content of ``<dir>...`` directories to ``<destination>`` directory. If ``<destination>`` directory does not exist it will be created. ``copy_directory`` does follow symlinks. + .. versionadded:: 3.5 + Support for multiple input directories. + + .. versionadded:: 3.15 + The command now fails when the source directory does not exist. + Previously it succeeded by creating an empty destination directory. + ``copy_if_different <file>... <destination>`` Copy files to ``<destination>`` (either file or directory) if they have changed. @@ -675,13 +692,21 @@ Available commands are: directory and it must exist. ``copy_if_different`` does follow symlinks. + .. versionadded:: 3.5 + Support for multiple input files. + ``create_symlink <old> <new>`` Create a symbolic link ``<new>`` naming ``<old>``. + .. versionadded:: 3.13 + Support for creating symlinks on Windows. + .. note:: Path to where ``<new>`` symbolic link will be created has to exist beforehand. ``create_hardlink <old> <new>`` + .. versionadded:: 3.19 + Create a hard link ``<new>`` naming ``<old>``. .. note:: @@ -695,12 +720,16 @@ Available commands are: Displays arguments as text but no new line. ``env [--unset=NAME]... [NAME=VALUE]... COMMAND [ARG]...`` + .. versionadded:: 3.1 + Run command in a modified environment. ``environment`` Display the current environment variables. ``false`` + .. versionadded:: 3.16 + Do nothing, with an exit code of 1. ``make_directory <dir>...`` @@ -708,6 +737,9 @@ Available commands are: directories too. If a directory already exists it will be silently ignored. + .. versionadded:: 3.5 + Support for multiple input directories. + ``md5sum <file>...`` Create MD5 checksum of files in ``md5sum`` compatible format:: @@ -715,30 +747,40 @@ Available commands are: 052f86c15bbde68af55c7f7b340ab639 file2.txt ``sha1sum <file>...`` + .. versionadded:: 3.10 + Create SHA1 checksum of files in ``sha1sum`` compatible format:: 4bb7932a29e6f73c97bb9272f2bdc393122f86e0 file1.txt 1df4c8f318665f9a5f2ed38f55adadb7ef9f559c file2.txt ``sha224sum <file>...`` + .. versionadded:: 3.10 + Create SHA224 checksum of files in ``sha224sum`` compatible format:: b9b9346bc8437bbda630b0b7ddfc5ea9ca157546dbbf4c613192f930 file1.txt 6dfbe55f4d2edc5fe5c9197bca51ceaaf824e48eba0cc453088aee24 file2.txt ``sha256sum <file>...`` + .. versionadded:: 3.10 + Create SHA256 checksum of files in ``sha256sum`` compatible format:: 76713b23615d31680afeb0e9efe94d47d3d4229191198bb46d7485f9cb191acc file1.txt 15b682ead6c12dedb1baf91231e1e89cfc7974b3787c1e2e01b986bffadae0ea file2.txt ``sha384sum <file>...`` + .. versionadded:: 3.10 + Create SHA384 checksum of files in ``sha384sum`` compatible format:: acc049fedc091a22f5f2ce39a43b9057fd93c910e9afd76a6411a28a8f2b8a12c73d7129e292f94fc0329c309df49434 file1.txt 668ddeb108710d271ee21c0f3acbd6a7517e2b78f9181c6a2ff3b8943af92b0195dcb7cce48aa3e17893173c0a39e23d file2.txt ``sha512sum <file>...`` + .. versionadded:: 3.10 + Create SHA512 checksum of files in ``sha512sum`` compatible format:: 2a78d7a6c5328cfb1467c63beac8ff21794213901eaadafd48e7800289afbc08e5fb3e86aa31116c945ee3d7bf2a6194489ec6101051083d1108defc8e1dba89 file1.txt @@ -761,16 +803,24 @@ Available commands are: .. deprecated:: 3.17 Remove ``<dir>`` directories and their contents. If a directory does - not exist it will be silently ignored. If ``<dir>`` is a symlink to - a directory, just the symlink will be removed. + not exist it will be silently ignored. Use ``rm`` instead. + .. versionadded:: 3.15 + Support for multiple directories. + + .. versionadded:: 3.16 + If ``<dir>`` is a symlink to a directory, just the symlink will be removed. + ``rename <oldname> <newname>`` Rename a file or directory (on one volume). If file with the ``<newname>`` name already exists, then it will be silently replaced. ``rm [-rRf] <file> <dir>...`` - Remove the files ``<file>`` or directories ``dir``. + .. versionadded:: 3.17 + + Remove the files ``<file>`` or directories ``<dir>``. + Use ``-r`` or ``-R`` to remove directories and their contents recursively. If any of the listed files/directories do not exist, the command returns a non-zero exit code, but no message is logged. The ``-f`` option changes @@ -781,6 +831,8 @@ Available commands are: Launch :manual:`cmake-server(7)` mode. ``sleep <number>...`` + .. versionadded:: 3.0 + Sleep for given number of seconds. ``tar [cxt][vf][zjJ] file.tar [<options>] [--] [<pathname>...]`` @@ -789,45 +841,85 @@ Available commands are: ``c`` Create a new archive containing the specified files. If used, the ``<pathname>...`` argument is mandatory. + ``x`` Extract to disk from the archive. - The ``<pathname>...`` argument could be used to extract only selected files - or directories. - When extracting selected files or directories, you must provide their exact - names including the path, as printed by list (``-t``). + + .. versionadded:: 3.15 + The ``<pathname>...`` argument could be used to extract only selected files + or directories. + When extracting selected files or directories, you must provide their exact + names including the path, as printed by list (``-t``). + ``t`` List archive contents. - The ``<pathname>...`` argument could be used to list only selected files - or directories. + + .. versionadded:: 3.15 + The ``<pathname>...`` argument could be used to list only selected files + or directories. + ``v`` Produce verbose output. + ``z`` Compress the resulting archive with gzip. + ``j`` Compress the resulting archive with bzip2. + ``J`` + .. versionadded:: 3.1 + Compress the resulting archive with XZ. + ``--zstd`` + .. versionadded:: 3.15 + Compress the resulting archive with Zstandard. + ``--files-from=<file>`` + .. versionadded:: 3.1 + Read file names from the given file, one per line. Blank lines are ignored. Lines may not start in ``-`` except for ``--add-file=<name>`` to add files whose names start in ``-``. + ``--format=<format>`` + .. versionadded:: 3.3 + Specify the format of the archive to be created. Supported formats are: ``7zip``, ``gnutar``, ``pax``, ``paxr`` (restricted pax, default), and ``zip``. + ``--mtime=<date>`` + .. versionadded:: 3.1 + Specify modification time recorded in tarball entries. + ``--`` + .. versionadded:: 3.1 + Stop interpreting options and treat all remaining arguments as file names, even if they start with ``-``. + .. versionadded:: 3.1 + LZMA (7zip) support. + + .. versionadded:: 3.15 + The command now continues adding files to an archive even if some of the + files are not readable. This behavior is more consistent with the classic + ``tar`` tool. The command now also parses all flags, and if an invalid flag + was provided, a warning is issued. ``time <command> [<args>...]`` Run command and display elapsed time. + .. versionadded:: 3.5 + The command now properly passes arguments with spaces or special characters + through to the child process. This may break scripts that worked around the + bug with their own extra quoting or escaping. + ``touch <file>...`` Creates ``<file>`` if file do not exist. If ``<file>`` exists, it is changing ``<file>`` access and modification times. @@ -837,6 +929,8 @@ Available commands are: not exist it will be silently ignored. ``true`` + .. versionadded:: 3.16 + Do nothing, with an exit code of 0. Windows-specific Command-Line Tools @@ -848,10 +942,14 @@ The following ``cmake -E`` commands are available only on Windows: Delete Windows registry value. ``env_vs8_wince <sdkname>`` + .. versionadded:: 3.2 + Displays a batch file which sets the environment for the provided Windows CE SDK installed in VS2005. ``env_vs9_wince <sdkname>`` + .. versionadded:: 3.2 + Displays a batch file which sets the environment for the provided Windows CE SDK installed in VS2008. diff --git a/Help/release/dev/0-sample-topic.rst b/Help/release/dev/0-sample-topic.rst deleted file mode 100644 index e4cc01e23f..0000000000 --- a/Help/release/dev/0-sample-topic.rst +++ /dev/null @@ -1,7 +0,0 @@ -0-sample-topic --------------- - -* This is a sample release note for the change in a topic. - Developers should add similar notes for each topic branch - making a noteworthy change. Each document should be named - and titled to match the topic name to avoid merge conflicts. diff --git a/Help/release/index.rst b/Help/release/index.rst index ad33705371..ee677a363f 100644 --- a/Help/release/index.rst +++ b/Help/release/index.rst @@ -7,8 +7,6 @@ CMake Release Notes This file should include the adjacent "dev.txt" file in development versions but not in release versions. -.. include:: dev.txt - Releases ======== diff --git a/Modules/GoogleTestAddTests.cmake b/Modules/GoogleTestAddTests.cmake index 7043b2b5cd..a10b5d09bc 100644 --- a/Modules/GoogleTestAddTests.cmake +++ b/Modules/GoogleTestAddTests.cmake @@ -142,15 +142,14 @@ function(gtest_discover_tests_impl) endif() string(REGEX REPLACE "^DISABLED_" "" pretty_suite "${pretty_suite}") else() - # Test name; strip spaces and comments to get just the name... - string(REGEX REPLACE " +" "" test "${line}") + string(STRIP "${line}" test) if(test MATCHES "#" AND NOT _NO_PRETTY_VALUES) - string(REGEX REPLACE "/[0-9]+#GetParam..=" "/" pretty_test "${test}") + string(REGEX REPLACE "/[0-9]+[ #]+GetParam\\(\\) = " "/" pretty_test "${test}") else() - string(REGEX REPLACE "#.*" "" pretty_test "${test}") + string(REGEX REPLACE " +#.*" "" pretty_test "${test}") endif() string(REGEX REPLACE "^DISABLED_" "" pretty_test "${pretty_test}") - string(REGEX REPLACE "#.*" "" test "${test}") + string(REGEX REPLACE " +#.*" "" test "${test}") if(NOT "${_TEST_XML_OUTPUT_DIR}" STREQUAL "") set(TEST_XML_OUTPUT_PARAM "--gtest_output=xml:${_TEST_XML_OUTPUT_DIR}/${prefix}${suite}.${test}${suffix}.xml") else() diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 3fc3a66a82..c599863df1 100644 --- a/Source/CMakeVersion.cmake +++ b/Source/CMakeVersion.cmake @@ -1,8 +1,8 @@ # CMake version number components. set(CMake_VERSION_MAJOR 3) -set(CMake_VERSION_MINOR 22) -set(CMake_VERSION_PATCH 20220203) -#set(CMake_VERSION_RC 0) +set(CMake_VERSION_MINOR 23) +set(CMake_VERSION_PATCH 0) +set(CMake_VERSION_RC 0) set(CMake_VERSION_IS_DIRTY 0) # Start with the full version number used in tags. It has no dev info. diff --git a/Source/cmExportFileGenerator.cxx b/Source/cmExportFileGenerator.cxx index 412d1040fd..2d80f0ed8b 100644 --- a/Source/cmExportFileGenerator.cxx +++ b/Source/cmExportFileGenerator.cxx @@ -1272,8 +1272,7 @@ void cmExportFileGenerator::GenerateTargetFileSets(cmGeneratorTarget* gte, auto interfaceFileSets = gte->Target->GetAllInterfaceFileSets(); if (!interfaceFileSets.empty()) { std::string targetName = cmStrCat(this->Namespace, gte->GetExportName()); - os << "if(NOT CMAKE_VERSION VERSION_LESS \"" << DEVEL_CMAKE_VERSION(3, 23) - << "\")\n" + os << "if(NOT CMAKE_VERSION VERSION_LESS \"3.23.0\")\n" " target_sources(" << targetName << "\n"; diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt index da6219e763..6946ffbb86 100644 --- a/Tests/CMakeLists.txt +++ b/Tests/CMakeLists.txt @@ -2107,109 +2107,7 @@ if(BUILD_TESTING) list(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/MakeClean") endif() - if(NOT DEFINED CTEST_RUN_MFC) - set(CTEST_RUN_MFC OFF) - - if(MSVC) - set(CTEST_RUN_MFC ON) - - # Look for evidence that this is a VCExpress build. If so, avoid - # the MFC test by default. - string(TOLOWER "${CMAKE_MAKE_PROGRAM}" mkprog) - if(mkprog MATCHES "vcexpress") - message(STATUS - "CMAKE_MAKE_PROGRAM indicates vcexpress, avoiding MFC test") - set(CTEST_RUN_MFC OFF) - endif() - - # Since MSBuild might also be the "makeprogram" for a VCExpress - # build tree, use one more heuristic, too. The string representing - # the .vcproj file type contains "VCExpress" on machines where an - # express edition of VS was installed last: - if(CTEST_RUN_MFC) - execute_process(COMMAND cmd /c assoc .vcproj - OUTPUT_STRIP_TRAILING_WHITESPACE - OUTPUT_VARIABLE ov) - if(ov MATCHES "VCExpress") - message(STATUS - ".vcproj file association indicates VCExpress, avoiding MFC test") - set(CTEST_RUN_MFC OFF) - elseif( NOT ov ) - message(STATUS - ".vcproj has no file association, avoiding MFC test") - set(CTEST_RUN_MFC OFF) - endif() - endif() - - if(CTEST_RUN_MFC) - # For the Watcom WMake generator, avoid the MFC test by default. - if("${CMAKE_GENERATOR}" MATCHES "WMake") - message(STATUS - "using the Watcom WMake generator, avoiding MFC test") - set(CTEST_RUN_MFC OFF) - elseif("${CMAKE_CXX_COMPILER_ID}" STREQUAL "IntelLLVM") - # clang-cl cannot deal with implicit dependencies in UTF16 files - # (see #18311). IntelLLVM inherits this behavior from Clang. - # TODO: maybe clang should also skip the MFC test - message(STATUS - "using generator other than Visual Studio with clang-cl, avoiding MFC test") - set(CTEST_RUN_MFC OFF) - endif() - endif() - - # Last resort, after quick checks are done. Do a try_compile, and avoid - # the MFC test if the simplest possible MFC app cannot be compiled. - if(CTEST_RUN_MFC AND NOT DEFINED HAVE_MFC) - configure_file( - ${CMAKE_CURRENT_SOURCE_DIR}/MFC/try_compile/CMakeLists.txt - ${CMAKE_CURRENT_BINARY_DIR}/MFC/try_compile/CMakeLists.txt - COPYONLY - ) - configure_file( - ${CMAKE_CURRENT_SOURCE_DIR}/MFC/mfc1/stdafx.cpp - ${CMAKE_CURRENT_BINARY_DIR}/MFC/try_compile/stdafx.cpp - COPYONLY - ) - configure_file( - ${CMAKE_CURRENT_SOURCE_DIR}/MFC/mfc1/stdafx.h - ${CMAKE_CURRENT_BINARY_DIR}/MFC/try_compile/stdafx.h - COPYONLY - ) - - message(STATUS "Looking for MFC") - - try_compile(HAVE_MFC - ${CMAKE_CURRENT_BINARY_DIR}/MFC/try_compile/build - ${CMAKE_CURRENT_BINARY_DIR}/MFC/try_compile - try_compile_mfc - OUTPUT_VARIABLE HAVE_MFC_OUTPUT) - - if(HAVE_MFC) - message(STATUS "Looking for MFC - found") - set(HAVE_MFC 1 CACHE INTERNAL "Have MFC") - file(APPEND - ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log - "Determining if MFC exists passed with the following output:\n" - "${HAVE_MFC_OUTPUT}\n\n") - else() - message(STATUS "Looking for MFC - not found") - set(HAVE_MFC "" CACHE INTERNAL "Have MFC") - file(APPEND - ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log - "Determining if MFC exists failed with the following output:\n" - "${HAVE_MFC_OUTPUT}\n\n") - endif() - endif() - - if(CTEST_RUN_MFC AND NOT HAVE_MFC) - message(STATUS - "cannot compile simplest ever MFC app, avoiding MFC test") - set(CTEST_RUN_MFC OFF) - endif() - endif() - endif() - - if(CTEST_RUN_MFC) + if(CMake_TEST_MFC) add_test(MFC ${CMAKE_CTEST_COMMAND} --build-and-test "${CMake_SOURCE_DIR}/Tests/MFC" diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt index e12ffba0e4..1d7e632a1e 100644 --- a/Tests/RunCMake/CMakeLists.txt +++ b/Tests/RunCMake/CMakeLists.txt @@ -913,6 +913,7 @@ endif() add_RunCMake_test("CTestCommandExpandLists") add_RunCMake_test(PrecompileHeaders -DCMAKE_C_COMPILER_ID=${CMAKE_C_COMPILER_ID} + -DCMAKE_C_SIMULATE_ID=${CMAKE_C_SIMULATE_ID} -DCMAKE_C_COMPILER_VERSION=${CMAKE_C_COMPILER_VERSION}) add_RunCMake_test("UnityBuild") diff --git a/Tests/RunCMake/GoogleTest/GoogleTest-test1-stdout.txt b/Tests/RunCMake/GoogleTest/GoogleTest-test1-stdout.txt index 9c0b77533f..01b39c3585 100644 --- a/Tests/RunCMake/GoogleTest/GoogleTest-test1-stdout.txt +++ b/Tests/RunCMake/GoogleTest/GoogleTest-test1-stdout.txt @@ -49,6 +49,8 @@ Test project .* *[0-9]+/[0-9]+ +Test +#[0-9]+: TEST:param/special\.case/"__osbtext"!1 \.+ +Passed +[0-9.]+ sec *Start +[0-9]+: TEST:param/special\.case/"__csb___text"!1 *[0-9]+/[0-9]+ +Test +#[0-9]+: TEST:param/special\.case/"__csb___text"!1 \.+ +Passed +[0-9.]+ sec + *Start +[0-9]+: TEST:param/special\.case/"S o m e "!1 + *[0-9]+/[0-9]+ +Test +#[0-9]+: TEST:param/special\.case/"S o m e "!1 \.+ +Passed +[0-9.]+ sec *Start +[0-9]+: TEST:ns\.param/special\.case/"semicolon;"!1 *[0-9]+/[0-9]+ +Test +#[0-9]+: TEST:ns\.param/special\.case/"semicolon;"!1 \.+ +Passed +[0-9.]+ sec *Start +[0-9]+: TEST:ns\.param/special\.case/"backslash\\"!1 @@ -63,6 +65,8 @@ Test project .* *[0-9]+/[0-9]+ +Test +#[0-9]+: TEST:ns\.param/special\.case/"__osbtext"!1 \.+ +Passed +[0-9.]+ sec *Start +[0-9]+: TEST:ns\.param/special\.case/"__csb___text"!1 *[0-9]+/[0-9]+ +Test +#[0-9]+: TEST:ns\.param/special\.case/"__csb___text"!1 \.+ +Passed +[0-9.]+ sec + *Start +[0-9]+: TEST:ns\.param/special\.case/"S o m e "!1 + *[0-9]+/[0-9]+ +Test +#[0-9]+: TEST:ns\.param/special\.case/"S o m e "!1 \.+ +Passed +[0-9.]+ sec 100% tests passed, 0 tests failed out of [0-9]+ diff --git a/Tests/RunCMake/GoogleTest/GoogleTest-test2-stdout.txt b/Tests/RunCMake/GoogleTest/GoogleTest-test2-stdout.txt index b0210c650c..796e20c4e8 100644 --- a/Tests/RunCMake/GoogleTest/GoogleTest-test2-stdout.txt +++ b/Tests/RunCMake/GoogleTest/GoogleTest-test2-stdout.txt @@ -49,6 +49,8 @@ Test project .* *[0-9]+/[0-9]+ +Test +#[0-9]+: TEST:param/special\.case/"__osbtext"!2 \.+ +Passed +[0-9.]+ sec *Start +[0-9]+: TEST:param/special\.case/"__csb___text"!2 *[0-9]+/[0-9]+ +Test +#[0-9]+: TEST:param/special\.case/"__csb___text"!2 \.+ +Passed +[0-9.]+ sec + *Start +[0-9]+: TEST:param/special\.case/"S o m e "!2 + *[0-9]+/[0-9]+ +Test +#[0-9]+: TEST:param/special\.case/"S o m e "!2 \.+ +Passed +[0-9.]+ sec *Start +[0-9]+: TEST:ns\.param/special\.case/"semicolon;"!2 *[0-9]+/[0-9]+ +Test +#[0-9]+: TEST:ns\.param/special\.case/"semicolon;"!2 \.+ +Passed +[0-9.]+ sec *Start +[0-9]+: TEST:ns\.param/special\.case/"backslash\\"!2 @@ -63,6 +65,8 @@ Test project .* *[0-9]+/[0-9]+ +Test +#[0-9]+: TEST:ns\.param/special\.case/"__osbtext"!2 \.+ +Passed +[0-9.]+ sec *Start +[0-9]+: TEST:ns\.param/special\.case/"__csb___text"!2 *[0-9]+/[0-9]+ +Test +#[0-9]+: TEST:ns\.param/special\.case/"__csb___text"!2 \.+ +Passed +[0-9.]+ sec + *Start +[0-9]+: TEST:ns\.param/special\.case/"S o m e "!2 + *[0-9]+/[0-9]+ +Test +#[0-9]+: TEST:ns\.param/special\.case/"S o m e "!2 \.+ +Passed +[0-9.]+ sec 100% tests passed, 0 tests failed out of [0-9]+ diff --git a/Tests/RunCMake/GoogleTest/fake_gtest.cpp b/Tests/RunCMake/GoogleTest/fake_gtest.cpp index aa6468ccd5..183e1062e8 100644 --- a/Tests/RunCMake/GoogleTest/fake_gtest.cpp +++ b/Tests/RunCMake/GoogleTest/fake_gtest.cpp @@ -61,6 +61,7 @@ int main(int argc, char** argv) std::cout << " case/4 # GetParam() = \"]]=]\"" << std::endl; std::cout << " case/5 # GetParam() = \"__osbtext\"" << std::endl; std::cout << " case/6 # GetParam() = \"__csb___text\"" << std::endl; + std::cout << " case/7 # GetParam() = \"S o m e \"" << std::endl; } } return 0; diff --git a/Tests/RunCMake/PrecompileHeaders/RunCMakeTest.cmake b/Tests/RunCMake/PrecompileHeaders/RunCMakeTest.cmake index ca5b52e87c..a7b3126fda 100644 --- a/Tests/RunCMake/PrecompileHeaders/RunCMakeTest.cmake +++ b/Tests/RunCMake/PrecompileHeaders/RunCMakeTest.cmake @@ -23,7 +23,8 @@ if(RunCMake_GENERATOR MATCHES "Make|Ninja") run_cmake(PchWarnInvalid) if(CMAKE_C_COMPILER_ID STREQUAL "Clang" AND - CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 11.0.0) + CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 11.0.0 AND + NOT CMAKE_C_SIMULATE_ID STREQUAL "MSVC") run_cmake(PchInstantiateTemplates) endif() endif() diff --git a/Tests/RunCMake/pseudo_llvm-rc.c b/Tests/RunCMake/pseudo_llvm-rc.c index 7acb2a3cfe..65f0a9e12a 100644 --- a/Tests/RunCMake/pseudo_llvm-rc.c +++ b/Tests/RunCMake/pseudo_llvm-rc.c @@ -1,3 +1,7 @@ +#ifndef _CRT_SECURE_NO_WARNINGS +# define _CRT_SECURE_NO_WARNINGS +#endif + #include <stdio.h> #include <string.h> diff --git a/Utilities/Release/win/x86/cache-i386.txt b/Utilities/Release/win/x86/cache-i386.txt index 54a45d8fc4..2dcd4dd3a3 100644 --- a/Utilities/Release/win/x86/cache-i386.txt +++ b/Utilities/Release/win/x86/cache-i386.txt @@ -29,9 +29,6 @@ QCOLLECTIONGENERATOR_EXECUTABLE:PATH=C:/qt-i386/bin/qhelpgenerator.exe # No bootstrap with MSVC tools. CMAKE_SKIP_BOOTSTRAP_TEST:STRING=TRUE -# No MFC in base image. -CTEST_RUN_MFC:BOOL=OFF - # No Fortran compiler. CMAKE_Fortran_COMPILER:FILEPATH=FALSE diff --git a/Utilities/Release/win/x86/cache-x86_64.txt b/Utilities/Release/win/x86/cache-x86_64.txt index 0b78c72b9c..3c5593e15b 100644 --- a/Utilities/Release/win/x86/cache-x86_64.txt +++ b/Utilities/Release/win/x86/cache-x86_64.txt @@ -29,9 +29,6 @@ QCOLLECTIONGENERATOR_EXECUTABLE:PATH=C:/qt-x86_64/bin/qhelpgenerator.exe # No bootstrap with MSVC tools. CMAKE_SKIP_BOOTSTRAP_TEST:STRING=TRUE -# No MFC in base image. -CTEST_RUN_MFC:BOOL=OFF - # No Fortran compiler. CMAKE_Fortran_COMPILER:FILEPATH=FALSE diff --git a/Utilities/Release/win/x86/test/test-ninja.bat b/Utilities/Release/win/x86/test/test-ninja.bat index b8347efc62..fb43589128 100755 --- a/Utilities/Release/win/x86/test/test-ninja.bat +++ b/Utilities/Release/win/x86/test/test-ninja.bat @@ -12,7 +12,6 @@ cd \cmake\src\cmake-ninja && ^ @echo CMake_TEST_IPO_WORKS_C:BOOL=ON @echo CMake_TEST_IPO_WORKS_CXX:BOOL=ON @echo CMake_TEST_NO_NETWORK:BOOL=ON - @echo CTEST_RUN_MFC:BOOL=OFF ) && ^ cmake ..\cmake -DCMake_TEST_HOST_CMAKE=1 -G "Ninja" && ^ ninja && ^ diff --git a/Utilities/Release/win/x86/test/test-nmake.bat b/Utilities/Release/win/x86/test/test-nmake.bat index 5008711ac4..9d7e447891 100755 --- a/Utilities/Release/win/x86/test/test-nmake.bat +++ b/Utilities/Release/win/x86/test/test-nmake.bat @@ -12,7 +12,6 @@ cd \cmake\src\cmake-nmake && ^ @echo CMake_TEST_IPO_WORKS_C:BOOL=ON @echo CMake_TEST_IPO_WORKS_CXX:BOOL=ON @echo CMake_TEST_NO_NETWORK:BOOL=ON - @echo CTEST_RUN_MFC:BOOL=OFF ) && ^ cmake ..\cmake -DCMake_TEST_HOST_CMAKE=1 -G "NMake Makefiles" && ^ nmake && ^ |