| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|\
| |
| |
| |
| |
| |
| | |
d7923b82 Use std::unordered_map instead of hash_map where available.
820777af Tests: Don't rely on ordering of targets in maps.
921d74d8 AutoGen: Don't iterate over a container while populating it.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
The InitializeAutogenTarget creates new targets and adds them to the
Targets container on the makefile. In this method, we have a reference
to that container and we are iterating over it. That happens to work
with hash_map, but it fails with undefined behavior when using the
std::unordered_map from libstdc++-4.9 (and likely others).
|
|\ \
| | |
| | |
| | |
| | | |
a390de65 Ninja: Generate separate compile and link rules for each target
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Our <LANG>_COMPILER and <LANG>_<TARGET_TYPE>_LINKER rule generation has
access to a specific cmTarget so the results may depend on it. Instead
generate separate rules for each target using an encoded target name.
In particular, this makes CTEST_USE_LAUNCHERS report proper target
information.
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
fa9eb814 cmLocalGenerator: Remove redundant path access.
1933f3d1 cmLocalGenerator: Remove redundant path conversions.
9e4b6cc2 cmState: Store computed relative paths to to current directories.
991f5e49 cmState::Snapshot: Store components for current directories.
57bdc1a2 cmState: Compute and store directory components.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | | |
The methods just called store the paths in already-converted form.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | | |
Remove this responsibility from cmLocalGenerator.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
There is no need to duplicate these in all cmLocalGenerators.
Rename the symbols according to current conventions.
Add explicit calls to Set{Source,Binary}Directory with empty strings
in order to trigger the population of the components containers with
the current working directory in cmLocalGenerator. Having
directories set to empty is a special case in CMake, which is relied
on for the `if(CMAKE_BINARY_DIR)` condition at the end of
CMakeDetermineSystem.cmake.
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
61d52e6e cmListFileBacktrace: Hide the context-stack implementation detail.
a271f7f1 cmTarget: Simplify CMP0023 message loop.
f4300cd4 cmTarget: Simplify output computation.
65a42849 cmTarget: Store context in stack only if different.
9645cba3 cmListFileContext: Implement EqualityComparable.
52a8d19c cmTarget: Store only cmListFileContext for CMP0023 handling.
59ba1215 cmTarget: Remove needless iteration.
18f810a8 cmListFileContext: Sort by line before file.
e96b5d14 cmListFileContext: Implement LessThanComparable.
7eb0dfa0 cmMakefile: Use std::set::insert API to simplify CMP0054 handling.
f9785e0c cmMakefile: Simplify CMP0054 handling.
e17b5e42 cmMakefile: Add access to the top-level execution context.
1ec1bf9f if(): Test the effect of cmMakefileCall use in elseif() handling.
9b4aefad cmMakefile: Replace deques with vectors.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The backtrace will soon not be implemented in terms of a stack of
cmListFileContext objects. Keep the cmListFileContext in the API
for convenience for now.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This method is only called if there is a mismatch and something to
print. Remove intermediate container.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
We always have line information for contexts resulting from
command execution.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The PushTLLCommandTrace method is called once per link item for a single
target_link_libraries command. Avoid storing copies of identical
execution contexts and rely on the uniqueness while printing output.
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Only the top level execution context is shown, as appropriate, so
store only that.
|
| | | | |
| | | | |
| | | | |
| | | | | |
This is not a loop.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This should be much faster. In the context where it is used the
line comparison should be sufficient, removing the need to compare
files at all.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Move wrapping existing code from cmMakefile, and simplify the
implementation there.
|
| | | | | |
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This is cheaper than getting the whole backtrace, and the cmListFileBacktrace
will not always be composed of cmListFileContext objects.
|
| | | | | |
|
| | |/ /
| |/| | |
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
dad8b03f VS: Remove obsolete methods.
e435f875 VS: Move version information to global generator.
b5f093f0 VS: Simplify setting of flag table.
|
| | | | |
| | | | |
| | | | |
| | | | | |
Base class implementations for these are identical.
|
| | | | | |
|
| | | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
036372c4 Remove obsolete overrides of CreateLocalGenerator.
684e5cef cmGlobalGenerator: Host the MakeSilentFlag.
2047144f cmLocalGenerator: Remove unused IgnoreLibPrefix.
333c1fa8 cmGlobalUnixMakefileGenerator3: Host the UnixCD.
a97df5e1 cmGlobalUnixMakefileGenerator3: Host the PassMakeflags.
14f171c3 Remove method calls just repeating the default.
cf7f03e5 cmGlobalUnixMakefileGenerator3: Host the DefineWindowsNULL.
e9b134b9 cmGlobalUnixMakefileGenerator3: Host the include directive.
24613d8b cmLocalGenerator: Remove unused method.
b659d161 cmGlobalGenerator: Add NVI wrapper to create local generator.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
The cmGlobalMakefileGenerator3 has an identical implementation.
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
There is no sense in copying this to each cmLocalGenerator.
|
| | | | | | |
|
| | |_|_|/
| |/| | | |
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
f170985e cmDefinitions: Make the ClosureKeys method static.
98c5c903 cmDefinitions: Centralize knowledge of iterator type.
7872201b cmDefinitions: Remove internal MakeClosure method.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
For consistency with all other closure-related methods.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Currently we process a list of definitions, but that will change.
|
| | |/ / /
| |/| | |
| | | | |
| | | | |
| | | | | |
There is no need to have a separate method, or to pass an external
set to it.
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
2a44acb9 cmExecutionStatus: Remove inheritance of cmObject.
c8c34169 cmExecutionStatus: De-virtualize API.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
It is not needed.
|