Commit Graph

59657 Commits

Author SHA1 Message Date
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
Kitware Robot fd57ced75a CMake Nightly Date Stamp 2022-10-26 00:01:19 -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 8e64edf1b5 Merge branch 'release-3.25' 2022-10-25 14:27:12 -04:00
Brad King cdd0bc237e Merge branch 'release-3.24' 2022-10-25 14:27:10 -04:00
Brad King 19262e23dd Merge branch 'release-3.23' 2022-10-25 14:27:09 -04:00
Brad King d0451d1a67 Merge branch 'release-3.24' into release-3.25 2022-10-25 14:27:02 -04:00
Brad King 2f673feb71 Merge branch 'release-3.25' 2022-10-25 14:26:19 -04:00
Brad King eab9ddb744 Merge topic 'try_compile-CMP0128'
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:18 -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
Markus Ferrell 6e58a01f4e Tutorial: Update step 6 style 2022-10-25 11:54:05 -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 5142effa37 Merge branch 'release-3.25' 2022-10-25 10:37:24 -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 979a9eb89f Merge topic 'doc-presets'
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 ae8561f690 Merge branch 'release-3.25' 2022-10-25 10:36:30 -04:00
Brad King ed8b07fd5c Merge topic 'nsis-licence-bom'
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:30 -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
Brad King 6f2e8bace1 Merge branch 'try_compile-CMP0128' into release-3.24
Merge-request: !7821
2022-10-25 10:35:30 -04:00
Brad King f4681111ca Merge branch 'release-3.25' 2022-10-25 10:34:20 -04:00
Brad King 2b8569bf13 Merge branch 'release-3.24' 2022-10-25 10:34:19 -04:00
Brad King 07755a160b Merge branch 'release-3.24' into release-3.25 2022-10-25 10:34:14 -04:00
Brad King 0d753774fa Merge branch 'release-3.25' 2022-10-25 10:33:20 -04:00
Brad King 1621c707e7 Merge topic 'flang-windows'
166bc00399 LLVMFlang: Add a required line to define linking rules on Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7818
2022-10-25 10:33:20 -04:00
Brad King 0a34bde140 Merge topic 'flang-windows' into release-3.25
166bc00399 LLVMFlang: Add a required line to define linking rules on Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7818
2022-10-25 10:33:19 -04:00
Brad King 765d8eda88 Merge topic 'CheckSourceCompiles-Swift'
3fc971c38b CheckSourceCompiles: For Swift executable, name source 'main.swift'
2345139ab5 CheckSourceCompiles: Add support for Swift
4451a1f54f Tests: Factor out a CMake_TEST_Swift variable for Swift test conditions
f78ad6223a Tests: Provide Apple inspection results to CMakeOnly and RunCMake tests

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Saleem Abdulrasool <compnerd@compnerd.org>
Merge-request: !7783
2022-10-25 10:29:36 -04:00
Kyle Edwards b5ebaa0d9c CPack: Require no argument for --trace and --trace-expand
This was accidentally broken by commit 87c762d435 (CPack: Use
cmCommandLineArgument instead of cmsys::CommandLineArguments,
2022-04-18, v3.24.0-rc1~258^2).

Fixes: #24085
2022-10-25 10:11:20 -04:00
Kitware Robot 30e0358d84 CMake Nightly Date Stamp 2022-10-25 00:01:11 -04:00
Henry Schreiner d78bfa1ecc Utilities/Sphinx: support cmakedomain running in parallel
Fixes: #24076

Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
2022-10-24 18:03:11 -04:00
Mojca Miklavec b276d9d8f1 CPack/NSIS: Document BOM mark for UTF-8 encoded LICENSE file
Previously this requirement was only mentioned in the 3.20 release
notes.
2022-10-24 12:58:10 -04:00
Brad King f58d714f5e Merge branch 'flang-windows' into release-3.24
Merge-request: !7818
2022-10-24 12:54:01 -04:00
مهدي شينون (Mehdi Chinoune) 166bc00399 LLVMFlang: Add a required line to define linking rules on Windows
This was missed in commit d34e5a98b8 (LLVMFlang: Add support for
Windows, 2022-09-18, v3.25.0-rc1~102^2).
2022-10-24 12:53:07 -04:00
Evan Wilde 3fc971c38b CheckSourceCompiles: For Swift executable, name source 'main.swift'
Xcode uses its own heuristics to determine whether or not to accept
top-level code in a source file while Ninja uses the swift driver
heuristics.

With the Swift driver, if the module contains a single file, that file
will be parsed as a top-level code context. With Xcode, the single file
will only be parsed as top-level code if the name of that file is
'main.swift'.

To ensure more consistent behavior between the two generators, if we're
building Swift and the try-compile target type is executable or
undefined, we name the file `main.swift` to ensure that both will handle
the single file as top-level code.
2022-10-24 12:39:21 -04:00
Evan Wilde 2345139ab5 CheckSourceCompiles: Add support for Swift
Plumb through swift `check_source_compiles` support.  Add tests to check
that valid swift sources compile and invalid sources don't.
2022-10-24 12:39:21 -04:00
Brad King 4451a1f54f Tests: Factor out a CMake_TEST_Swift variable for Swift test conditions 2022-10-24 12:37:50 -04:00
Brad King c2ec949a05 Merge topic 'set_environment_generator'
3c3bce133d cmake: Honor CMAKE_GENERATOR env var in --help output

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: Alex Turbov <i.zaufi@gmail.com>
Merge-request: !7808
2022-10-24 12:35:33 -04:00
Brad King a693ca6e4a Merge branch 'release-3.25' 2022-10-24 12:33:32 -04:00
Brad King 68950c529a Merge topic 'cmake-presets-list-workflow-type'
75cfbef780 cmake: Support --list-presets=workflow

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Tested-by: Craig Scott <craig.scott@crascit.com>
Merge-request: !7816
2022-10-24 12:33:32 -04:00
Brad King c3f04fe44d Merge topic 'cmake-presets-list-workflow-type' into release-3.25
75cfbef780 cmake: Support --list-presets=workflow

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Tested-by: Craig Scott <craig.scott@crascit.com>
Merge-request: !7816
2022-10-24 12:33:31 -04:00
Brad King 25cc0e3715 Merge branch 'release-3.25' 2022-10-24 12:31:16 -04:00
Brad King 5bbca910e5 Merge topic 'doc-ctest'
36d76ed07c Help: cmake(1), ctest(1), versionadded for key flags

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7815
2022-10-24 12:31:16 -04:00
Brad King 29f66bd1cf Merge topic 'doc-ctest' into release-3.25
36d76ed07c Help: cmake(1), ctest(1), versionadded for key flags

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7815
2022-10-24 12:31:15 -04:00
Brad King 4f2bb02d9a Merge branch 'try_compile-CMP0128' into release-3.23
Merge-request: !7821
2022-10-24 12:30:24 -04:00