Commit Graph

1019 Commits

Author SHA1 Message Date
Ben Boeckel ec479f101f cmLocalGenerator: collapse the path after construction
The path may contain `..` or `.` components naïvely, so compute them out
before letting the generator handle them.
2020-01-16 13:56:30 -05:00
Ben Boeckel fd0ba705ce add_custom_command: check if a relative path should be an in-source path
This still is broken for dependencies on generated paths where they get
generated to the source directory rather than the build directory
however, but there's no way to determine that is the case.

Fixes: #20194
2020-01-16 13:54:26 -05:00
Ben Boeckel fd84f510f8 cmLocalGenerator: simplify the current source dir query 2020-01-16 13:54:25 -05:00
Brad King 6e6f5afd03 Merge topic 'unity-lang-filename'
274a6f3699 Unity Build: include language in generated source file name

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4223
2020-01-15 13:37:33 -05:00
Cristian Adam 274a6f3699 Unity Build: include language in generated source file name
Fixes: #20206
2020-01-14 18:48:08 +01:00
Marc Chevrier f466cea3c9 cmMakefile: modernize memory management 2020-01-14 11:03:07 +01:00
Brad King 24d143e0f6 Merge topic 'objc-visibility-inlines'
7347e2f830 ObjC: Add VISIBLITY_INLINES_HIDDEN support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4199
2020-01-13 10:22:06 -05:00
Cristian Adam 7347e2f830 ObjC: Add VISIBLITY_INLINES_HIDDEN support
Fixes: #20193
2020-01-10 16:31:27 +01:00
Brad King 0607a50bb3 Merge topic 'add-header-cmext-algorithm'
f7d12609f0 Refactoring: use append functions from cmext/algorithm
a38d04c076 Refactoring: introduce header cmext/algorithm with append functions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4131
2019-12-18 09:32:03 -05:00
Brad King 64e2891cbd Merge topic 'stdstring-target'
c34b4497f8 cmTarget: add std::string overloads

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4137
2019-12-17 11:09:20 -05:00
Brad King 671ed5b123 Merge topic 'fat-ios'
a9b41195d2 Handle multi-arch sysroots on Apple platforms
372c89ea38 Refactor -arch and -isysroot code usage
7a44e16d7f Refactor SDK name to path into a function
777d364913 Use xcrun instead of xcodebuild for resolving SDK path

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4125
2019-12-17 11:07:09 -05:00
Marc Chevrier f7d12609f0 Refactoring: use append functions from cmext/algorithm 2019-12-17 10:44:02 +01:00
Vitaly Stakhovsky c34b4497f8 cmTarget: add std::string overloads 2019-12-14 09:30:28 -05:00
Kyle Edwards 5a8a9f7229 Ninja: Add multi-config variant
Co-Authored-by: vector-of-bool <vectorofbool@gmail.com>
2019-12-13 10:51:46 -05:00
Tor Arne Vestbø a9b41195d2 Handle multi-arch sysroots on Apple platforms 2019-12-13 16:35:38 +01:00
Cristian Adam 372c89ea38 Refactor -arch and -isysroot code usage 2019-12-11 12:45:16 +01:00
Robert Maynard 2467a2b318 CUDA: Add cuda meta-features (e.g. `cuda_std_11`) support 2019-12-10 17:56:48 -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 bde1bc7386 Merge topic 'unity-object-libraries'
fc99130752 Merge branch 'backport-unity-object-libraries' into unity-object-libraries
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
Brad King 835f1bcbde Merge topic 'pch-reuse-importlib'
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
Brad King fc99130752 Merge branch 'backport-unity-object-libraries' into unity-object-libraries 2019-12-08 11:21:38 -05: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
Brad King edb6aa98de Merge topic 'delay-custom-command-creation'
777ceaea94 cmMakefile: Delay custom command creation
4e37508c85 cmLocalGenerator: Refactor to use cmMakeSingleCommandLine
96e5042e46 cmCustomCommand: Explicitly pass backtrace on construction
3dc084ebc1 cmMakefile: Explicitly pass backtrace to GetCustomCommandTarget
e8360afbf7 cmPluginAPI: Correct typo in documentation of FinalPass
bf76a6b801 cmMakefile: Delay CheckTargetProperties and FinalPass to generate time

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3865
2019-12-04 14:22:50 -05:00
Brad King 7525f0ec6c Merge topic 'unity-no-duplicate-path'
43ffd2c35c Unity: No repeated path for internal generated unity files

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4077
2019-11-26 08:55:09 -05:00
Cristian Adam 43ffd2c35c Unity: No repeated path for internal generated unity files
Fixes: #20002
2019-11-25 13:33:44 +01:00
Daniel Eiband 777ceaea94 cmMakefile: Delay custom command creation
Move custom command creation to cmLocalGenerator and dispatch custom
commands in cmMakefile to generate time.  Generators add custom commands
using the new methods provided by cmLocalGenerator.

Issue: #12877
2019-11-24 20:32:43 +01:00
Daniel Eiband 4e37508c85 cmLocalGenerator: Refactor to use cmMakeSingleCommandLine 2019-11-24 20:13:23 +01:00
Brad King 9bc8854b3c Merge topic 'objc-standard-fix'
6a818b6931 ObjC: Proper initialization of ObjC/XX standard properties

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !4050
2019-11-15 09:06:07 -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
Brad King 4909594abd Merge topic 'objc-standard'
81566557d5 ObjC: Initialize ObjC/XX standard properties from C/C++ counterparts

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4022
2019-11-13 09:40:47 -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 ccd2c2824a Merge topic 'modernize-memory-management'
f93385283f cmLocalGenerator: modernize memory management
101b5288ff cmAlgorithm: Extend cmAppend capabilities

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4028
2019-11-12 09:55:20 -05:00
Brad King 5b46bc3194 Merge topic 'unity-HEADER_FILE_ONLY'
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:16 -05: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 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
Brad King a085648de5 Merge topic 'resolve-full-path-at-generate-time'
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 9a935adca9 Merge topic 'pch-no-duplicates'
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
Marc Chevrier f93385283f cmLocalGenerator: modernize memory management 2019-11-11 16:41:13 +01: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
Brad King f7612a6668 Merge topic 'unity-include-generated'
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:50 -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
Brad King 13ea5f06fa Merge topic 'objc-pch'
e331367a89 PCH: Add support for OBJC/OBJCXX languages

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3983
2019-11-05 11:24:55 -05:00
Cristian Adam e331367a89 PCH: Add support for OBJC/OBJCXX languages 2019-11-03 21:34:39 +01:00
Brad King 3cf71e8c7d cmLocalGenerator: Drop unused initializer in AddUnityBuild
Fix a warning from clang-scanbuild:

    warning: Value stored to 'chunk' during its initialization is never read
    for (size_t itemsLeft = filtered_sources.size(), chunk = batchSize,
                                                     ^~~~~   ~~~~~~~~~

Simply remove the initializer.
2019-10-28 15:52:55 -04:00
Cristian Adam 36ded610af PCH: Generate sources during Compute step 2019-10-09 13:50:25 +02:00