| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Issue: 19927
|
| |
|
|
|
|
|
| |
Run the `clang-format.bash` script to update our C and C++ code to a new
include order `.clang-format`. Use `clang-format` version 6.0.
|
|
|
|
|
| |
Support backtraces for COMPILE_DEFINITIONS, COMPILE_OPTIONS, and
INCLUDE_DIRECTORIES source properties.
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
4d6334824d fileapi: add backtraces for LINK_PATH and LINK_DIRECTORIES
5bd65dff7a cmLocalGenerator: Add OutputLinkLibraries overload with backtraces
5d39e792ae cmGeneratorTarget: Store backtrace for target LINK_DIRECTORIES property
7da17ef797 cmLinkLineComputer: Add ComputeLinkLibraries overload with backtraces
d4d0dd0f6a cmLinkLineComputer: Add ComputeLinkLibs overload with backtraces
0ac9dcb807 cmLinkLineComputer: Add ComputeLinkPath overload with backtraces
0c6468178a cmComputeLinkInformation: Add GetDirectoriesWithBacktraces
a209b31d0d cmComputeLinkInformation: Add AppendValues with backtraces
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3805
|
| | |
|
|\ \
| |/
|/|
| |
| |
| |
| | |
d25a5a7ec9 clang-tidy: modernize-use-auto
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3783
|
| |
| |
| |
| |
| |
| | |
Set the MinTypeNameLength option to an impossibly high value in order
to limit the diagnostics to iterators. Leave new expressions and cast
expressions for later.
|
|/ |
|
|\
| |
| |
| |
| |
| |
| | |
10507c6dc0 cmMakefile: Add configurations getter with empty configuration default
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3759
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
2d888e3390 cmSourceFile: Rename mutating GetFullPath() overload
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3757
|
| |/
| |
| |
| | |
Rename mutating GetFullPath() overload to ResolveFullPath().
|
|\ \
| |/
|/|
| |
| |
| |
| | |
9da1c33cf1 fileapi: Fix codemodel v2 target file name for CMP0037 OLD behavior
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3760
|
| |
| |
| |
| |
| |
| |
| | |
With CMP0037 OLD behavior, executable and library target names may
contain a slash. Avoid constructing file names with slashes.
Fixes: #19653
|
| |
| |
| |
| |
| |
| |
| |
| | |
GetOrDetermineLanguage:
- Read the property if available
- Determine the Language using the file extension
Fix all usage of the non-const member in the repository.
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
959b97a27f Tests: testStringAlgorithms: Add cmTrimWhitespace, cmEscapeQuotes, cmTokenize
7fbcc16dcd cmStringAlgorithms: cmIsSpace, cmTrimWhitespace, cmEscapeQuotes, cmTokenize
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3647
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This adds the following functions to `cmStringAlgorithms`:
- `cmIsSpace`
- `cmTrimWhitespace` (moved from `cmSystemTools::TrimWhitespace`)
- `cmEscapeQuotes` (moved from `cmSystemTools::EscapeQuotes`)
- `cmTokenize` (moved from `cmSystemTools::tokenize` and adapted to
accept `cm::string_view`)
|
|\ \ \
| |/ /
|/| /
| |/
| |
| |
| | |
d70a0f8681 fileapi: Fix codemodel target install destination for cross-dir rules
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3639
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Since commit e89ad0f94e (install: Allow installing targets created in
another directory, 2018-06-18, v3.13.0-rc1~407^2) we support calling
`install(TARGETS)` for targets created in another directory. However,
install generators are associated with the directory in which the call
to `install()` appears. This may not be the same directory in which the
target is defined. Record in each target the list of install generators
it has.
Fixes: #19546
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously we computed the entire description of each source file
including all target-wide settings, and then computed compile groups
using those complete descriptions. This is inefficient when target-wide
settings are large because they are included in comparisons even though
they are the same for every source. Instead compute source groups using
only the source-specific settings, and then merge the target-wide
settings into place only once per unique compile group.
This is a slight behavior change in the case that a source-specific
compile definition duplicates a target-wide definition. Previously that
source would still be grouped with other sources which do not have the
definition because they would all get it from the target. Now that
source will be in its own compile group even though it ultimately
compiles with the same settings as another group. This is acceptable
because the source is specified by the project with source-specific
settings already.
Fixes: #19520
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously we converted the description of each source file into its
compile group Json object and then used the Json object itself as a
unique identifier for the group. When source files have large
descriptions their Json objects make inefficient map keys requiring deep
comparison operations. Instead use our internal `CompileData` structure
as a map key. This enables use of a hash map.
Issue: #19520
|
| |
| |
| |
| |
| |
| | |
Convert from `cmListFileBacktrace` to Json `backtraceGraph` entries
before storing in `CompileData`. This will allow backtraces to be
uniquely identified, hashed, and compared as a single integer.
|
| | |
|
| | |
|
| |
| |
| |
| | |
Use `HasImportLibrary` for such checks.
|
|/
|
|
|
|
|
|
| |
An old workaround for `std::allocator_traits<>::value_type` lints from
IWYU on `std::vector<>` usage breaks IWYU's handling of `<memory>`.
Convert the workaround to use the same approach we already use for a
workaround of `std::__decay_and_strip<>::::__type` lints. Then update
the `<memory>` inclusions to follow the now-correct IWYU lints.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch strips the `stripImplicitDirs` and `appendAllImplicitDirs`
parameters from the `cmLocalGenerator::GetIncludeDirectories` method and makes
it a wrapper into the new `cmLocalGenerator::GetIncludeDirectoriesImplicit`
method. `cmLocalGenerator::GetIncludeDirectoriesImplicit` is the renamed old
implementation of `cmLocalGenerator::GetIncludeDirectories` and still
accepts `stripImplicitDirs` and `appendAllImplicitDirs`.
The motivation is that there's only *one* case where
`cmLocalGenerator::GetIncludeDirectories` is called with the
`stripImplicitDirs` parameter being `false` (QtAutoGen), but many other places
where it is called using the `true` default value.
QtAutoGen is modified to use `cmLocalGenerator::GetIncludeDirectoriesImplicit`
directly. In two use cases of `cmLocalGenerator::GetIncludeDirectories`
the manually set `true` value for `stripImplicitDirs` is removed.
|
| |
|
|
|
|
|
| |
Issue: #18398
Co-Author: Kyle Edwards <kyle.edwards@kitware.com>
|
|
|
|
|
|
|
|
|
| |
Offer clients a `project()`-centric view of the build system. This is
similar to the directory-centric view but consolidates subdirectories
that do not call `project()` with a new project name.
Issue: #18398
Co-Author: Kyle Edwards <kyle.edwards@kitware.com>
|
|
Start with v2 to distinguish it from server-mode v1.
Issue: #18398
|