summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* cmStringAlgorithms: Simplify cmJoin using cm::string_viewSebastian Holtermann2019-08-011-19/+10
|
* cmStringAlgorithms: Simplify cmStrCmp using cm::string_viewSebastian Holtermann2019-08-011-21/+14
|
* CMake Nightly Date StampKitware Robot2019-08-011-1/+1
|
* Merge topic 'clang-tidy-8'Brad King2019-07-3110-13/+18
|\ | | | | | | | | | | | | 4af094c8df clang-tidy: Blacklist violations for version 8 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3627
| * clang-tidy: Blacklist violations for version 8Regina Pfeifer2019-07-3011-15/+20
| | | | | | | | | | Check the codebase with clang-tidy version 8, fix the low hanging fruits, blacklist the rest.
* | Merge topic 'fileapi-optimize'Brad King2019-07-311-59/+177
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b61fcdc8bc fileapi: Compute codemodel compile groups without target-wide settings e337e60a50 fileapi: Compute codemodel compile groups before converting to Json d89c0ecf79 fileapi: Generate codemodel Json backtraces earlier 833d9eae4e fileapi: Refactor codemodel defines de-duplication c9c397a14a fileapi: Avoid unnecessary CompileData move Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3621
| * | fileapi: Compute codemodel compile groups without target-wide settingsBrad King2019-07-301-13/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * | fileapi: Compute codemodel compile groups before converting to JsonBrad King2019-07-301-9/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * | fileapi: Generate codemodel Json backtraces earlierBrad King2019-07-301-33/+79
| | | | | | | | | | | | | | | | | | 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.
| * | fileapi: Refactor codemodel defines de-duplicationBrad King2019-07-291-15/+13
| | |
| * | fileapi: Avoid unnecessary CompileData moveBrad King2019-07-291-2/+2
| | |
* | | Merge topic 'ninja-1.10'Brad King2019-07-312-45/+34
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c81a86ee6d Ninja: Record dyndep support by Ninja 1.10 83368b4dd5 Ninja: Drop unused dyndep version check fd58bb83e6 Ninja: Use in-class initialization of global generator members Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Ben Boeckel <ben.boeckel@kitware.com> Merge-request: !3256
| * | | Ninja: Record dyndep support by Ninja 1.10Brad King2019-07-302-4/+10
| | | | | | | | | | | | | | | | | | | | Upstream Ninja 1.10 and above support the `dyndep` feature we need for Fortran.
| * | | Ninja: Drop unused dyndep version checkBrad King2019-07-302-29/+20
| | | | | | | | | | | | | | | | | | | | | | | | Our dyndep support version 1 has been merged to upstream Ninja. We never developed a second dyndep version, so simply drop our checks for different versions.
| * | | Ninja: Use in-class initialization of global generator membersBrad King2019-07-302-16/+8
| | | |
* | | | Merge topic 'ExternalProject-avoid-extra-checkout'Brad King2019-07-311-1/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 627fc5b44f ExternalProject: Avoid unnecessary checkout on clone Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3626
| * | | | ExternalProject: Avoid unnecessary checkout on cloneTetragramm2019-07-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The clone step checks out the cloned branch but is always followed by an explicit checkout of the desired `GIT_TAG`. Tell `git clone` not to check out.
* | | | | Merge topic 'FindPythonInterp-no-version-verify'Brad King2019-07-312-1/+10
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 800c3ab2e0 FindPythonInterp: Document lack of version filtering for plain `python` Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Rolf Eike Beer <eike@sf-mail.de> Merge-request: !3631
| * | | | | FindPythonInterp: Document lack of version filtering for plain `python`Brad King2019-07-302-1/+10
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also drop the `CMakeOnly.MajorVersionSelection-PythonInterp_2` test because some environments now have a plain `python` executable for Python 3. Fixes: #19536
* | | | | Merge branch 'release-3.15'Brad King2019-07-310-0/+0
|\ \ \ \ \
| * \ \ \ \ Merge branch 'source_group-tree-files' into release-3.15Brad King2019-07-301-11/+4
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | Merge-request: !3630
| * \ \ \ \ \ Merge branch 'vs-spectre-off' into release-3.15Brad King2019-07-305-5/+50
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Merge-request: !3629
* | \ \ \ \ \ \ Merge topic 'source_group-tree-files'Brad King2019-07-311-11/+4
|\ \ \ \ \ \ \ \ | | |_|/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 93af8a2583 source_group: Fix regression in relative FILES Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3630
| * | | | | | | source_group: Fix regression in relative FILESBrad King2019-07-301-11/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix the check added in commit 8d93815d20 (source_group command ensures that FILES arguments are actually files, 2019-04-25, v3.15.0-rc1~195^2) to convert to an absolute path before checking for existence. Also simplify the conversion to an absolute path. Fixes: #19454
* | | | | | | | Merge topic 'vs-spectre-off'Brad King2019-07-315-5/+50
|\ \ \ \ \ \ \ \ | | |_|/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f9b7c660d7 VS: Fix mapping of `-Qspectre-` flag Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3629
| * | | | | | | VS: Fix mapping of `-Qspectre-` flagBrad King2019-07-305-5/+50
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The mapping for this flag was added by commit 43aa632f57 (VS: Populate `-Qspectre-` flag table entry for v142, 2019-01-24, v3.14.0-rc1~74^2~7). However, it did not do anything because the special logic added by commit bb60ed6e72 (VS: Add flag table entry for -Qspectre, 2018-10-08, v3.13.0-rc1~4^2) to move the `SpectreMitigation` element from `ClCompile` to the top level only handled the presence of the setting and not its value. Extend the special logic to carry the value too. Fixes: #19535
* | | | | | | CMake Nightly Date StampKitware Robot2019-07-311-1/+1
| |_|/ / / / |/| | | | |
* | | | | | Merge branch 'release-3.15'Brad King2019-07-300-0/+0
|\ \ \ \ \ \ | | |/ / / / | |/| | | |
| * | | | | Merge branch 'swift-with-interface-libs' into release-3.15Brad King2019-07-292-8/+12
| |\ \ \ \ \ | | |/ / / / | |/| | | | | | | | | | Merge-request: !3624
* | | | | | Merge topic 'find_more_binutils'Brad King2019-07-301-16/+26
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 993fe2b4af CMakeFindBinUtils: add some more binutils 5412d63714 CMakeFindBinUtils: add missing llvm alternatives 3a82ef78eb CMakeFindBinUtils: Rename and unset variables for additional names Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3584
| * | | | | | CMakeFindBinUtils: add some more binutilsNorbert Lange2019-07-231-1/+7
| | | | | | |
| * | | | | | CMakeFindBinUtils: add missing llvm alternativesNorbert Lange2019-07-231-6/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | LLVM 8.0 already ships with alternatives for all current Binutils. Enable them.
| * | | | | | CMakeFindBinUtils: Rename and unset variables for additional namesNorbert Lange2019-07-231-13/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | use the name pattern `_CMAKE_ADDITIONAL_<PROGRAM_NAME>_NAMES`, and unset those variables at the end of the function
* | | | | | | Merge topic 'swift-with-interface-libs'Brad King2019-07-302-8/+12
|\ \ \ \ \ \ \ | | |_|/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 601fe84bd1 Swift: Restore support for enabling with INTERFACE libraries Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Wanderley GuimarĂ£es da Silva <wanderley.guimaraes@gmail.com> Acked-by: Guillaume Egles <gegles@gmail.com> Merge-request: !3624
| * | | | | | Swift: Restore support for enabling with INTERFACE librariesBrad King2019-07-292-8/+12
| | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The check added in commit b06f4c8a74 (Swift: disallow WIN32_EXECUTABLE properties, 2019-05-31, v3.15.0-rc1~9^2) makes sense only for executables because the `WIN32_EXECUTABLE` property is defined only for them. Running the check on other target types, particularly those that do not link such as INTERFACE libraries, violates internal assumptions. In particular, `GetLinkerLanguage` should not be called on such targets. Fixes: #19528
* | | | | | Merge topic 'multipackage_tutorial_compiles'Brad King2019-07-302-6/+13
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 98164b707f Tutorial: MultiPackage now correctly compiles Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3594
| * | | | | | Tutorial: MultiPackage now correctly compilesRobert Maynard2019-07-252-6/+13
| | | | | | |
* | | | | | | Merge topic 'cmStringAlgorithms'Kyle Edwards2019-07-3078-165/+216
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f71f7ce3f0 cmStringAlgorithms: Move string functions to the new cmStringAlgorithms.h Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3618
| * | | | | | | cmStringAlgorithms: Move string functions to the new cmStringAlgorithms.hSebastian Holtermann2019-07-2978-165/+216
| | |_|_|/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | This adds the `cmStringAlgorithms.h` header and moves all string functions from `cmAlgorithms.h` to `cmStringAlgorithms.h`.
* | | | | | | Merge topic 'function-blocker-stack'Kyle Edwards2019-07-302-46/+30
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 020478dbea cmMakefile: Keep function blockers in a stack Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3613
| * | | | | | | cmMakefile: Keep function blockers in a stackRegina Pfeifer2019-07-262-46/+30
| | |_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | Highlight the fact that we only ever operate on the top element.
* | | | | | | Merge topic 'cmake-version'Craig Scott2019-07-309-79/+98
|\ \ \ \ \ \ \ | |_|_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fe2c558ba6 CMakeVersion: Preserve Git information during 'git archive' 0505a66cbf CMakeVersion: Add generic '-git' suffix when no git info is available f7bf08754b CMakeVersion: Provide Git information in non-exact release versions ac48259333 CMakeVersion: Re-order logic to obviate addition of each component 311f232f7a CMakeVersion: De-duplicate variable initialization 2f608566b4 CMakeVersion: Factor git execution into helper macro 74ff80323c CMakeVersion: Use FindGit module to find Git e1e7986c00 CMakeVersion: Consider Git even with just a `.git` file ... Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3622
| * | | | | | CMakeVersion: Preserve Git information during 'git archive'Brad King2019-07-292-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use `export-subst` to get information about the Git commit used to produce an archive.
| * | | | | | CMakeVersion: Add generic '-git' suffix when no git info is availableBrad King2019-07-291-0/+6
| | | | | | |
| * | | | | | CMakeVersion: Provide Git information in non-exact release versionsBrad King2019-07-291-9/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Our exact release commits have a subject of the form `CMake <version>`. Distinguish development on a release branch in commits after such a version but before the next release by providing Git information.
| * | | | | | CMakeVersion: Re-order logic to obviate addition of each componentBrad King2019-07-291-16/+19
| | | | | | |
| * | | | | | CMakeVersion: De-duplicate variable initializationBrad King2019-07-291-4/+2
| | | | | | |
| * | | | | | CMakeVersion: Factor git execution into helper macroBrad King2019-07-291-24/+23
| | | | | | |
| * | | | | | CMakeVersion: Use FindGit module to find GitBrad King2019-07-291-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We now require at least CMake 3.1 to build, and that has the FindGit module.
| * | | | | | CMakeVersion: Consider Git even with just a `.git` fileBrad King2019-07-291-1/+1
| | | | | | |