Commit Graph

27738 Commits

Author SHA1 Message Date
Brad King
d8d4924d98 VS: Fix support for v142 toolset minor versions in VS 16.5+
The fix in commit 5117389931 (VS: Fix support for v142 toolset minor
versions, 2019-10-01, v3.16.0-rc1~32^2) worked around a bug in VS's
placement of toolset files.   VS 16.5 will fix that bug and restore the
original pattern for locations of toolset files.  Update our logic to
look for both possibilities.

Issue: #19779
2019-12-12 11:28:34 -05:00
Brad King
4771c4e447 CMake 3.16.1 2019-12-10 09:40:28 -05:00
Brad King
b2ce834480 Merge topic 'toc_on_ppc' into release-3.16
90d8bd2deb Merge branch 'backport-3.15-toc_on_ppc' into backport-3.16-toc_on_ppc
b35926e260 Check for support before adding bigtoc linker flag
958f858ad8 Check for support before adding bigtoc linker flag
8c7b7df788 bootstrap: Add target_link_options command

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4122
2019-12-10 09:16:20 -05:00
Alexander Grund
958f858ad8 Check for support before adding bigtoc linker flag
Fixes: #20076
2019-12-09 11:37:40 -05:00
Alexander Grund
8c7b7df788 bootstrap: Add target_link_options command 2019-12-09 11:37:37 -05:00
Brad King
21ba61c50c Merge topic 'unity-object-libraries' into release-3.16
fa93b4a59b Unity: Proper handling of object libraries
5ae07e7166 Unity: Generic source file handling for all generators
f742f7ac1f Unity/PCH: Skip more target types when adding automatic sources

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4110
2019-12-09 10:16:31 -05:00
Brad King
47c6b6cdee Merge topic 'pch-reuse-importlib' into release-3.16
93becd61d1 PCH: Use the target's PREFIX for building the pdb file name

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4114
2019-12-09 10:15:19 -05:00
Cristian Adam
93becd61d1 PCH: Use the target's PREFIX for building the pdb file name
Also copy the REUSE_FROM pdb file only if the file is newer than the
existing one.

Fixes: #19731
Fixes: #20068
2019-12-08 20:22:34 +01:00
Cristian Adam
fa93b4a59b Unity: Proper handling of object libraries
Fixes: #20051
2019-12-07 15:44:38 +01:00
Cristian Adam
5ae07e7166 Unity: Generic source file handling for all generators 2019-12-07 15:44:31 +01:00
Cristian Adam
f742f7ac1f Unity/PCH: Skip more target types when adding automatic sources
Besides INTERFACE_LIBRARY, skip also UTILITY and GLOBAL_TARGET
target types
2019-12-07 14:51:34 +01:00
Brad King
1b4482f65d CMake 3.16.0 2019-11-26 09:18:07 -05:00
Brad King
b1175431c3 Merge topic 'ctest-resource-fixes' into release-3.16
a033bafbe0 Help: Clarify how tests are run if no resource spec file is specified
a64ba0235f CTest: Clarify that resource requirements can be split
f9f294f5fa CTest: Add version field to resource spec file

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4080
2019-11-26 09:12:33 -05:00
Kyle Edwards
f9f294f5fa CTest: Add version field to resource spec file
Fixes: #20007
2019-11-25 11:08:27 -05:00
Cristian Adam
43ffd2c35c Unity: No repeated path for internal generated unity files
Fixes: #20002
2019-11-25 13:33:44 +01:00
Brad King
1e68fb0c91 Xcode: Set source file type for Objective C/C++
Fixes: #19998
2019-11-20 09:43:00 -05:00
Brad King
d25d75687d CMake 3.16.0-rc4 2019-11-18 13:44:31 -05:00
Brad King
1c09b8c164 Merge topic 'cpack-custom-templates' into release-3.16
7d6ab5dc5b CPack: Restore support for custom package configuration templates

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kyle Edwards <kyle.edwards@kitware.com>
Merge-request: !4054
2019-11-18 09:50:57 -05:00
Brad King
6cb9867ba3 Merge topic 'pch-reuse-no-prop' into release-3.16
bb4c2781ce PCH: Do not issue an error on duplicate target_precompile_headers call

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4046
2019-11-18 09:46:26 -05:00
Brad King
7d6ab5dc5b CPack: Restore support for custom package configuration templates
Refactoring in commit 98617f1be0 (Refactor: Move CPack internal files to
`Internal/CPack/` directory, 2019-07-09, v3.16.0-rc1~449^2) accidentally
changed the public-facing names of the templates.  The name passed to
`FindTemplate` is searched in `CMAKE_MODULE_PATH` and should not change.
Remove the `Internal/CPack/` prefix on the names added by that commit.
Teach `FindTemplate` to use our builtin default directly when the
public-facing name is not found in `CMAKE_MODULE_PATH`.

Fixes: #19979
2019-11-15 10:38:08 -05:00
Cristian Adam
bb4c2781ce PCH: Do not issue an error on duplicate target_precompile_headers call
Fixes: #19970
2019-11-15 09:47:56 -05:00
Cristian Adam
6a818b6931 ObjC: Proper initialization of ObjC/XX standard properties
Fix logic added by commit 81566557d5 (ObjC: Initialize ObjC/XX standard
properties from C/C++ counterparts, 2019-11-09) to account for cases
when the CXX standard is not explicitly set.  Also, do not copy the
`*_STANDARD_REQUIRED` and `*_EXTENSIONS` properties unless we copied the
`*_STANDARD` property.
2019-11-14 11:05:56 -05:00
Cristian Adam
81566557d5 ObjC: Initialize ObjC/XX standard properties from C/C++ counterparts
Fixes: #19937
2019-11-12 19:41:25 +01:00
Brad King
eae743bf17 Merge topic 'unity-HEADER_FILE_ONLY' into release-3.16
9a5418320e Unity: Don't include sources with HEADER_FILE_ONLY property set

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4023
2019-11-12 09:51:15 -05:00
Brad King
b197d20c08 Merge topic 'objc-xcode-flags' into release-3.16
bb42e1ed43 ObjC: Add OBJC/OBJCXX flags to Xcode projects

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4020
2019-11-12 09:43:11 -05:00
Brad King
7a08f0d8dd Merge topic 'resolve-full-path-at-generate-time' into release-3.16
48d1456b3d UnityBuild: Resolve full paths of unity source includes
ec2f130aa9 cmFileAPI: Resolve full path in PCH source comparison

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4029
2019-11-12 09:34:11 -05:00
Craig Scott
cba091d3a9 Merge topic 'pch-no-duplicates' into release-3.16
e01935ac9d PCH: No repeated path for internal generated PCH files

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4030
2019-11-12 08:28:46 -05:00
Craig Scott
00f5e02060 Merge topic 'remove-CPACK_INSTALL_CMAKE_CONFIGURATIONS' into release-3.16
1d1fa5d3e4 Tests: Add RunCMake.CPackCommandLine case for multi-config package
108207cc84 CPack: Remove CPACK_INSTALL_CMAKE_CONFIGURATIONS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4025
2019-11-12 08:16:31 -05:00
Alex Turbov
108207cc84 CPack: Remove CPACK_INSTALL_CMAKE_CONFIGURATIONS
In commit da5ac4bb60 (cpack: Add `CPACK_INSTALL_CMAKE_CONFIGURATIONS`
variable, 2019-07-10, v3.16.0-rc1~165^2) we added both the variable
and support for `cpack -C` with multiple configurations.  Drop the
variable because the `package` target cannot ensure that all of the
configurations are built.  Keep the command-line interface so that
it can be used manually in scripts.

Fixes: #19918
2019-11-11 14:15:09 -05:00
Cristian Adam
bb42e1ed43 ObjC: Add OBJC/OBJCXX flags to Xcode projects
Fixes: #19936
2019-11-11 17:43:17 +01:00
Brad King
5e328c6d74 Merge topic 'objc-trycompile' into release-3.16
7447aa4b34 ObjC: Add try_compile support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4006
2019-11-11 10:25:47 -05:00
Cristian Adam
9a5418320e Unity: Don't include sources with HEADER_FILE_ONLY property set
Fixes: #19946
Fixes: #19947
Co-authored-by: Craig Scott <craig.scott@crascit.com>
2019-11-11 14:10:18 +01:00
Cristian Adam
e01935ac9d PCH: No repeated path for internal generated PCH files
Fixes: #19952
2019-11-11 13:21:12 +01:00
Daniel Eiband
48d1456b3d UnityBuild: Resolve full paths of unity source includes
Issue: 19927
2019-11-11 13:05:31 +01:00
Daniel Eiband
ec2f130aa9 cmFileAPI: Resolve full path in PCH source comparison
Issue: 19927
2019-11-11 13:03:29 +01:00
Cristian Adam
7447aa4b34 ObjC: Add try_compile support
Fixes: #19920
2019-11-09 11:25:32 +01:00
Kyle Edwards
87dcbe0b21 Merge topic 'ctest-resource-groups' into release-3.16
c1435d9812 Help: Fix error in resource allocation example
eb9d945f14 CTest: Rename hardware -> resources for RunCMake tests
c544cb6698 CTest: Rename hardware -> resources for source code
6ce27d3a2e cmCTestMultiProcessHandler: Rename resource locking functions
a7c1e15cc4 CTest: Rename hardware -> resources for CMake variables, command options
73a40b19ff CTest: Rename "Processes" lexer to "ResourceGroups"
af9ed543b0 CTest: Rename PROCESSES test property to RESOURCE_GROUPS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3994
2019-11-07 13:10:57 -05:00
Brad King
02ed66c04b Merge topic 'unity-include-generated' into release-3.16
7ddf462304 Unity build: Include GENERATED files into unity build

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Julien Schueller <schueller@phimeca.com>
Merge-request: !4001
2019-11-07 10:26:49 -05:00
Brad King
0746a3398f Merge topic 'llvm-rc-fix' into release-3.16
f0c00bec1d CMakeVersion.rc: Fix build with llvm-rc

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4003
2019-11-07 10:25:44 -05:00
Cristian Adam
7ddf462304 Unity build: Include GENERATED files into unity build
There is no reason to skip the generated files, in case of problems
one can use the SKIP_UNITY_BUILD_INCLUSION property.

Fixes: #19925
2019-11-06 11:47:15 -05:00
Cristian Adam
f0c00bec1d CMakeVersion.rc: Fix build with llvm-rc
llvm-rc expects versioning as having four items, it fails otherwise.
2019-11-06 10:07:01 -05:00
Brad King
bae7a82ffa Merge topic 'xcode-restore-CMakeLists' into release-3.16
0ce8a5c08d Xcode: Fix generated references to CMakeLists.txt files
9457c95aa0 cmGlobalXCodeGenerator: Mark known source locations

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3999
2019-11-06 09:23:56 -05:00
Brad King
0ce8a5c08d Xcode: Fix generated references to CMakeLists.txt files
Refactoring in commit 2d888e3390 (cmSourceFile: Rename mutating
GetFullPath() overload, 2019-08-29, v3.16.0-rc1~160^2) accidentally left
the paths to `CMakeLists.txt` files empty in generated Xcode project
files.

Fixes: #19927
2019-11-05 14:29:41 -05:00
Brad King
9457c95aa0 cmGlobalXCodeGenerator: Mark known source locations 2019-11-05 14:22:45 -05:00
Craig Scott
c544cb6698 CTest: Rename hardware -> resources for source code 2019-11-05 12:08:35 -05:00
Craig Scott
6ce27d3a2e cmCTestMultiProcessHandler: Rename resource locking functions
Renaming these ahead of other refactoring which will use the
previous names. The previous names more accurately reflect their
purpose after this commit anyway (talking about locking and
unlocking rather than allocating and deallocating).
2019-11-05 12:08:35 -05:00
Craig Scott
a7c1e15cc4 CTest: Rename hardware -> resources for CMake variables, command options
Only changes the user-visible effects of renaming hardware
allocation to resource allocation. Code changes are the minimum
needed to achieve that.
2019-11-05 12:08:35 -05:00
Brad King
73a40b19ff CTest: Rename "Processes" lexer to "ResourceGroups"
The corresponding test property `PROCESSES` has been renamed to
`RESOURCE_GROUPS`.
2019-11-05 12:08:35 -05:00
Brad King
af9ed543b0 CTest: Rename PROCESSES test property to RESOURCE_GROUPS
The `PROCESSES` test property name added for CMake 3.16 is too close to
the existing `PROCESSORS` test property.  Furthermore, the property in
principle specifies groups of resources organized in a way that is
meaningful to a particular test.  The groups may often correspond to
processes but they could have other meanings.  Since the property name
`PROCESSES` has not been in a final 3.16 release yet, simply rename it
to `RESOURCE_GROUPS`.

Fixes: #19914
2019-11-05 12:08:01 -05:00
Brad King
0ec60a4002 Merge branch 'source_group-tree' into release-3.16
Merge-request: !3979
2019-11-05 11:31:16 -05:00