| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Refactoring in commit bff468c988 (cmFileCommand: Use cm::optional for
keyword argument presence, 2022-06-30, v3.25.0-rc1~512^2) accidentally
broke the check that the input argument is either `INPUT` or `CONTENT`.
The check is supposed to fail when arguments are passed in the wrong
order. For example:
file(GENERATE OUTPUT ...
TARGET <target>
CONTENT <content>)
Prior to this fix, the input method would be CONTENT, but because the
first parsed keyword is not `CONTENT`, `inputIsContent` would be false.
The first parsed keyword isn't INPUT either, so we would not continue
into the error condition. CMake would then try to handle this as an
input file, when there isn't one, resulting in uninitialized memory
usage and segfaults or corruption later on.
Fixes: #25169
|
|
|
|
|
|
|
|
|
|
|
| |
Since commit df58dbb0e9 (VS: Add CMake input files to ZERO_CHECK,
2023-03-19, v3.27.0-rc1~157^2), projects that specify the same file both
as input to `configure_file` and as the `MAIN_DEPENDENCY` of a custom
command fail to configure. Revert the change pending further
investigation. Add a test case demonstrating the problem.
Issue: #24557
Fixes: #25149
|
|
|
|
| |
Fixes: #25114
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| | |
c172eecea6 cmTarget: Restore Fortran_PREPROCESS property initialization
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8654
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Fix a typo from commit e522f8ca06 (cmTarget: factor out properties
initialized for target which compile, 2023-02-01, v3.27.0-rc1~577^2~13),
that broke this property.
Also update the test suite to use this upgrade as some level of
coverage.
Fixes: #25123
|
|\ \
| |/
|/|
| |
| |
| |
| |
| | |
b7c871f745 ctest: Update ctest_submit for CDash behavior change
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8648
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
open.cdash.org was recently upgraded in preparation for the release of
CDash v3.2.0. This upgrade brought a change in behavior where CDash now
responds with HTTP 400 (bad request) rather than HTTP 200 (OK) for MD5
checksum mismatches during submission time.
This commit removes our usage of CURLOPT_FAILONERROR in
cmCTestSubmitHandler.cxx This was necessary to pass along the contents
of the request body ("md5 mismatch") in cases where the web server
(CDash) responds with an error status (400).
Fixes: #25121
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| | |
Fixes: #25120
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In commit b6a5382217 (Ninja: depend on language module information files
directly, 2023-02-10), introduced via !8197, language-specific module
information files (`CMakeFiles/<target>.dir/<lang>Modules.json`) files
were added as real dependencies to the dyndep collation steps.
Previously, the behavior was to inform the collator of all possible
targets and search for the files manually ignoring those which did not
exist with ordering enforced by depending on the linker output of all
dependent targets. This behavior could lead to stale information being
used (e.g., if a target stops providing any targets) and also did not
reliably build everything needed on rebuilds. Afterwards, the internal
computation changed the dependency from all possible targets to an exact
set of "these targets might have modules" query, however one that did
not include `OBJECT` libraries since do not have `LinkEntry` items
internally (their objects are instead treated as source files).
As a stopgap measure, track `OBJECT` libraries in a separate list and
query them explicitly when gathering targets which may have interesting
information. Future work can add `LinkEntry` items to represent these
targets once all `LinkEntry` consumers have been audited to make sure
they are not surprised by any `OBJECT` library entries.
Fixes: #25112
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Inno Setup implicitly creates three installation types if none is
specified in the script. This causes some component features (e.g.
`REQUIRED`) to lose their functionality. Teach the generator to always
specify a "custom" installation type when using components.
Fixes: #25083
|
| | |
|
| |
| |
| |
| | |
Fixes: #25063
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
e02cf3f190 Debugger: Correctly handle clients without supportsVariableType
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: Garrett Campbell <gcampbell@microsoft.com>
Merge-request: !8620
|
| | |
| | |
| | |
| | | |
Fixes: #25057
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
861dd60ecf Genex: Restore REMOVE_DUPLICATES preservation of empty elements
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8623
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Refactoring in commit 72d116ee68 (GenEx: list oriented genexes use
cmList class, 2023-03-29, v3.27.0-rc1~205^2) accidentally caused
empty elements to be dropped by the `REMOVE_DUPLICATES` genex.
Fix it and add a test case.
Fixes: #25080
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously if an AUTOGEN process like moc exited with a non-zero exit
code, cmWorkerPool would not populate the result's ErrorMessage
because it mistakenly thought that if the ExitCode / TermSignal had a
non-zero value, the ErrorMessage must have already been set.
This was a wrong assumption.
Instead, check if ErrorMessage is empty, and if it is, set it to
whatever the exit code or term signal number is.
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
677b28dc7b Ninja: include module mapper flags in `compile_commands.json`
Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8611
|
| | |
| | |
| | |
| | | |
Fixes: #24618
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Since commit 0b552eb877 (MSVC: Embed manifests directly for
non-incremental vs_link_exe links, 2023-02-20, v3.27.0-rc1~438^2) we
tell the MSVC `link` tool to embed manifests directly rather than
running `mt` ourselves. However, `link` expects `rc` to be in the PATH
when embedding manifests. Although that is normally true, some users
prepare minimal environments and explicitly specify include and link
directories for the Windows SDK. In such cases, `rc` is not in the PATH
and is explicitly specified in `CMAKE_RC_COMPILER`. Restore support for
such cases by explicitly adding the RC location to the end of the PATH.
Fixes: #25047
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
764258771a Debugger: Fix threads request segfault after thread exited event
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8604
|
| | |
| | |
| | |
| | | |
Fixes: #25041
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| | |
When multiple source files in a single target have the same name, we
already set `ObjectFileName` explicitly to avoid a `.obj` collision. For
C++ module sources, set `Module{Output,Dependencies}File` to avoid
`.ifc` and `.module.json` collisions.
Fixes: #25038
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
a4d532e998 VS: Restore Windows SDK selection with platform in generator name
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8583
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Refactoring in commit e259063b0a (VS: Defer Windows SDK selection until
CMAKE_GENERATOR_PLATFORM is known, 2023-03-31, v3.27.0-rc1~206^2~5)
accidentally dropped the Windows SDK selection code path for VS
generators named with the old-style platform suffix.
Fixes: #25007
|
|/ /
| |
| |
| |
| | |
Enable the `AllProjectBMIsArePublic` option for shared libraries in the
VS project files when building with C++20 modules support.
|
| | |
|
| |
| |
| |
| | |
Fixes: #25002
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
1df3287bf6 add_test: Restore support for empty test arguments
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8551
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This was regressed by refactoring in commit e08ba229ee (CMake code rely
on cmList class for CMake lists management (part. 1), 2023-04-14,
v3.27.0-rc1~174^2). Fix it and add a test case.
Fixes: #24986
|
|\ \ \
| |/ /
|/| |
| | |
| | |
| | |
| | | |
8195aa3026 Makefiles: quote `$(COLOR)` expansions
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8548
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This handles the case where `COLOR` is set to some ANSI-like color
sequence in the ambient environment. These sequences tend to include `;`
which terminates the command and tries to use the next component
(typically an integer, possibly with a trailing `m`) with errors like:
/bin/sh: line 1: 2: command not found
/bin/sh: line 1: 255: command not found
/bin/sh: line 1: 221: command not found
/bin/sh: line 1: 255m: command not found
Also add a test that sets `COLOR` in the environment which affects the
generated Makefiles behavior.
See: https://discourse.cmake.org/t/cmake-failing-gcc-compiler-checks/8277
|
| | | |
|
|\ \ \
| |/ /
|/| |
| | |
| | |
| | |
| | |
| | |
| | | |
0e1abf7afa cmcldeps: Avoid passing /nologo more than once to RC compiler
f694e8d9c8 cmcldeps: Do not pass linker flags to cl
8600fb263b cmcldeps: Remove unused C and CXX support
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8541
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
`rc /nologo /nologo ...` fails:
fatal error RC1106: invalid option: -ologo
Fixes: #24974
Inspired-by: Benjamin Buch <benjamin.buch@technoteam.de>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Avoid cl `Command line warning D9035`.
Fixes: #24906
Co-authored-by: Brad King <brad.king@kitware.com>
|
| | |
| | |
| | |
| | | |
We never set `CMAKE_NINJA_CMCLDEPS_{C,CXX}` anymore.
|
| | | |
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
36ec89639a VERIFY_INTERFACE_HEADER_SETS: Skip header files that have SKIP_LINTING
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8540
|
| | | |
| | | |
| | | |
| | | | |
Fixes: #24972
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
bfa5b430b3 Apple text-based stubs: ensure runpath is correctly defined
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8536
|
| | | | |
| | | | |
| | | | |
| | | | | |
This is a complement to !8204.
|