Stephen Kelly
2628dec12c
cmLocalGenerator: Store variable replacements as state
These do not change over the lifetime of the cmLocalGenerator.
9 years ago
Stephen Kelly
315b9a3189
cmLocalGenerator: Merge loops which populate mapping
9 years ago
Stephen Kelly
d5feb5b34c
cmLocalGenerator: Populate variable mapping for all replacements
This reduces the final replacement to a simple query in the map, which
is much more readable than what was here before.
9 years ago
Stephen Kelly
efba22e1de
cmLocalGenerator: Extract compiler option replacement from loop
There is no need to be in the loop. Being there just adds to
complexity.
9 years ago
Stephen Kelly
b29425f7aa
cmLocalGenerator: Populate a container of mappings for replacements
The same variables are replaced/retrieved from cmMakefile again and
again. Use a container so that they don't have to be retrieved
repeatedly, and to simplify the nested loop.
9 years ago
Stephen Kelly
f009d8f5e2
cmLocalGenerator: Move compiler option handling to be more direct
9 years ago
Stephen Kelly
6cd27a853a
cmLocalGenerator: Move variable to where it can be used easily
9 years ago
Stephen Kelly
8b0e479568
cmLocalGenerator: Use the language from the compiler container
This is just to make follow-up diffs smaller.
9 years ago
Stephen Kelly
88016e2e9f
cmLocalGenerator: Introduce a container of compiler names
Use it to determine when a rule replacement should gain extra options.
9 years ago
Stephen Kelly
be87cb0c44
cmLocalGenerator: Simplify loop with range algorithm
9 years ago
Stephen Kelly
425cd1670f
cmLocalGenerator: Remove the launcher from RuleVariables
This one is not like the others as it doesn't participate in
substitutions. Keep ExpandRuleVariables doing only one thing and make
callers responsible for inserting a launcher prefix, simplifying the
code all-around.
Remove now-obsolete InsertRuleLauncher method.
9 years ago
Stephen Kelly
fa9dbc56a1
cmGeneratorTarget: Implement cmTargetPropertyComputer interface
Populate a local member for the sources property when the instance is
created. Pass the parameter to avoid the policy check when doing so.
Ordinarily, the GetSources function should not be called unconditionally
(at generate time), but we need to do so here in case the property is
read in a generator expression. The intent is to be able to implement
cmGeneratorTarget without requiring cmTarget.
9 years ago
Stephen Kelly
848ae2a663
cmTargetPropertyComputer: Template some methods on the Target
Implement the methods for cmTarget in the cmTarget source.
9 years ago
Stephen Kelly
a0a720e6a7
cm{,Generator}Target: Add global generator accessors
Provide 'static polymorphism' between the types in this aspect so that
they can be used indiscriminately in a C++ template.
9 years ago
Stephen Kelly
637e3f3ee1
cmTargetPropertyComputer: Unify whitelist handling from cmTarget
9 years ago
Stephen Kelly
05251e6d80
cmTargetPropertyComputer: Move whitelist check from cmTarget
9 years ago
Stephen Kelly
fbf1721c94
cmTargetPropertyComputer: Extract into new files
9 years ago
Stephen Kelly
390a7d8647
cmTargetPropertyComputer: Implement GetProperty without cmMakefile
Only a cmMessenger and a backtrace are needed.
9 years ago
Stephen Kelly
e32a6bdd99
cmListFileBacktrace: Add a method to retrieve the Bottom of a snapshot
9 years ago
Stephen Kelly
7863fba1f6
cmTarget: Extract GetLocation method
9 years ago
Stephen Kelly
8096682e4e
cmTarget: Extract GetSources method
9 years ago
Stephen Kelly
7d57c1a2c9
cmTarget: Extract location computation methods
9 years ago
Stephen Kelly
a55cac4ba4
cmTarget: Split property computation into separate class
Everything related to property computation will be moved here and
eventually shared with cmGeneratorTarget.
9 years ago
Stephen Kelly
705fcf522b
cmTarget: Move IMPORTED check to callers
This way the policy can be checked without depending on cmTarget.
9 years ago
Stephen Kelly
1fb6f672bd
cmTarget: Move SOURCES property computation before the rest
The SOURCES have to be computed.
9 years ago
Stephen Kelly
60b3f216c1
cmTarget: Remove mutable marker from properties
9 years ago
Stephen Kelly
aaa5dbbf64
cmTarget: Use static storage for computed properties
Avoid having to populate a mutable container to return a value.
9 years ago
Kitware Robot
ac5b80e76c
CMake Nightly Date Stamp
9 years ago
Andre McCurdy
4bc17345c0
CheckFunctionExists.c: avoid gcc warnings with -Wstrict-prototypes
Avoid warnings (and therefore build failures etc) if a user happens
to add -Wstrict-prototypes to CFLAGS.
| $ gcc --version
| gcc (Ubuntu 4.8.4-2ubuntu1~14.04.3) 4.8.4
|
| $ gcc -Wstrict-prototypes -Werror -DCHECK_FUNCTION_EXISTS=pthread_create -o foo.o -c Modules/CheckFunctionExists.c
| Modules/CheckFunctionExists.c:7:3: error: function declaration isn't a prototype [-Werror=strict-prototypes]
| CHECK_FUNCTION_EXISTS();
| ^
| cc1: all warnings being treated as errors
|
Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
9 years ago
Brad King
d657fd7b35
Merge branch 'doc-math-EXPR' into release
9 years ago
Brad King
c05d9b0569
Help: Fix math(EXPR) documentation formatting
9 years ago
Brad King
2810e56182
math(EXPR): Add support for unary `+` and `-` expressions
Closes : #8996
9 years ago
Brad King
834f52a6f4
cmExprParser: Revise indentation style to match rest of CMake
9 years ago
Brad King
7aaed265ad
cmExprParser: Port to bison 3
Use %-directives to specify the scanner/lexer arguments and update the
yyerror signature. Reduce the list of post-bison modifications needed.
9 years ago
Brad King
ef4e349ea3
Merge branch 'doc-clarify-ctest-APPEND' into release
9 years ago
Brad King
78b00f1d10
Help: Clarify `ctest_*` APPEND option behavior
Explicitly state that this marks the `.xml` to tell the dashboard
server to append it to previously submitted results and that it
does not cause results to be appended to the `.xml` file.
9 years ago
Brad King
0d81863297
Merge branch 'release'
9 years ago
Ben Boeckel
70e268da3e
cmcldeps: prefer the /TC flag
The /TC flag causes all source files to be processed as C source files.
We know that there is only one, so this is safe.
9 years ago
Ben Boeckel
47092d3e80
cmcldeps: append strings as strings
9 years ago
Ben Boeckel
7db671a143
cmcldeps: search for single-byte strings as characters
9 years ago
Brad King
a8513d8a80
Merge topic 'vs-host-x64-tools'
d079e71c
VS: Provide an option to use x64 host tools
779939a0
Help: Document VS and Xcode toolset selection
9 years ago
Brad King
d079e71c29
VS: Provide an option to use x64 host tools
Visual Studio provides toolchains that are themselves built for 32-bit
or 64-bit host architectures. By default it uses the 32-bit tools, but
it can be told to prefer the 64-bit tools on 64-bit hosts. Extend the
`CMAKE_GENERATOR_TOOLSET` specification to provide a way to request
use of the 64-bit host tools.
Closes : #15622
9 years ago
Brad King
eb923da2c4
Merge topic 'flush-archive-list'
39b08858
cmSystemTools: Flush output buffer for list_item_verbose
9 years ago
Brad King
02946e0b95
Merge topic 'FindBoost-minor-cleanup'
08b9a0fd
FindBoost: Simplify library dir detection with cascading if/elseif/else
ca4029fa
FindBoost: Minor style updates
2e242b5c
FindBoost: Use list(INSERT) to simplify suffix list generation
6699d46a
FindBoost: Use string(APPEND) in more cases
9 years ago
Brad King
8b496672fe
Merge topic 'st2-exclude-patterns-variable'
19ffc072
Sublime: Exclude build tree from source tree project only optionally
9 years ago
Brad King
dabd177922
Merge topic 'ninja-framework-POST_BUILD'
20278872
Ninja: Fix POST_BUILD commands on macOS Frameworks
9 years ago
Brad King
03622ee2d0
Merge topic 'ninja-rc-regression'
9977899d
Ninja: Fix RC language depfile generation with cmcldeps
9 years ago
Brad King
f0579e2fda
Merge topic 'LINK_WHAT_YOU_USE-allow-OFF'
2f79b22c
Merge branch 'backport-LINK_WHAT_YOU_USE-allow-OFF' into LINK_WHAT_YOU_USE-allow-OFF
33cb0173
Honor LINK_WHAT_YOU_USE when set to OFF
933e54d3
Honor LINK_WHAT_YOU_USE when set to OFF
9 years ago
Kitware Robot
4c921e5c7b
CMake Nightly Date Stamp
9 years ago
Brad King
a975b21cec
Merge branch 'ninja-framework-POST_BUILD' into release
9 years ago