| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
The `AddLinkLibrary` method takes a `cmMakefile` pointer to represent
the scope of the caller that wants to link to the named library.
Currently in all call sites this is the same as the target's `Makefile`
member, but in principle the library named by the caller is visible in
its scope so we should use the `cmMakefile` it provided to look up the
library target.
|
|
|
|
| |
Avoid calling `FindGeneratorTargetToUse` directly.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
While collecting usage requirements from the `INTERFACE_*` properties of
directly linked targets, we internally generate `TARGET_PROPERTY:` and
`TARGET_OBJECTS:` generator expressions to refer to those properties on
those targets. At the point we generate these expressions we already
have a pointer to an exact `cmGeneratorTarget` instance.
Switch from using the target name in these generator expressions to
using an internal unique name generated for each `cmGeneratorTarget`
instance to be referenced. This avoids depending on the user-facing
target name to find the same target we already have.
|
|
|
|
|
|
| |
Use the normal target link interface computation logic to get the
list of libraries in the link interface instead of trying to
interpret the `INTERFACE_LINK_LIBRARIES` property directly.
|
|
|
|
|
| |
This method has not been used since commit v3.4.0-rc1~234^2~1
(cmGlobalGenerator: Port Find API to cmMakefile, 2015-08-02).
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| | |
f35be59961 Fix transitive usage requirements through same-name imported targets
1b57f49586 genex: Simplify cmGeneratorExpressionInterpreter
bea390e9bd Fix dependency propagation through same-name imported targets
fc7e4d1ed8 cmLinkItem: Convert to a "sum type" over a string and target pointer
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2359
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If two imported targets in different directories have the same name we
should still be able to propagate transitive usage requirements from
both. Fix the DAG checker to work with target pointers instead of
target names since the pointers will not be duplicated even if the names
are.
Fixes: #18345
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
All callers were constructing with a non-empty target name using the
target whose pointer was passed anyway. Drop this argument. Simplify
logic accordingly. Re-order constructor arguments to match the
cmCompiledGeneratorExpression::Evaluate arguments.
Also remove unnecessary getters.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If two imported targets in different directories have the same name we
should still be able to propagate transitive link dependencies from
both. Fix the target and link dependency analyzers to de-duplicate
targets using target pointers rather than target names since the
pointers will not be duplicated even if the names are.
Issue: #18345
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Avoid exposing the item name implicitly as std::string. When the item
is a target, avoid storing a second copy of its name.
Most link item construction is paired with calls to `FindTargetToLink`
to get the possible target pointer. Rename these methods to
`ResolveLinkItem` and refactor them to construct the entire item.
|
|\ \ |
|
| |\ \
| | | |
| | | |
| | | | |
Merge-request: !2368
|
| |\ \ \
| | | | |
| | | | |
| | | | | |
Merge-request: !2366
|
| |\ \ \ \
| | | | | |
| | | | | |
| | | | | | |
Merge-request: !2362
|
|\ \ \ \ \ \
| | |_|_|/ /
| |/| | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
e374b9f1eb FindMPI: Restore MPI_<LANG>_COMPILE_FLAGS as a command-line string
Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Christoph Junghans <junghans@votca.org>
Reviewed-by: Christian Pfeiffer <cpfeiffer@live.de>
Merge-request: !2368
|
| |/ / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Refactoring in commit v3.10.0-rc1~103^2~2 (FindMPI: Modernization from
ground up, 2017-04-25) accidentally left this variable set as a copy of
the `;`-list in `MPI_<LANG>_COMPILE_OPTIONS`, but the flags variable is
documented as a command-line string. Restore it now.
Fixes: #18349
|
|\ \ \ \ \
| | |_|/ /
| |/| | |
| | | | |
| | | | |
| | | | |
| | | | | |
09f0325eaf CTest: Fix regression in ctest_start()
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2366
|
| |/ / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The format for the TAG file was changed in 3.12, and the way it was
read caused a regression which changed how the track was decided. This
commit fixes the regression.
Fixes #18347.
|
|\ \ \ \
| | |/ /
| |/| |
| | | |
| | | |
| | | |
| | | | |
292ec157b6 CTest: Fix --test-load regression
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2362
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The `ctest --test-load` option is implemented in `StartNextTests` by not
starting any tests when the load is too high and instead sleeping and
then returning. Prior to commit v3.11.0-rc1~117^2 (CTest: Re-implement
test process handling using libuv, 2017-12-10) our outer loop in
`RunTests` would immediately call `StartNextTests` again. However, now
the `uv_run` loop may simply terminate if there are no tests running
because no events are left pending.
Fix this by converting the sleep in `StartNextTests` into a libuv timer
that it starts instead. This avoids leaving `uv_run` with no pending
events. In the case that there are other running tests this also allows
CTest to detect when they finish even if it during the wait period where
we previously slept.
This regression was not caught by the test suite because it only
verified that we do not start new tests when the load was too high and
not that we proceed to start tests when the load drops. Revise the test
suite to cover both.
Fixes: #18338
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
3914108c4a Help: Formatting typo fix in cmake-generator-expressions(7)
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2360
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
228a2b0d82 Help: Clarify cmake_host_system_information memory units
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2339
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The memory size query implementations report in units of one mebibyte
(2^20). Clarify the unit in the documentation because "megabyte" might
also be interpreted as 10^6.
|
| | | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
192e552099 FindOpenSceneGraph: Fix find in Debug
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2341
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
As of now, it is not possible to find OpenSceneGraph in Debug because the only
variable find_package_handle_standard_args is checking is ${module}_LIBRARY
while the debug library is in ${module}_LIBRARY_DEBUG. The refactoring gets rid
of the old behaviour to replace with a call to select_library_configurations
which will populated ${module}_LIBRARY accordingly.
[Modules/Findosg_functions.cmake Modules/FindOpenThreads.cmake]
- Include SelectLibraryConfigurations module
- Modify the name of the variable that will be populated by the first
find_library to ${MODULE}_LIBRARY_RELEASE so that SelectLibraryConfigurations
can act on it
- Add call to select_library_configurations after attempting to find libraries
in debug and release
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
46855d000f cmCacheManager::GetInitializedCacheValue(): Return as const std::string*
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2357
|
| | |_|_|_|/
| |/| | | |
| | | | | |
| | | | | | |
Expose std::string type used internally instead of const char*
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
68d015fc94 FindSubversion: Add Subversion_WC_INFO option to suppress failures
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2292
|
| |/ / / / /
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Subversion fails when the directory is not actually under its control.
Allow projects to tolerate this case optionally.
Fixes: #18264
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
0239b586bd Extra Generator: Fix handling of CMAKE_<LANG>_COMPILER_ARG1
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2352
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
The "arg1" value is a command-line string so we must parse it to get
separate arguments for `execute_process`.
|
| |_|_|_|/ /
|/| | | | | |
|
| | | | | | |
|
| | | | | | |
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
df1ddeec12 ExternalProject: Report error if local variables are not defined
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Brad King <brad.king@kitware.com>
Merge-request: !2281
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Since in some situations, ExternalProject module may be included in
a sub-directory, functions will be available in the global scope but
local variables like "_ep_keywords_<keyword>" will not be defined, this
commit checks and reports an error indicating that the ExternalProject
module must be explicitly included before using any of the ExternalProject_*
functions that require the module's inclusion within the current scope
or above.
Co-authored-by: Pablo Hernandez <pablo.hernandez@kitware.com>
Co-authored-by: Craig Scott <craig.scott@crascit.com>
|
|\ \ \ \ \ \ \
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
437d0c16c7 cmStateSnapshot::GetDefinition(): Return std::string const*
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2356
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Expose std::string type used internally in cmDefinitions instead of const char*
|
|\ \ \ \ \ \ \ \
| | |_|_|_|_|_|/
| |/| | | | | | |
|
| | | | | | | | |
|
| |_|_|_|/ / /
|/| | | | | | |
|
|\ \ \ \ \ \ \
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
53bae4cc5e CMakeFindBinUtils: Fix use with non-cached tool settings
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2355
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
If a project or toolchain file hard-codes a tool location such as
`CMAKE_LINKER` with a plain `set()` then the value will be stored
in compiler information files but not cached. If the value is
not cached then we should not mark it as advanced because doing
so will initialize an empty cache entry.
Fixes: #18315
|
|\ \ \ \ \ \ \ \
| | |/ / / / / /
| |/| | | | | | |
|
| |\ \ \ \ \ \ \
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
Merge-request: !2354
|
|\ \ \ \ \ \ \ \ \
| | |/ / / / / / /
| |/| | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
bfe883af60 FindMatlab: Remove erroneous duplicate code
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2354
|
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
This was left accidentally when resolving merge conflicts between
previous changes.
Fixes: #18221
|