Commit Graph

24643 Commits

Author SHA1 Message Date
Kitware Robot 0b32ae944f CMake Nightly Date Stamp 2018-05-31 00:01:07 -04:00
Brad King 958191a95c Merge topic 'vs-toolset-version'
5f13168419 VS: Add option to select the version of the toolset used by VS 2017

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Francisco Facioni <fran6co@gmail.com>
Merge-request: !2093
2018-05-30 10:19:21 -04:00
Brad King fdb9d1ba04 Merge topic 'cmRemoveDuplicates'
6d7c074055 cmAlgorithms: Speed up cmRemoveDuplicates method
281f59536f IWYU: Define a macro to tell code it is preprocessing for iwyu

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2101
2018-05-30 09:56:00 -04:00
Kitware Robot 392f223d60 CMake Nightly Date Stamp 2018-05-30 00:01:05 -04:00
Basil Fierz 5f13168419 VS: Add option to select the version of the toolset used by VS 2017
Add new `version=` parameter in the toolset setting to select the
version.  Add variable `CMAKE_VS_PLATFORM_TOOLSET_VERSION` to hold the
version, if one is set (blank indicates default).

Fixes: #17549
2018-05-29 10:12:59 -04:00
Brad King f248f8ad78 Merge topic 'parallel_build_option'
1ab3881ec9 cmake: Add options for parallel builds to --build mode

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Henry Schreiner <henryschreineriii@gmail.com>
Merge-request: !1962
2018-05-29 10:05:09 -04:00
Brad King a543a233a2 Merge topic 'vs-raii-implement'
e7e25c6cb6 cmVisualStudio10TargetGenerator: Remove empty Elem::EndElement()
726c090297 cmVisualStudio10TargetGenerator: close XML tag in Elem destructor

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2109
2018-05-29 09:59:58 -04:00
Kitware Robot 11818c5fc1 CMake Nightly Date Stamp 2018-05-29 00:01:04 -04:00
Kitware Robot 965c79cc90 CMake Nightly Date Stamp 2018-05-28 00:01:04 -04:00
Craig Scott 3cc081654d Merge topic 'cmake-D-option-help'
42738e5075 Help: Update description of the -D option to CMake

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2105
2018-05-27 04:40:34 -04:00
Kitware Robot caab746548 CMake Nightly Date Stamp 2018-05-27 00:01:06 -04:00
Kitware Robot 64946fff30 CMake Nightly Date Stamp 2018-05-26 00:01:10 -04:00
Vitaly Stakhovsky e7e25c6cb6 cmVisualStudio10TargetGenerator: Remove empty Elem::EndElement()
The method no longer does anything.  Remove it and remove calls to it.
2018-05-25 13:04:56 -04:00
Le Minh Phuc 6d7c074055 cmAlgorithms: Speed up cmRemoveDuplicates method
Use a hash table instead of a sorted vector to track entries.

Co-authored-by: Chu Qinghao <me@qinghao1.com>
2018-05-25 12:49:01 -04:00
Florian Maushart 1ab3881ec9 cmake: Add options for parallel builds to --build mode
While we already support `cmake --build . -- -j`, the options after `--`
are specific to the native build tool.  Add new options `--parallel
[<N>]` and `-j [<N>]` to abstract this and map to the proper option
for the native build tool.
2018-05-25 09:42:20 -04:00
Vitaly Stakhovsky 726c090297 cmVisualStudio10TargetGenerator: close XML tag in Elem destructor
RAII actually implemented; EndElement() still kept to avoid major reformatting
2018-05-25 09:28:54 -04:00
Brad King 9b5161e24f Merge topic 'vs-scope'
45c4a75d27 cmVisualStudio10TargetGenerator: make sure each Elem has right scope

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2096
2018-05-25 09:25:17 -04:00
Kitware Robot a9bab1443e CMake Nightly Date Stamp 2018-05-25 00:01:04 -04:00
Raul Laasner 42738e5075 Help: Update description of the -D option to CMake
Fixes #18021
2018-05-24 17:50:33 -04:00
Brad King 2f8230b052 Merge topic 'revise-case-insensitive-command'
b1a05d6c76 Revise implementation of case-insensitive command names

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2024
2018-05-24 09:56:23 -04:00
Kitware Robot 2d480a1c14 CMake Nightly Date Stamp 2018-05-24 00:01:04 -04:00
Kitware Robot 0e6bc9d025 CMake Nightly Date Stamp 2018-05-23 00:01:05 -04:00
Vitaly Stakhovsky 45c4a75d27 cmVisualStudio10TargetGenerator: make sure each Elem has right scope
Prepare for future RAII
2018-05-22 11:28:11 -04:00
Florian Jacomme b1a05d6c76 Revise implementation of case-insensitive command names
Store both the as-written and lower-case command names and use
the latter to avoid case-insensitive string comparisons.

With this I obtain 2-6% speed increase (on Windows) for the configure
step with no significant changes in memory usage.  A case-insensitive
comparison is a lot slower than just calling `==` because the operator
will use things like memcmp, so prefer the latter.

The `cmSystemTools::LowerCase` function allocates a new string each time
it is called, so before this change we were allocating in:

* cmMakefile::Configure two times for each function
  (to look for `cmake_minimum_required` and `project`)
* cmMakefile::ExecuteCommand twice by function by calling
  cmState::GetCommand and copying the name

Now we are only allocating once by function instead of four.
2018-05-22 10:56:24 -04:00
Kitware Robot e6a32f0525 CMake Nightly Date Stamp 2018-05-22 00:01:11 -04:00
Brad King 90e7103fc6 Merge topic 'pr.copy_data_check'
a203fcc63d cmake: Teach '-E tar' to report errors copying data

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2075
2018-05-21 11:05:42 -04:00
Brad King 64ec064212 Merge topic 'eclipse-custom-content'
fd0da95f63 Eclipse: Add property to include additional contents in .cproject file

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2088
2018-05-21 11:04:04 -04:00
Brad King 7b42ffce09 Merge topic 'PDBDirectoryGenExpression'
79ca546ed2 Add generator expression support to PDB_OUTPUT_DIRECTORY target property

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2083
2018-05-21 11:02:42 -04:00
Marian Klymov 79ca546ed2 Add generator expression support to PDB_OUTPUT_DIRECTORY target property
Fixes: #16365
2018-05-21 11:00:12 -04:00
Brad King 963a33f4a8 Merge topic 'vs-remove-stream'
790fc415b1 cmVisualStudio10TargetGenerator: remove BuildFileStream member

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2082
2018-05-21 10:58:53 -04:00
Brad King 4d6f4500df Merge topic 'update-kwsys'
b730097788 Merge branch 'upstream-KWSys' into update-kwsys
1f52cb087a KWSys 2018-05-18 (5357cfc4)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2090
2018-05-21 09:52:08 -04:00
Kitware Robot e5463ec917 CMake Nightly Date Stamp 2018-05-21 00:01:05 -04:00
Kitware Robot 32cf27ada5 CMake Nightly Date Stamp 2018-05-20 00:01:08 -04:00
Kitware Robot 76affcb6b4 CMake Nightly Date Stamp 2018-05-19 00:01:07 -04:00
Melanie Cappelaere fd0da95f63 Eclipse: Add property to include additional contents in .cproject file
Similar to ECLIPSE_EXTRA_NATURES which can be used to add a third party
nature to the .project, this property offers the possibility to inject
third party contents into the .cproject.

An example of where this is useful is MCUXpresso. This is an IDE based
on Eclipse. Compiling through CMake generated Eclipse projects works
fine by using a custom toolchain. However, in order to be able to debug
using such a project, an extra storageModule specific to the target
board is needed in the cproject.
2018-05-18 10:12:19 -04:00
Ruslan Baratov a203fcc63d cmake: Teach '-E tar' to report errors copying data
The `copy_data` function checks for errors but the caller ignored
them.  Simplify its return type and add a check to the caller.
2018-05-18 10:04:18 -04:00
Brad King b730097788 Merge branch 'upstream-KWSys' into update-kwsys
* upstream-KWSys:
  KWSys 2018-05-18 (5357cfc4)
2018-05-18 09:52:13 -04:00
Kitware Robot 4eea43fce7 CMake Nightly Date Stamp 2018-05-18 00:01:05 -04:00
Brad King b6ce5aef0f Merge topic 'makefile-ar-limits'
b6c49713b3 Makefile: Fix command line limits for static libs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2078
2018-05-17 09:06:56 -04:00
Brad King 4ba7db4ff3 Merge topic 'pr.file_write_check'
2db4945150 file(WRITE): Report errors during write operation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2076
2018-05-17 09:06:22 -04:00
Brad King 10a6c5a842 Merge topic 'update-kwsys'
3333e2791b Help: Add release note about 'copy_directory' behavior change
24367563d7 Merge branch 'upstream-KWSys' into update-kwsys
1e0a2e9377 KWSys 2018-05-15 (5f757898)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2080
2018-05-17 09:05:09 -04:00
Kitware Robot e81e024330 CMake Nightly Date Stamp 2018-05-17 00:01:06 -04:00
Vitaly Stakhovsky 790fc415b1 cmVisualStudio10TargetGenerator: remove BuildFileStream member
Stream object is now local to `Generate()`
2018-05-16 12:59:00 -04:00
Viktor Mukha b6c49713b3 Makefile: Fix command line limits for static libs
I have been hitting the Windows command-line limit when cross-compiling
static library (POCO) and having more than 8000 characters in the call
to "ar". Calculating exact limits here are tricky, since this particular
limit will only take into account object file strings, which is correct
for response files, but not for the archive rules (link.txt files),
since they also contain the call to "ar" and its arguments.
Also, there can be other additional arguments if "ar" tool is wrapped
into something else, so it is a good idea to leave more space than
trying to exactly fit the limit.
Since response files use half of the limit as a heuristic, we reproduce
it here for consistency.
2018-05-16 12:48:20 -04:00
Ruslan Baratov 2db4945150 file(WRITE): Report errors during write operation
We already report an error if the file cannot be opened for writing.
Add another check to report an error if a write operation itself fails.
2018-05-16 10:34:28 -04:00
Brad King cd5d6dfada Merge topic 'subdirectory-linking'
c9349cc1b9 target_link_libraries: Allow use with targets in other directories

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2040
2018-05-16 10:03:39 -04:00
Brad King c8c07c24dd Merge topic 'dotnet_target_fw_init'
71a033616a added CMAKE_DOTNET_TARGET_FRAMEWORK_VERSION variable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2032
2018-05-16 10:02:48 -04:00
Brad King d32ceffb1e Merge topic 'vs-nitpicks'
b88e138369 cmVisualStudio10TargetGenerator: minor code cleanup

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2063
2018-05-16 10:01:57 -04:00
Brad King 24367563d7 Merge branch 'upstream-KWSys' into update-kwsys
* upstream-KWSys:
  KWSys 2018-05-15 (5f757898)

Fixes: #16001
2018-05-16 09:54:08 -04:00
Kitware Robot c698dbd45d CMake Nightly Date Stamp 2018-05-16 00:01:05 -04:00