Commit Graph

26218 Commits

Author SHA1 Message Date
Brad King 3744bd0a0a Merge topic 'xcodescheme2'
413b71485a Xcode: Create Xcode schemes per target

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3098
2019-03-22 09:16:02 -04:00
Kitware Robot 94be5f9344 CMake Nightly Date Stamp 2019-03-22 00:01:09 -04:00
Harry Mallon 413b71485a Xcode: Create Xcode schemes per target 2019-03-21 16:50:41 +00:00
Kyle Edwards fac093802a Merge topic 'tar-improve-error-handling'
ea9a2c1759 cmake: tar: Parse 'cmake -E tar' arguments

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3081
2019-03-21 10:50:38 -04:00
Brad King e09c606eb4 Merge topic 'dont_do_compiler_feature_checks_for_version_with_no_features'
85415afbdc CompileFeatures: Don't try_compile for language levels with no features
616282a5ce CMake: Provide language level compile features lists

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3128
2019-03-21 10:03:10 -04:00
Brad King 732b7b9dd0 Merge topic 'ctest-devirtualize-handlers'
5a72dbd40c cmCTest: Remove dead code
a5eeb0310d cmCTest: Cleanup typedefs
71a3391b5f cmCTest: Use default member initialization
b172a81d55 cmCTest: Use concrete accessor functions for TestingHandlers
46090c2337 cmCTest: Store TestingHandlers by value
da5ee509b2 cmCTest: Move all data members to private implementation struct
670d27da64 cmCTest: Remove friend declarations
9406844616 cmCTest: De-inline all member functions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Daniel Pfeifer <daniel@pfeifer-mail.de>
Merge-request: !3114
2019-03-21 09:44:13 -04:00
Brad King fbc0f355ea Merge topic 'eclipse-interface-lib'
d3dcf8d774 Eclipse: Fix extra generator to not crash on interface libraries

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3125
2019-03-21 09:37:59 -04:00
Kitware Robot be9a133cbf CMake Nightly Date Stamp 2019-03-21 00:01:07 -04:00
Robert Maynard 616282a5ce CMake: Provide language level compile features lists
Now CMake stores what compile features are associated with each
language level and exposes them as global properties.
2019-03-20 09:10:07 -07:00
Regina Pfeifer 5a72dbd40c cmCTest: Remove dead code 2019-03-20 11:41:29 -04:00
Regina Pfeifer a5eeb0310d cmCTest: Cleanup typedefs 2019-03-20 11:41:29 -04:00
Regina Pfeifer 71a3391b5f cmCTest: Use default member initialization 2019-03-20 11:41:29 -04:00
Regina Pfeifer b172a81d55 cmCTest: Use concrete accessor functions for TestingHandlers 2019-03-20 11:39:14 -04:00
Brad King 23a84ac990 Merge topic 'dedup-path-normalization'
b52d9d6960 cmSystemTools: Drop unused CollapseCombinedPath method
a13a5c948e Replace use of CollapseCombinedPath with CollapseFullPath

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Sebastian Holtermann <sebholt@xwmw.org>
Merge-request: !3117
2019-03-20 11:32:12 -04:00
Brad King d3dcf8d774 Eclipse: Fix extra generator to not crash on interface libraries
Do not process interface libraries in ways that expect build information
to be present internally.  This filtering was left out of the extra
generator accidentally when interface libraries were introduced, but it
worked by accident until commit 76ad2ecb50 (Order SYSTEM include
directories after non-system directories, 2018-04-13, v3.12.0-rc1~179^2)
added a code path that was not tolerated.

Fixes: #18363
2019-03-20 10:52:31 -04:00
Bartosz Kosiorek ea9a2c1759 cmake: tar: Parse 'cmake -E tar' arguments 2019-03-20 09:28:49 -04:00
Kitware Robot 51f3a76ab2 CMake Nightly Date Stamp 2019-03-20 00:01:06 -04:00
Kyle Edwards 8c0b7aa17d Merge topic 'cmake--install'
73f23d1e00 cmake: add '--install <dir>' option

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Alex Turbov <i.zaufi@gmail.com>
Acked-by: Bartosz <gang65@poczta.onet.pl>
Acked-by: Cristian Adam <cristian.adam@gmail.com>
Rejected-by: Alex Turbov <i.zaufi@gmail.com>
Merge-request: !3069
2019-03-19 13:39:18 -04:00
Kyle Edwards f1e53266e9 Merge topic 'improve-tar-command'
8634576dcb cmake: Don't interrupt archive creation if unable to read a file.
c7c6a4a2cc Help: Update 'tar' documentation with supported arguments
7c47fd8cd1 cmake: tar: Display warning when no files provided during archive creation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3080
2019-03-19 13:37:59 -04:00
Brad King b52d9d6960 cmSystemTools: Drop unused CollapseCombinedPath method
All call sites have been converted to `CollapseFullPath`, so the
now-unused `CollapseCombinedPath` can be removed.

Fixes: #19050
2019-03-19 10:00:08 -04:00
Brad King a13a5c948e Replace use of CollapseCombinedPath with CollapseFullPath
`CollapseCombinedPath` was introduced by commit 551d3343cd (cmDependsC:
Collapse relative include paths, 2013-06-19, v2.8.12~237^2) where the
existing `CollapseFullPath` should have been used instead.  Then its use
proliferated slightly.  Since `CollapseCombinedPath` is less widely used
and less robust (see issue #19049), use `CollapseFullPath` everywhere
instead.

Issue: #19050
2019-03-19 09:57:23 -04:00
Brad King d2101e944a Merge topic 'xcodegen-use-std-string'
482d9ef9a8 cmGlobalXCodeGenerator: Prefer std::string over char*

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3111
2019-03-19 08:59:23 -04:00
Brad King 3c4f92cf5b Merge topic 'is-valid-utf8'
53184a727d cm_utf8: add an is_valid function

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3104
2019-03-19 08:58:39 -04:00
Brad King 0587c4b247 Merge topic 'file_time_comparison'
ec3c968de2 cmake: Use scopes to limit temporary object lifetime
1de0c827a1 cmDependsC: Read cache file modification time only once
5536cec46e Rename cmFileTimeCache::FileTimeCompare to cmFileTimeCache::Compare
98d4846953 Rename cmFileTimeCache::FileTimesDiffer to cmFileTimeCache::DifferS
a6d75a1ce0 Substitute FileComparison in variable names with FileTimeCache
216416219a Rename cmFileTimeComparison to cmFileTimeCache
3160258393 cmFileTimeComparison: Replace anonymous private class with std::map
103aa9e46a cmFileTimeComparison: Use cmFileTime internally
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Brad King <brad.king@kitware.com>
Merge-request: !3101
2019-03-19 08:55:18 -04:00
Kitware Robot e67e4dbaad CMake Nightly Date Stamp 2019-03-19 00:01:08 -04:00
Regina Pfeifer 46090c2337 cmCTest: Store TestingHandlers by value 2019-03-18 22:55:51 +01:00
Regina Pfeifer da5ee509b2 cmCTest: Move all data members to private implementation struct 2019-03-18 22:55:50 +01:00
Regina Pfeifer 670d27da64 cmCTest: Remove friend declarations 2019-03-18 22:25:50 +01:00
Regina Pfeifer 9406844616 cmCTest: De-inline all member functions 2019-03-18 22:25:50 +01:00
Ben Boeckel 53184a727d cm_utf8: add an is_valid function 2019-03-18 14:18:13 -04:00
Bartosz Kosiorek 8634576dcb cmake: Don't interrupt archive creation if unable to read a file.
Rationale:
Currently during creation of archive by 'tar',
if error appears, it interrupt archive creation.
As a result only part of files are archived

This behaviour is not consistent with 'copy_directory', native 'tar'
and other command behaviour.
With this Merge Request this behaviour is fixed.
2019-03-18 17:55:35 +01:00
Bartosz Kosiorek 7c47fd8cd1 cmake: tar: Display warning when no files provided during archive creation 2019-03-18 17:08:20 +01:00
Brad King 875f49cc58 Merge topic 'utf8-fixes'
fb5de060bc cm_utf8: reject codepoints above 0x10FFFF
a11e5e021b cm_utf8: reject UTF-16 surrogate half codepoints
7111873efd testUTF8: add more test cases
bba2b1c89b testUTF8: comment why sequences are invalid

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3097
2019-03-18 11:28:52 -04:00
Sebastian Holtermann ec3c968de2 cmake: Use scopes to limit temporary object lifetime 2019-03-18 15:09:11 +01:00
Sebastian Holtermann 1de0c827a1 cmDependsC: Read cache file modification time only once
Using cmFileTime to store and compare file times in cmDependsC allows us to
read the cache file modification time only once instead of over and over again
for each comparison.
2019-03-18 15:09:11 +01:00
Sebastian Holtermann 5536cec46e Rename cmFileTimeCache::FileTimeCompare to cmFileTimeCache::Compare 2019-03-18 15:09:11 +01:00
Sebastian Holtermann 98d4846953 Rename cmFileTimeCache::FileTimesDiffer to cmFileTimeCache::DifferS 2019-03-18 15:09:11 +01:00
Sebastian Holtermann a6d75a1ce0 Substitute FileComparison in variable names with FileTimeCache 2019-03-18 15:09:11 +01:00
Sebastian Holtermann 216416219a Rename cmFileTimeComparison to cmFileTimeCache
The name `cmFileTimeCache` reflects the functionality of the class more
appropriately.
2019-03-18 15:09:11 +01:00
Sebastian Holtermann 3160258393 cmFileTimeComparison: Replace anonymous private class with std::map
After the switch to `cmFileTime`, the anonymous private class of
`cmFileTimeComparison` held only a `std::map`.  This moves the
`std::map` to the `cmFileTimeComparison` class itself and removes the
instantiation of an anonymous private class.
2019-03-18 15:09:10 +01:00
Sebastian Holtermann 103aa9e46a cmFileTimeComparison: Use cmFileTime internally
This replaces OS dependent code in `cmFileTimeComparison` with `cmFileTime`
instances that provide the required file time load and comparison operations.

A new public `cmFileTimeComparison::Load` method is introduced that,
for a given file name, updates the `cmFileTimeComparison` cache on demand and
returns a `cmFileTime` instance on success.
2019-03-18 15:09:10 +01:00
Sebastian Holtermann 6f24c4e93f New cmFileTime class
The new cmFileTime class stores the file modification time as an OS independent
nanosecond count.  Its main use is to load and compare file modification times
in nanosecond and second resolution.
2019-03-18 15:09:10 +01:00
Kitware Robot b06f8c93e5 CMake Nightly Date Stamp 2019-03-18 00:01:06 -04:00
Gregor Jasny 482d9ef9a8 cmGlobalXCodeGenerator: Prefer std::string over char* 2019-03-17 20:41:35 +01:00
Kitware Robot 283330976f CMake Nightly Date Stamp 2019-03-17 00:01:07 -04:00
Jiang Yi 73f23d1e00 cmake: add '--install <dir>' option
Fixes: #19023
2019-03-17 01:31:25 +08:00
Kitware Robot 49f606f3bb CMake Nightly Date Stamp 2019-03-16 00:01:09 -04:00
Brad King 3261f23870 Merge topic 'export-package-default-off'
9bede5c4ce export: Disable PACKAGE mode user package registry by default

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Lukas Mosimann <lumosimann@gmail.com>
Merge-request: !3041
2019-03-15 10:45:51 -04:00
Brad King a6d8165dd2 Merge topic 'ninja-dyndep-touchups'
76e6e01c6c cmNinjaTargetGenerator: use a different depfile for preprocessing
414332ff57 cmake_ninja_dyndep: don't duplicate slashes

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3093
2019-03-15 10:27:55 -04:00
Robert Maynard 9bede5c4ce export: Disable PACKAGE mode user package registry by default
The user package registry populated by the `export()` command causes
side effects outside the build and source directories.  Such effects
should be opt-in rather than op-out.  Introduce a policy to change
default behavior of `export(PACKAGE)` to do nothing.
2019-03-15 10:24:47 -04:00