| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In `cmArgumentParser`, a keyword bound to a `std::vector<std::string>`
value is reported in the list of keywords with missing values if the
keyword appears followed by an empty list. For cases where we want to
tolerate empty lists, clients need to filter out such keywords
themselves before producing an error message. This may be improved in
the future, but that is out of scope here.
In commit c7e1198a23 (file: Add ARCHIVE_{CREATE|EXTRACT} subcommands,
2020-03-13, v3.18.0-rc1~530^2), a pattern for filtering out keywords
that accept empty lists was copied from commit c998c8d560
(file(GET_RUNTIME_DEPENDENCIES): Tolerate empty list arguments,
2020-01-22, v3.17.0-rc1~111^2~1) incorrectly in two ways:
* Keywords were included in the filter that do not accept empty lists.
* Keywords were not in sorted order, breaking the filter operation.
Those two bugs mostly canceled each other out, and the resulting
behavior was to correctly report keywords with missing values.
However, the `MTIME` keyword was accidentally accepted with no value
by pretending the keyword was not given at all.
Simplify the logic by removing keywords from the filters that should not
be there. Leave `MTIME` in the filter for compatibility.
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| |
| | |
23bbac941a Add cmake_language(GET_MESSAGE_LOG_LEVEL) sub command
2b6ef864e0 Move LogLevel enum out of cmake.h header
Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !7348
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The new sub-command writes a string representation of the
current log level to the output variable given to the
sub-command.
Given that the log-level might be set either via the --log-level
command line option or via the CMAKE_MESSAGE_LOG_LEVEL
cache / regular variables, the priority for each of the log level
sources is as follows, with the first one being the highest:
1) --log-level
2) CMAKE_MESSAGE_LOG_LEVEL regular variable
3) CMAKE_MESSAGE_LOG_LEVEL cache variable
4) default log level (STATUS)
Fixes: #23572
|
| |
| |
| |
| |
| |
| |
| | |
Move LogLevel enum into the cmMessageType.h header in preparation
for a new log level querying feature.
Wrap the enum into a new Message namespace.
Adjust all code usages.
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
22a2b9c49f Tests: Fix Java tests on multi-config generators
b05d297964 Tests: handle a case when hg executable is broken
2faabab644 Tests: don't fail tests on broken E2K Java RVM
1462a1e15d Tests: check for shlibdeps symbols/shlibs before testing it
070e217399 Tests: enable Java tests if javac is a recurse symlink
7545d1ca9f Tests: don't use broken makensis
f11c12f9c8 Source: Suppress some warnings on LCC 1.23.x
de16db0f64 curl: make libcmcurl buildable with old LibreSSL
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7418
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Java.NativeHeaders test was not passing on
t:fedora36-ninja-multi pipeline. This is due to
paths being not set because of $<CONFIG> being used
at --test-command, but not being used at the actual
CTest invocation.
Now the correct variable is used there.
|
| | |
| | |
| | |
| | |
| | |
| | | |
OS Elbrus 6.0-rc1 to rc3 have hg executable broken
because of python2 and python3 module directories conflict.
Here, we avoid hg related tests if such case is detected.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Java RVM on E2K architecture is known to be broken
prior to RVM version 3.5.2 (they crash with SIGILL
in some circumstances). That disallows tests like
Java.Javah, Java.Jar, and Java.NativeHeaders to pass.
Now, if such RVM is detected, these test are not being run.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
OS Elbrus 6.x has totally broken dpkg-shlibdeps; 7.1 has
a working one, but still no symbols/shdibdeps files, so
generated dependencies are also empty. Since this commit,
we're checking if these files exist, and if not, we skip
the CPackComponentsDEB-components-depend2 test.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
There are distros (OS Elbrus 6.x, 7.x, Ubuntu 21.x)
where javac is a recurse symlink, like /usr/bin/javac ->
/etc/alternatives/javac -> /usr/lib/jvm/.../bin/javac.
On these distros, Java tests were not run, because
Tests/CMakeLists.txt was not able to handle this case
correctly. Now an additional stage of resolving symlinks
is added, and these distros have Java tests running.
|
| | |
| | |
| | |
| | |
| | |
| | | |
Some distros (OS Elbrus less than 7.0) have unrunnable
makensis. While performing tests, this condition is now
checked, and NSIS CPack generator test is not performed.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
LCC 1.23.x (confirmed for 1.23.10, 1.23.19, maybe others)
issues -Wunused-function warning on the following functions:
Source/cmFileAPICodemodel.cxx:126, ValueEq()
Source/cmFileAPICodemodel.cxx:130, ValueLess()
Source/cmGeneratorExpressionNode.cxx:630, back()
This fix makes it silent for compatibility.
This is not a subject for newer LCC versions, like 1.25 and 1.26.
On LCC 1.21 CMake is not buildable, and 1.22 and 1.24 are not
tested, as they are internal development versions. Thus, the fix
is only applied if LCC 1.23 is detected.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
LibreSSL older than 2.6.0 is not supported correctly
in upstream curl, and as a consequence, in libcmcurl.
Such LibreSSL versions can be used in old distros,
like OS Elbrus 4.x and 5.x, so until this fix, CMake
wasn't buildable there either.
|
|\ \ \ |
|
| |\ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
5c7b6b29f9 FetchContent: Don't use if(... IN_LIST ...)
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7423
|
|\ \ \ \ \
| | |/ / /
| |/| | |
| | | | |
| | | | |
| | | | |
| | | | | |
5c7b6b29f9 FetchContent: Don't use if(... IN_LIST ...)
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7423
|
| | | | |
| | | | |
| | | | |
| | | | | |
This avoids the need for changing policy settings, which would then
propagate through to projects brought into the build via FetchContent.
|
|\ \ \ \ \
| | |/ / /
| |/| | | |
|
| |\ \ \ \
| | |/ / /
| |/| | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
10668f26c9 AUTOUIC: Fix internal paths of generated ui_foo.h files
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7419
|
|\ \ \ \ \
| | |/ / /
| |/| | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
10668f26c9 AUTOUIC: Fix internal paths of generated ui_foo.h files
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7419
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
For every file foo.ui we generate a ui_foo.h file in
${target}_autogen/include or ${target}_autogen/include_$<CONFIG> in the
multi-config case. Even .ui files in subdirectories are handled this
way. That means, .ui files with the same base name will conflict in a
target.
However, for .ui files in subdirectories we added generated sources with
the nonexistent path ${target}_autogen/include/subdir/ui_foo.h. This
patch fixes that.
Also, CMake will now yield an error if a target has multiple .ui files
with the same base name.
Fixes #23523
|
| |_|/ /
|/| | | |
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
e1adddc74e RunCMake/CXXModules/NoCXX20: Force older standard
3f7ebf9354 RunCMake/CTestTimeout: Include sched.h for pid_t
8eb8d16c19 cmSystemTools: Fix unsetenv() fallback
324ca5b489 Tests/CTestTestFdSetSize: Support plain POSIX
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7408
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Compile features ensure a compiler is aware of a standard version, but the one
actually used may be newer. The test relies on the standard chosen being
pre-C++20, so force C++17 explicitly.
This was exposed by a nightly bot that has a compiler defaulting to C++23. The
test would've broken anyway in a few years once GCC or Clang upped their
default.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
ISO C modes in Clang don't enable modern POSIX standards.
Include sched.h to define pid_t in such modes.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The fallback path boils down to putenv(). Calling that with a "=" sets the
variable to an empty string.
Use cmSystemTools::UnPutEnv() instead, which correctly handles unsetting
variables on a variety of systems.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
When compiling in ISO C mode functions from newer POSIX standards such as
usleep() and nanosleep() aren't available.
Fortunately select() allows timing out with microsecond precision.
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
6c8789af75 FindGLEW: select_library_configuration might be used before it is defined
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7412
|
| |/ / / /
| | | | |
| | | | |
| | | | | |
Fixes a regression from a31b27078595fce911b2469937ac12934555644a
|
|\ \ \ \ \
| | |_|/ /
| |/| | | |
|
| |\ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
ece3bedbf2 FindPython: fix error on multiple queries with different COMPONENTS
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7410
|
|\ \ \ \ \ \
| | |/ / / /
| |/| | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
ece3bedbf2 FindPython: fix error on multiple queries with different COMPONENTS
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7410
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Ensure that multiple queries with different COMPONENTS specified in
different sub-directories are fully supported.
|
|\ \ \ \ \ \
| | |/ / / /
| |/| | | | |
|
| |\ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
8d8d8ac772 Help: Mark features new to 3.24 in Using Dependencies Guide
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7411
|
|\ \ \ \ \ \ \
| | |/ / / / /
| |/| | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
8d8d8ac772 Help: Mark features new to 3.24 in Using Dependencies Guide
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7411
|
| | |/ / / /
| |/| | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
The sections on FetchContent's FIND_PACKAGE_ARGS and on
Dependency Providers only apply to CMake 3.24+, so add
versionadded markers at the start of both sections.
|
|\ \ \ \ \ \
| | |/ / / /
| |/| | | | |
|
| |\ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
b5bc72574e FindHDF5: Revert "Add explicit library location instead of guessed ..."
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7416
|
|\ \ \ \ \ \ \
| | |/ / / / /
| |/| | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
b5bc72574e FindHDF5: Revert "Add explicit library location instead of guessed ..."
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7416
|
| | |/ / / /
| |/| | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Revert commit e4e309f165 (FindHDF5: Add explicit library location
instead of guessed library name., 2022-03-22, v3.24.0-rc1~375^2).
The old behavior was not a guessed library name, but the name of an
imported target that can contain per-config locations and encode usage
requirements. Although find modules do not normally return their
imported target names in the `_LIBRARIES` variable, FindHDF5 has done so
since commit 5201a3065b (FindHDF5: use the target rather than the path,
2017-01-04, v3.8.0-rc1~81^2).
Fixes: #23667
|
|\ \ \ \ \ \
| | |/ / / /
| |/| | | | |
|
| |\ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
3fac3d365d Help: Mention CMP0126 in CMAKE_OSX_* variable documentation
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7414
|
|\ \ \ \ \ \ \
| | |/ / / / /
| |/| | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
3fac3d365d Help: Mention CMP0126 in CMAKE_OSX_* variable documentation
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7414
|
| | |/ / / /
| |/| | | |
| | | | | |
| | | | | | |
Signed-off-by: Da Quexian <daquexian566@gmail.com>
|
|\ \ \ \ \ \
| | |/ / / /
| |/| | | | |
|
| |\ \ \ \ \ |
|
|\ \ \ \ \ \ \
| | |/ / / / /
| |/| | | | | |
|
| |\ \ \ \ \ \
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Merge-request: !7407
|