Commit Graph

56553 Commits

Author SHA1 Message Date
Brad King
38e1ec008d Merge topic 'backport-update-libarchive' into release-3.23
e2fe1d17e6 libarchive: Update build within CMake after changes in 3.5.3
ac5e524763 libarchive: include archive_platform.h first in blake2s sources
b93d8b1714 Merge branch 'upstream-LibArchive' into update-libarchive
9fd16c5b5b LibArchive 2022-02-08 (673c1eae)
de38c89252 libarchive: Update script to get 3.5.3

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7294
2022-05-24 13:36:15 -04:00
Brad King
e2fe1d17e6 libarchive: Update build within CMake after changes in 3.5.3 2022-05-24 12:35:53 -04:00
Brad King
ac5e524763 libarchive: include archive_platform.h first in blake2s sources
This is the libarchive convention in all other `.c` sources.  It ensures
that the configured `_WIN32_WINNT` value is defined before including any
system headers.
2022-05-24 12:35:26 -04:00
Brad King
b93d8b1714 Merge branch 'upstream-LibArchive' into update-libarchive
* upstream-LibArchive:
  LibArchive 2022-02-08 (673c1eae)
2022-05-24 12:20:20 -04:00
LibArchive Upstream
9fd16c5b5b LibArchive 2022-02-08 (673c1eae)
Code extracted from:

    https://github.com/libarchive/libarchive.git

at commit 673c1eae896c837081a627807b9d5e990684dbf7 (v3.5.3).
2022-05-24 12:18:12 -04:00
Brad King
de38c89252 libarchive: Update script to get 3.5.3 2022-05-24 12:17:57 -04:00
Brad King
95ec7b4c1b Merge branch 'release-3.22' into release-3.23 2022-05-20 09:04:47 -04:00
Brad King
f748ea2186 Merge topic 'vs2022-only' into release-3.23
235b5fb05b file(GET_RUNTIME_DEPENDENCIES): Support VS 2022 without VS 2019

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7282
2022-05-20 09:03:59 -04:00
Brad King
a57652b0d6 Merge branch 'release-3.21' into release-3.22 2022-05-19 17:55:58 -04:00
Brad King
97ec556309 Merge branch 'vs2022-only' into release-3.22
Merge-request: !7282
2022-05-19 17:55:41 -04:00
Brad King
f334235c19 Merge branch 'vs2022-only' into release-3.21
Merge-request: !7282
2022-05-19 17:55:04 -04:00
Brad King
235b5fb05b file(GET_RUNTIME_DEPENDENCIES): Support VS 2022 without VS 2019
Find MSVC tools in VS 2022 installation.
2022-05-19 17:50:06 -04:00
Brad King
2ca51e6f74 Merge topic 'cpack-nuget-components-on-windows' into release-3.23
066ff258db CPack/NuGet: Restore component packaging on Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7280
2022-05-19 09:39:58 -04:00
Alex Turbov
066ff258db CPack/NuGet: Restore component packaging on Windows
The change from `\` to `/` in commit dade75509f (CPack/NuGet: Fix nuspec
file generation for UNIX-style OS, 2020-12-21, v3.20.0-rc1~243^2) does
not work on Windows.  Use `cmake_path` to form a path to an image
directory with preinstalled files.

Fixes: #22489
2022-05-18 11:12:02 -04:00
Brad King
640268c19b Merge topic 'ccmake-fix-infinite-loop-search' into release-3.23
432a8ab739 ccmake: Fix infinite loop during invalid search

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7269
2022-05-18 08:43:30 -04:00
Martin Duffy
432a8ab739 ccmake: Fix infinite loop during invalid search
Fix issue introduced in commit 2defe9ff95 (ccmake: Fix crash when
deleting all cache entries, 2022-05-12).

Leaving the Empty Cache widget always on the Entry list had unforeseen
consequences, including that it caused an infinite loop when searching
for a string that did not match any variables.
2022-05-18 08:04:10 -04:00
Brad King
44ccfdbe0b Merge topic 'clang-imsvc' into release-3.23
23a52561c7 Clang: Use -imsvc flag without space to support Clang tools

Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Raul Tambre <raul@tambre.ee>
Acked-by: hihig2001 <hihig@bluehole.net>
Merge-request: !7274
2022-05-18 08:02:09 -04:00
Brad King
23a52561c7 Clang: Use -imsvc flag without space to support Clang tools
Since commit bb61c2d024 (Clang: use -imsvc for system include dirs when
running on Windows, 2020-09-16, v3.19.0-rc1~162^2) we use the `-imsvc`
flag followed by the include directory as a separate argument.  Some
versions of `clang-tidy` do not support the flag unless the include
directory is attached to it, so use that form instead.

A similar fix was made by commit 3a8b6653dc (MSVC: Use -external:I flag
without space to support Clang tools, 2022-01-11, v3.22.2~8^2).

Fixes: #23517
2022-05-17 11:09:15 -04:00
Brad King
5b3096198a Merge branch 'release-3.22' into release-3.23 2022-05-17 08:48:45 -04:00
Brad King
e05a476700 Merge topic 'FortranCInterface-gcc12' into release-3.23
cb616d43d6 FortranCInterface: Fix failure with gfortran 12 and Clang

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7266
2022-05-17 08:47:30 -04:00
Brad King
4a9e2a1572 Merge branch 'FortranCInterface-gcc12' into release-3.22
Merge-request: !7266
2022-05-16 11:19:29 -04:00
Brad King
cb616d43d6 FortranCInterface: Fix failure with gfortran 12 and Clang
The C flags added by commit 6a0ce19ce1 (FortranCInterface: Fix
compatibility with GCC gfortran 12 LTO, 2022-01-19, v3.22.2~5^2)
should only be added for the GNU C compiler.

Fixes: #23500
Issue: #23123
2022-05-16 11:18:00 -04:00
Brad King
29d23ec2cf Merge topic 'cuda-arch-off-vs' into release-3.23
9fe41ecf36 VS: Fix CUDA CodeGeneration field for CMAKE_CUDA_ARCHITECTURES=OFF

Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Raul Tambre <raul@tambre.ee>
Merge-request: !7261
2022-05-16 09:24:52 -04:00
Brad King
9fe41ecf36 VS: Fix CUDA CodeGeneration field for CMAKE_CUDA_ARCHITECTURES=OFF
If we add no CUDA architecture flags, write an empty `CodeGeneration`
field to tell the CUDA Toolkit's VS integration not to add its default
flags.  We already use this approach for `CMAKE_CUDA_ARCHITECTURES=all`
so that the `-arch=all` flag can be added via `AdditionalOptions`.

Fixes: #23490
2022-05-13 11:34:51 -04:00
Brad King
c1d980f722 Merge topic 'ccmake-delete-cache' into release-3.23
2defe9ff95 ccmake: Fix crash when deleting all cache entries
e1c85e29f4 ccmake: Move Initialization of Fields Inline

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7257
2022-05-13 08:45:50 -04:00
Brad King
f8a148f68c Merge branch 'release-3.22' into release-3.23 2022-05-13 08:43:22 -04:00
Brad King
165208c784 Merge topic 'FindPkgConfig-LIBRARY_PATH' into release-3.23
11c8da94d4 FindPkgConfig: Fix preservation of ENV{PKG_CONFIG_ALLOW_SYSTEM_LIBS}

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7258
2022-05-13 08:42:48 -04:00
Brad King
a0a1166935 Merge topic 'FindPython-3.12' into release-3.23
ca2877c039 FindPython: add support for Python 3.12

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7255
2022-05-13 08:41:55 -04:00
Brad King
384c7521c4 Merge topic 'ci-msvc-19.32' into release-3.23
cc93d2af08 gitlab-ci: Update Windows builds to MSVC 19.32 toolset

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7259
2022-05-13 08:40:45 -04:00
Brad King
cc93d2af08 gitlab-ci: Update Windows builds to MSVC 19.32 toolset 2022-05-12 17:47:44 -04:00
Martin Duffy
2defe9ff95 ccmake: Fix crash when deleting all cache entries
Prevents crash when deleting all cache entries.
Additionally, if advanced entries are hidden, no longer show the first advanced
entry when deleting all visible entries.

Fixes: #23499
2022-05-12 16:43:15 -04:00
Martin Duffy
e1c85e29f4 ccmake: Move Initialization of Fields Inline
Move initialization of simple fields in cmCursesMainForm inline.
2022-05-12 16:40:58 -04:00
Brad King
d478dda0eb Merge branch 'FindPkgConfig-LIBRARY_PATH' into release-3.22
Merge-request: !7258
2022-05-12 13:34:21 -04:00
Brad King
11c8da94d4 FindPkgConfig: Fix preservation of ENV{PKG_CONFIG_ALLOW_SYSTEM_LIBS}
Fix the ENV save/restore added by commit 36979f5b43 (FindPkgConfig:
Tolerate PKG_CONFIG_SYSTEM_LIBRARY_PATH in environment, 2021-07-13,
v3.22.0-rc1~407^2) to unset the variable if it was originally not set.

While at it, clarify the value to which we temporarily set it. The
`pkg-config` and `pkgconf` tools only check that the variable is set,
and do not care about the value.  Set it to a more true-looking value.

Issue: #22148
2022-05-12 13:18:24 -04:00
Michael Hirsch
ca2877c039 FindPython: add support for Python 3.12 2022-05-12 10:55:11 -04:00
Brad King
2019bf5092 Merge topic 'doc-package-compatibility-mode' into release-3.23
a82163839a CMakePackageConfigHelpers: Fix note about version files supporting ranges

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7254
2022-05-12 09:28:15 -04:00
friendlyanon
a82163839a CMakePackageConfigHelpers: Fix note about version files supporting ranges
In commit 55c3b6a77e (CMakePackageConfigHelpers: Relax restrictions on
version range, 2019-05-30, v3.20.0-rc1~295^2~1) the documentation for
write_basic_package_version_file documented the support of version
ranges by the generated version files, however the note wrongly
specifies a COMPATIBILITY_MODE argument, instead of COMPATIBILITY.
2022-05-11 14:00:38 -04:00
Brad King
cc207014cf Merge topic 'Java-version-handling' into release-3.23
93e18a4eb6 FindJava, FindJNI: ensure correct handling of versions on Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7241
2022-05-06 08:57:24 -04:00
Marc Chevrier
93e18a4eb6 FindJava, FindJNI: ensure correct handling of versions on Windows
* versions are sorted in correct order
* EXACT keyword is taken into account

Fixes: #23479
2022-05-05 11:14:52 +02:00
Brad King
6ce2e0b5f9 Merge topic 'FindPython-fix-typo-error' into release-3.23
fff8d5b212 FindPython: fix typo error

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7233
2022-05-04 11:07:09 -04:00
Brad King
28957f7f25 Merge topic 'avoid-remove-empty-path' into release-3.23
71ded12a75 cmGeneratedFileStream: Do not remove empty path

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7223
2022-05-03 11:25:08 -04:00
Brad King
4a215d292f Merge topic 'restore-CPACK_PACKAGEMAKER_CHOICES' into release-3.23
d099136add productbuild: Restore CPACK_PACKAGEMAKER_CHOICES variable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7220
2022-05-03 11:24:10 -04:00
Marc Chevrier
fff8d5b212 FindPython: fix typo error
Fixes: #23476
2022-05-03 10:46:13 +02:00
Brad King
71ded12a75 cmGeneratedFileStream: Do not remove empty path
If `Close()` is called when a file was never opened, we have no
temporary file path.  Do not try to remove it.  Some implementations of
`unlink()` crash on an empty path (though the documented behavior is to
fail with `ENOENT`).

Fixes: #23414
2022-04-29 11:56:59 -04:00
Craig Scott
d099136add productbuild: Restore CPACK_PACKAGEMAKER_CHOICES variable
In 2a8df7e7db (productbuild: Don't write rootVolumeOnly attribute if
writing domains, 2022-03-21), the variable holding the main contents
of the distribution.dist XML file was renamed from
CPACK_PACKAGEMAKER_CHOICES to CPACK_APPLE_PKG_INSTALLER_CONTENT.
This reflected the fact that the PackageMaker generator is deprecated.
The new variable also includes more details than the old one held.
Some projects were relying on the old variable name, so we need to still
set that to the same contents as it would have previously provided.

Neither of these variables were previously documented, but the older
variable was mentioned in enough semi-official places that it essentially
became semi-supported. Document both variables and highlight that the
older one is deprecated.

Fixes: #23467
2022-04-30 00:28:05 +10:00
Brad King
a8c8842101 Merge topic 'doc-cmake.org-tutorial-archive' into release-3.23
4cb616fed6 Tutorial: Provide a source archive when published on cmake.org
37fb70591e Utilities/Sphinx: Add variables listing pre-sphinx commands
eb7d913a21 Utilities/Sphinx: Clarify names of variables listing post-sphinx commands

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7215
2022-04-29 09:26:16 -04:00
Brad King
4cb616fed6 Tutorial: Provide a source archive when published on cmake.org
Provide readers following the tutorial on `cmake.org` a direct link to
download the tutorial's source examples.  Previously readers had to
fetch the CMake source tree separately and look for the tutorial source
examples inside it.

Fixes: #22475
2022-04-28 13:36:20 -04:00
Brad King
37fb70591e Utilities/Sphinx: Add variables listing pre-sphinx commands 2022-04-27 15:22:31 -04:00
Brad King
eb7d913a21 Utilities/Sphinx: Clarify names of variables listing post-sphinx commands 2022-04-27 15:22:31 -04:00
Brad King
74c4762a38 Merge topic 'FindBoost-1.79' into release-3.23
f90fb73651 FindBoost: Add support for Boost 1.79

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7205
2022-04-27 08:43:48 -04:00