| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| |
| |
| |
| |
| | |
41bebbe50a file: Restore error capture in undocumented READ_ELF mode
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !6853
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Revise the error message added by commit 115ff6a347 (cmELF: Include the
ELF parsing code unconditionally, 2021-06-17, v3.22.0-rc1~557^2) to
honor the `CAPTURE_ERROR` option. This is needed by the call site in
`BundleUtilities` to suppress errors on non-ELF files.
Fixes: #23074
|
|/
|
|
|
|
| |
Move backtrace printing functions from `cmListFileBacktrace` over to
`cmMessenger`, their primary caller. Thread `cmMessenger` instances
through APIs needed to update other call sites.
|
|
|
|
|
|
|
| |
This case was added by commit e3ff7ced63 (file(INSTALL): Add
FOLLOW_SYMLINK_CHAIN argument, 2019-05-16, v3.15.0-rc1~103^2).
Skip it on Cygwin because it fails due to `foo/../` pairs being
flattened away in symlinks.
|
|
|
|
| |
Detect MSYS as CYGWIN, with the required adaptations.
|
|
|
|
|
| |
This option enables the replacement of any leading tilde with the path
to the user's home directory.
|
|
|
|
|
|
| |
The `file(COPY)` subcommand is overloaded and busy for such a simple
operation. Instead, make a simpler subcommand with error handling
support.
|
|
|
|
|
| |
Add a `NO_REPLACE` option that prevents overwriting `<newname>`
if it exists.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
* Improve and test err messages when TLS_VERIFY and TLS_CAINFO
are not set in file(DOWNLOAD) and file(UPLOAD).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In certain cases, rebuilds with CMake using the CONFIGURE_DEPENDS flag
with GLOB_RECURSE could result in a reconfigure loop due to CMP0009 not
being propogated to the generated VerifyGlobs.cmake script.
During the inital configuration phase, RecurseThroughSymlinksOn() is
called for recursive glob operations either by having the CMP0009 status
not set to NEW or by explicitly providing the FOLLOW_SYMLINKS flag. At
the end when the VerifyGlobs script is created, the FOLLOW_SYMLINKS flag
is written according to the final resolved form through a call to
GetRecurseThroughSymlinks(). Thus, setting CMP0009 to NEW in the
generated file is safe and allows correct behavior whether or not the
end user sets the policy status to NEW or OLD.
|
| |
|
|
|
|
| |
Co-Authored-by: vector-of-bool <vectorofbool@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously code like
file(REMOVE_RECURSE "${accidentally_missing_variable}")
treated the empty string as a relative path with respect to the
current directory and removed its contents. Change this behavior
to ignore the empty string with a warning instead.
Normally such behavior changes are done with a policy, but in this case
such code is likely a real bug in project code that can delete data.
Fixes: #19274
|
| |
|
|
|
|
| |
Add a test for COPY_ON_ERROR to cover that scenario.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
This commit adds the SIZE option to file(). It returns the file size of
the given path if it exists and produces an error if not.
|
| |
|
|
|
|
|
|
|
|
|
| |
Refactoring in commit v3.12.0-rc1~418^2~3 (Refactor HandleGlobCommand,
2018-02-13) introduced error diagnostics for argument combinations that
were previously accepted. Restore acceptance to avoid regressing
projects that used those combinations even if they do not make sense.
Fixes: #18097
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
Add a `FILES_FROM_DIR` option to install a specific set of files
specified relative to a given directory and preserve their layout
in the destination. Currently we intend to use this internally
to implement other things so we don't provide an `install()`
porcelain or documentation yet.
|
| |
|
|
|
|
|
| |
Leave it undocumented for now because we intend to use it internally and
it cannot be made available everywhere.
|
|
|
|
|
|
|
| |
Since upstream curl commit curl-7_52_0~131 (URL-parser: for
file://[host]/ URLs, the [host] must be localhost, 2016-11-11) we can no
longer use URLs of the form `file://c:/...` on Windows. These worked
only accidentally before. Use `file:///c:/...` instead.
|
|
|
|
|
|
|
|
| |
Since commit v3.3.0-rc1~318^2~1 (file: Teach GLOB to list directories
optionally, 2015-03-17) using `LIST_DIRECTORIES` followed by no
expression causes a crash. Fix the logic to avoid the crash.
Fixes: #16565
|
|\
| |
| |
| |
| | |
8f6cb366 file(DOWNLOAD|UPLOAD): Add HTTPHEADER suboption
|
| | |
|
|/
|
|
|
|
|
| |
The KWSys update in commit d28e4467 (KWSys 2016-09-14 (c4049689))
fixed this case, so add it to the test suite.
Closes: #16295
|
| |
|
|
|
|
|
| |
Emit warning message on unparsed argument instead of silently ignoring it.
Can't stop with the error message because it may break old code.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Even though the `file(GLOB)` documentation specifically warns against
using it to collect a list of source files, projects often do it anyway.
Since it uses `readdir()`, the list of files will be unsorted.
This list is often passed directly to add_executable / add_library.
Linking binaries with an unsorted list will make it unreproducible,
which means that the produced binary will differ depending on the
unpredictable `readdir()` order.
To solve those reproducibility issues in a lot of programs (which don't
explicitly `list(SORT)` the list manually), sort the resulting list of
the `file(GLOB)` command.
A more detailed rationale about reproducible builds is available
[here](https://reproducible-builds.org/).
|
|
|
|
|
|
|
|
|
| |
Although we fail with an error on a hash mismatch, it is not a fatal
error so the script may continue processing. If the download itself had
no error then report in the STATUS variable that the operation was not
successful due to the hash mismatch.
Suggested-by: Tobias Hieta <tobias@hieta.se>
|
|
|
|
|
|
| |
GLOB lists directories by default and GLOB_RECURSE does not.
LIST_DIRECTORIES enables user to control the behavior explicitly for
consistently for both GLOB and GLOB_RECURSE.
|
|
|
|
|
|
|
|
|
| |
Provide options to fail without blocking or to block up to a timeout.
Provide options to specify the scope containing the lock so it can be
released automatically at the end of a function, file, or process.
Extend the RunCMake.file test with cases covering the file(LOCK) command
usage and error cases.
|
|
|
|
|
|
| |
Create options "MESSAGE_ALWAYS", "MESSAGE_LAZY", and "MESSAGE_NEVER" to
specify whether to print the "Installing" and "Up-to-date" messages.
Extend the RunCMake.file test with cases covering these options.
|
|
|
|
|
|
|
|
|
|
|
| |
Teach cmFileCopier::InstallDirectory to detect whether the destination
directory exists. If so, report it as "Up-to-date" instead of
"Installing". This resolves message asymmetry with file installations.
Extend the RunCMake.file and RunCMake.install tests to check the
installation output on both the first and second run.
Suggested-by: J Decker <d3ck0r@gmail.com>
|
|
|