Commit Graph

59454 Commits

Author SHA1 Message Date
Brad King 17096aeba8 cmLocalGenerator: Factor out helper to compute MSVC_DEBUG_INFORMATION_FORMAT 2022-10-31 12:16:45 -04:00
Brad King c8f3ba7214 Merge topic 'file-download-log-with-hash' into release-3.25
d78671879b file(DOWNLOAD): Fix LOG with EXPECTED_HASH on download failure

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7848
2022-10-31 09:47:18 -04:00
Brad King 628d1c3396 Merge topic 'ArchLinux-lib-dir' into release-3.25
988b9928e4 Linux: Avoid finding libraries using lib64 on ArchLinux

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Felix Yan <felixonmars@archlinux.org>
Merge-request: !7849
2022-10-31 09:46:18 -04:00
Brad King bb171688c9 Merge topic 'vs-dotnetsdk-arm64' into release-3.25
9a0ca7df67 Tests: Fix RunCMake.VsDotnetSdk with VS >= 17.3 on ARM64

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7842
2022-10-31 09:45:12 -04:00
Brad King d69b77a9ca Merge topic 'ninja-showIncludes-encoding' into release-3.25
a0d4e3bf34 cmGeneratedFileStream: Drop unused WriteRaw method
2e5af30ce0 Ninja: Match showIncludes dependencies using console output code page
e1c1679148 cm_codecvt: Add support for the Windows console output code page
328c15189d cmGeneratedFileStream: Add support for a temporary alternate encoding

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7845
2022-10-31 09:44:11 -04:00
Brad King 290687c3b4 Merge topic 'xcode-obj-dir' into release-3.25
024e3d2bf6 Xcode: Put object files in a place that Xcode cleans

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7843
2022-10-31 09:42:28 -04:00
Letu Ren 988b9928e4 Linux: Avoid finding libraries using lib64 on ArchLinux
ArchLinux uses `/lib` for 64-bit libraries and there is no `/lib64`.
However, unlike Debian, 32-bit libraries are in `/lib32`.
2022-10-30 08:52:59 -04:00
Aurelien Regat-Barrel d78671879b file(DOWNLOAD): Fix LOG with EXPECTED_HASH on download failure
When `file(DOWNLOAD <url> EXPECTED_HASH <hash> LOG <logs>)` fails to
download the requested file, the hash check will also fail and make the
command exit without actually returning the curl logs as requested
by the `LOG` argument.  Report the log before checking the hash.

Issue: #24093
2022-10-30 08:42:19 -04:00
Brad King a0d4e3bf34 cmGeneratedFileStream: Drop unused WriteRaw method
It has been superseded by `WriteAltEncoding`.
2022-10-30 08:31:35 -04:00
Brad King 2e5af30ce0 Ninja: Match showIncludes dependencies using console output code page
Generalize the fix from commit 37a279f8d1 (Ninja: Write msvc_deps_prefix
as UTF-8 when console codepage is UTF-8, 2020-07-31, v3.19.0-rc1~349^2).
`cl /showIncludes` output is encoded using the console output code page,
so this is the byte sequence that Ninja must use to match its lines.

Fixes: #24068
2022-10-30 08:29:55 -04:00
Brad King e1c1679148 cm_codecvt: Add support for the Windows console output code page
This is distinct from the Windows ANSI code page.
2022-10-28 20:23:25 -04:00
Brad King 328c15189d cmGeneratedFileStream: Add support for a temporary alternate encoding
The Ninja generator needs to be able to write some file content in a
different encoding than the rest of the file.  Add a method to do this.
2022-10-28 20:23:25 -04:00
Brad King 024e3d2bf6 Xcode: Put object files in a place that Xcode cleans
Since commit dc5fc898f6 (Xcode: Set object file locations using
TARGET_TEMP_DIR, 2022-09-29, v3.25.0-rc1~64^2~1), `xcodebuild clean`
does not remove the object files in our explicit `TARGET_TEMP_DIR`
because it is not under the `SYMROOT`.  Put it there.

Fixes: #24096
2022-10-28 15:38:07 -04:00
Anthony Roberts 9a0ca7df67 Tests: Fix RunCMake.VsDotnetSdk with VS >= 17.3 on ARM64
VS 17.3 provides an arm64-native version of the tool, but the test was
looking for the x64 version.
2022-10-28 11:19:25 -04:00
Brad King 59ae254316 Merge topic 'FindGLUT-pkg-config' into release-3.25
919ab832e8 FindGLUT: Fix regression when pkg-config is not available

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7840
2022-10-28 10:00:03 -04:00
Brad King 4910efb178 Merge topic 'vs-dotnet-sdk-output-paths' into release-3.25
d2d1be0671 VS: Fix paths in multi-target SDK-style projects

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7836
2022-10-28 09:58:52 -04:00
Brad King 5d12374b51 Merge topic 'xcode-restore-install-path' into release-3.25
8d5631f0d0 Xcode: Revert "Don't set INSTALL_PATH unless target is SHARED_LIBRARY"

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7839
2022-10-28 09:52:36 -04:00
Craig Scott 37156dc47a Merge topic 'doc-config-postfix' into release-3.25
3fc2dcd801 Help: Minor formatting and cross-ref cleanup for <CONFIG>_POSTFIX

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7841
2022-10-28 07:25:57 -04:00
Craig Scott 3fc2dcd801 Help: Minor formatting and cross-ref cleanup for <CONFIG>_POSTFIX 2022-10-28 09:26:28 +11:00
Brad King 919ab832e8 FindGLUT: Fix regression when pkg-config is not available
In commit a2fc4b6257 (FindGLUT: Drop the now-unnecessary exclusion of
pkg-config for multiconfig, 2022-10-13, v3.25.0-rc2~16^2) we
accidentally removed the entire condition around the `pkg-config` code
path instead of just the multi-config part.

Fixes: #24095
2022-10-27 12:39:06 -04:00
Brad King 8d5631f0d0 Xcode: Revert "Don't set INSTALL_PATH unless target is SHARED_LIBRARY"
The change in commit 61acaa12af (xcode: Don't set INSTALL_PATH unless
target is SHARED_LIBRARY, 2022-07-14, v3.25.0-rc1~291^2) breaks some
existing use cases.  Revert it pending further investigation.

Fixes: #24087
Issue: #15183
2022-10-27 10:28:39 -04:00
Sebastian Maisch d2d1be0671 VS: Fix paths in multi-target SDK-style projects
Set the `AppendTargetFrameworkToOutputPath` property to `false` only for
single target SDK-style projects.  This prevents outputs from being
overwritten during the build.  This revises commit 7671d71299 (VS: Fix
target output paths in SDK-style projects, 2022-09-23, v3.25.0-rc1~82^2).

Fixes: #24094
Issue: #23989
2022-10-27 09:58:09 -04:00
Brad King 33d610a076 Merge topic 'cmake-presets-workflow-arguments' into release-3.25
7ecbe324b0 cmake --workflow: add --fresh option
7d9aa0f00c cmake::Workflow: Refactor to use enum class argument
322193afcd cmake --workflow: print usage and exit on unrecognized argument
70aef29427 cmake --workflow: print usage message

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7825
2022-10-27 09:43:38 -04:00
Brad King 7d181917de Merge topic 'xcode-swift-defs' into release-3.25
c0dd3dd2c1 Xcode: Evaluate Swift compile definitions separately

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7826
2022-10-27 09:42:02 -04:00
Brad King 4e80c6eff5 Merge topic 'tutorial_my_math_consistency' into release-3.25
277fbb3035 Tutorial: Restore USE_MYMATH in place of MY_MATH

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7829
2022-10-27 09:40:30 -04:00
Brad King b885a07ba2 Merge topic 'vs-nostdlib-flag-table' into release-3.25
9c33824474 VS: Fix MSBuild property for nostdlib flag

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7823
2022-10-27 09:39:09 -04:00
Brad King c080b80e9a Merge branch 'release-3.24' into release-3.25 2022-10-27 09:30:04 -04:00
Brad King f6034c5f6f Merge topic 'cpack-trace-argument' into release-3.25
b5ebaa0d9c CPack: Require no argument for --trace and --trace-expand

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7824
2022-10-27 09:29:12 -04:00
Brad King fdabb69e2e Merge topic 'vswhere-support-x86' into release-3.25
6eee8c9000 VS: Fix crash finding vswhere on 32-bit Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7832
2022-10-27 09:28:07 -04:00
Brad King 74057c72d6 Merge topic 'ninja-intl-paths' into release-3.25
a12050666c Tests: Add case for ninja with non-ascii chars
02a04dd9c7 Ninja: Restore support for non-ascii paths on Windows with ninja<=1.10

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7833
2022-10-27 09:26:34 -04:00
Brad King ae917dc682 Merge branch 'cpack-trace-argument' into release-3.24
Merge-request: !7824
2022-10-27 09:25:24 -04:00
Brad King 77e4042204 Merge branch 'vswhere-support-x86' into release-3.24
Merge-request: !7832
2022-10-27 09:25:08 -04:00
Brad King 93a54db04e Merge branch 'release-3.23' into release-3.24 2022-10-27 09:25:02 -04:00
Brad King e677cc421d Merge branch 'ninja-intl-paths' into release-3.24
Merge-request: !7833
2022-10-27 09:24:46 -04:00
Brad King cd5826ffc9 Merge branch 'ninja-intl-paths' into release-3.23
Merge-request: !7833
2022-10-27 09:24:29 -04:00
Brad King a12050666c Tests: Add case for ninja with non-ascii chars
Issue: #24089
2022-10-26 15:25:45 -04:00
Brad King 02a04dd9c7 Ninja: Restore support for non-ascii paths on Windows with ninja<=1.10
Revert commit bbdb000c55 (GlobalNinjaGenerator: enlarge file stream
buffer, 2022-01-25, v3.23.0-rc1~68^2).  Somehow `rdbuf()->pubsetbuf()`
is resetting our imbued locale and `cm_codecvt` that handles encoding.

Fixes: #24089
2022-10-26 15:24:43 -04:00
Kyle Edwards 7ecbe324b0 cmake --workflow: add --fresh option
Fixes: #24073
2022-10-26 12:01:25 -04:00
Kyle Edwards 7d9aa0f00c cmake::Workflow: Refactor to use enum class argument 2022-10-26 12:01:01 -04:00
Kyle Edwards 322193afcd cmake --workflow: print usage and exit on unrecognized argument
Issue: #24073
2022-10-26 12:00:57 -04:00
Brad King 6eee8c9000 VS: Fix crash finding vswhere on 32-bit Windows
Since commit f85913fa08 (VS: Add support for enumerating VS instances
with vswhere, 2022-04-11, v3.24.0-rc1~282^2), if the COM lookup does not
report any VS instances, we fall back to finding vswhere.  However, the
`getenv` call returns nullptr if the `ProgramFiles(x86)` environment
variable is not set.  Update the logic to tolerate not-set environment
variables.  Also check the plain `ProgramFiles` environment variable.

Fixes: #24090
2022-10-26 11:12:46 -04:00
Markus Ferrell 277fbb3035 Tutorial: Restore USE_MYMATH in place of MY_MATH
In commit 80f5d28813 (Tutorial: Update step 2 style, 2022-07-25,
v3.25.0-rc1~226^2) we replaced some uses of `USE_MYMATH` with `MY_MATH`.
Restore the former name for consistency with the rest of the tutorial.
2022-10-25 16:31:38 -04:00
Brad King d0451d1a67 Merge branch 'release-3.24' into release-3.25 2022-10-25 14:27:02 -04:00
Brad King 883798edc4 Merge topic 'try_compile-CMP0128' into release-3.25
90287792b6 Tests: Avoid running C++11 test on GNU < 4.7

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7821
2022-10-25 14:26:17 -04:00
Brad King c0dd3dd2c1 Xcode: Evaluate Swift compile definitions separately
Xcode has a separate setting for Swift compile definitions, so we can
compute a dedicated value for it.  Therefore we can:

* Support the COMPILE_LANGUAGE generator expression for Swift-specific
  filters.

* Avoid passing the `=value` part of definitions, which Swift does
  not support.

This revises commit 5cb625eb2f (Xcode: Pass compile definitions to
Swift, 2022-06-19, v3.25.0-rc1~493^2) and reverts commit 12c6fec6b4
(Xcode: Drop CMAKE_INTDIR= definition in Swift targets, 2022-09-30,
v3.25.0-rc1~60^2~2), as the latter is no longer needed.

Fixes: #24086
2022-10-25 14:09:28 -04:00
Mis, Piotr 9c33824474 VS: Fix MSBuild property for nostdlib flag
The C# flag table added by commit 9b06c22648 (VS: Add flag tables for
C#, 2016-12-01, v3.8.0-rc1~230^2) and preserved by commit 6e947179a8
(Add json flag tables for C#, 2018-11-21, v3.14.0-rc1~282^2~27) was
written by hand.  Fix the entry name for the `NoStdLib` property.

Fixes: #24077
2022-10-25 11:40:13 -04:00
Kyle Edwards 70aef29427 cmake --workflow: print usage message 2022-10-25 10:52:07 -04:00
Brad King 19f49a7514 Merge topic 'doc-presets' into release-3.25
8a413eb8d0 Help: State default preset strategy for architecture and toolset
8de977fa70 Help: Use array consistently in presets manual
e11773e8cf Help: Fix trivial typos related to presets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7817
2022-10-25 10:37:23 -04:00
Brad King 32386d7c01 Merge topic 'nsis-licence-bom' into release-3.25
b276d9d8f1 CPack/NSIS: Document BOM mark for UTF-8 encoded LICENSE file

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7820
2022-10-25 10:36:29 -04:00
Brad King 85191f65d2 Merge branch 'release-3.23' into release-3.24 2022-10-25 10:35:42 -04:00