| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
Add tests to cover transitive usage requirements on installation and
export of targets that link to object libraries.
Issue: #14778
|
|
|
|
|
| |
Inspired-by: Deniz Bahadir <dbahadir@benocs.com>
Issue: #14778
|
|
|
|
|
|
|
|
|
|
| |
Note: This finally links the object-files of the `OBJECT` library from
the right-hand side of `target_link_libraries` to the target on the
left-hand side. However, this will only happen with directly linked
`OBJECT` libraries, not with `OBJECT` libraries "linked" through
property `INTERFACE_LINK_LIBRARIES` of a target on the right-hand side!
Fixes: #14778
|
|
|
|
|
|
|
|
|
|
| |
Note: This still does not link the object-files of the `OBJECT` library
from the right-hand side of `target_link_libraries` to the target on the
left-hand side. (In this particular case of another `OBJECT` library on
the left-hand side this would not make any sense anyway. The target on
the left-hand side has no link-step.)
Issue: #14778
|
|
|
|
|
|
|
|
| |
Note: This only allows `OBJECT` libraries to be on the right-hand side
of `target_link_libraries` but still does not link its object-files to
the target on the left-hand side.
Issue: #14778
|
|
|
|
|
|
|
|
|
|
| |
The proper way to use libraries is now through `target_link_libraries`
for things such as usage requirements, compile definitions, include
directories, etc. To facilitate this, allow `OBJECT` libraries to "link"
to other libraries.
Co-Author: Ben Boeckel <ben.boeckel@kitware.com>
Issue: #14778
|
| |
|
|\
| |
| |
| |
| |
| |
| | |
ea0ce73a19 install,export: Maybe transform OBJECT libraries to INTERFACE libraries
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1811
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Teach the `install` and `export` commands to support installing and
exporting `OBJECT` libraries without their object files. Transform
them to `INTERFACE` libraries in such cases.
For `install(TARGETS)`, activate this when no destination for the object
files is specified. For `export`, activate this only under Xcode with
multiple architectures when we have no well-defined object file
locations to give to clients.
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
92a4c236f6 Help: Fix wrong default for WORKING_DIRECTORY test property
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Brad King <brad.king@kitware.com>
Merge-request: !1806
|
| | | |
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
eaf9f69d41 Fix combined use of compiler launcher with lint tools
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1791
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
When using ccache with clang-tidy, ccache needs to wrap compiler
invocation, rather than cmake invocation. But it needs to do it without
affecting the command line that iwyu-like tools are receiving.
With this fix, if __run_co_compile is used, compile launcher is passed
using the new --launcher option, but if __run_co_compile is not needed,
compiler launcher is prepended to the command line as before.
To better illustrate the change: with this fix if running clang-tidy
with CXX_COMPILER_LAUNCHER set to "/usr/bin/time;-p;ccache" (time -p
added strictly for illustration purposes), the command line changes
from:
/usr/bin/time -p ccache cmake -E __run_co_compile \
--tidy=clang-tidy ... -- g++ ...
to:
cmake -E __run_co_compile \
--launcher="/usr/bin/time;-p;ccache" \
--tidy=clang-tidy ... -- g++ ...
This allows the compiler to be run via the launcher, but leaves tidy
(& friends) invocations unaffected.
Fixes: #16493
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
596a7f262a FindJava: Add Java_JAR_EXECUTABLE to a component: Development
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1807
|
| | |/ /
| |/| |
| | | |
| | | |
| | | |
| | | |
| | | | |
All discovered executables were placed in a component, except for 'jar'.
This forced the use of find_package(Java) without any component
specification. This commit adds 'jar' to the 'Development' component,
because that's what it's used for.
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
8182ebca32 cmIDEOptions: use std::string
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1804
|
| | | | | |
|
| | | | | |
|
|\ \ \ \ \ |
|
| | | | | | |
|
|\ \ \ \ \ \
| |/ / / / / |
|
| |\ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | | |
Merge-request: !1802
|
| |\ \ \ \ \ \
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Merge-request: !1800
|
|\ \ \ \ \ \ \ \
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
4964fe1e Tests: Update PLplot contract test repository URL
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1801
|
| | |_|_|/ / / /
| |/| | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Use a `git://` protocol URL documented by the repository hosting
infrastructure. After some updates to that infrastructure, the
`https://` URL with the `.git` extension no longer works reliably.
|
|\ \ \ \ \ \ \ \
| | |_|_|/ / / /
| |/| | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
7b1c1424 Modules: Restore recently removed search path suffixes
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1802
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Refactoring in commit v3.11.0-rc1~293^2~4 (Modules: Remove paths set as
global Unix prefixes, 2017-11-20) removed `PATH_SUFFIXES` options that
appeared to be used to cover subdirectories of the `PATHS` options that
were also removed. However, the path suffixes also apply to other
search paths and so should not be removed. Restore them.
Fixes: #17760
|
|\ \ \ \ \ \ \ \
| | |_|_|/ / / /
| |/| | | / / /
| |_|_|_|/ / /
|/| | | | | |
| | | | | | |
| | | | | | | |
e1cd936c Tests: Fix TIMESTAMP-UnixTime test under SOURCE_DATE_EPOCH=1
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1800
|
| |/ / / / /
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
The test was expecting timestamps on day 1 in 1970 to start at 86400 but
they actually started at 0. This worked without `SOURCE_DATE_EPOCH=1`
because after 1972, leap days compensated the offset.
Fixes: #17762
|
| |/ / / /
|/| | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
b6ef4bc3 Document and extend the CMAKE_SUPPRESS_REGENERATION variable
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1792
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Fixes: https://gitlab.kitware.com/cmake/cmake/issues/16815
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
8ab3660a cmOutputConverter: Inline some functions and avoid string re-allocations
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Pavel Solodovnikov <hellyeahdominate@gmail.com>
Merge-request: !1788
|
| |/ / / / /
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Use std::string (with correct initial size) in cmOutputConverter::Shell__GetArgument
instead of ostringstream. This avoids several re-allocations of the
string buffer. In addition, convert some of the private static members into
inline free functions to avoid function calls.
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
2d1e5ada cmMakefile: Improve performance of GetSource for known files
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1764
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Store "Known" files separately in KnownFileSearchIndex. This avoids
creating the rather expensive cmSourceFileLocation object for source
files that are already known. For large projects this results in a
factor 3-4 speedup of cmGlobalGenerator::Compute().
|
|\ \ \ \ \ \ \
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
a18147e9 MSVC,Clang,Flang: Add IPO support
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1721
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Fixes: #17692
|
|\ \ \ \ \ \ \ \
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
076a356c VS: Support C# project references
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1752
|
| | |_|/ / / / /
| |/| | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
When specifying a pure C# target in the `target_link_libraries()` call to
another C++ target, a `<ProjectReference>` was setup for it (we wanted this)
but also a corresponding `.lib` was added under `<AdditionalDependencies>`
(we didn't want this).
This change introduces a check that prevents `.lib` linker options from
being used when the corresponding target for that library is a C# target.
Fixes: #17678
|
|\ \ \ \ \ \ \ \
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
b723fe3d VS: Convert loops to C++11, other C++ improvements
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1786
|
| | | | | | | | | |
|
| | | | | | | | | |
|
| | | | | | | | | |
|
| |/ / / / / / /
|/| | | | | | | |
|
|\ \ \ \ \ \ \ \
| | |_|_|_|/ / /
| |/| | | | | | |
|
| |\ \ \ \ \ \ \
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
Merge-request: !1790
|
| |\ \ \ \ \ \ \ \
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
Merge-request: !1789
|
|\ \ \ \ \ \ \ \ \ \
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | | |
84de8b80 Ninja: Use as dependency file <objectDir/SourceName>.d if needed.
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1781
|