summaryrefslogtreecommitdiffstats
path: root/Source
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'unified-commandline-length'Brad King2017-04-215-55/+50
|\ | | | | | | | | | | | | bbb5c3ef Ninja,Makefile: Unify command line limit logic Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !705
| * Ninja,Makefile: Unify command line limit logicChristian Pfeiffer2017-04-195-55/+50
| | | | | | | | | | | | Move the logic to cmSystemTools to be shared among the generators. Revise the implementation and add comments justifying each possible source for a limit.
* | Merge topic '16795-xcode-system-header-search-paths'Brad King2017-04-211-4/+33
|\ \ | | | | | | | | | | | | | | | | | | ffdde4a9 Xcode: Use SYSTEM_HEADER_SEARCH_PATHS attribute for system includes Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !726
| * | Xcode: Use SYSTEM_HEADER_SEARCH_PATHS attribute for system includesGregor Jasny2017-04-191-4/+33
| | | | | | | | | | | | Closes #16795
* | | Merge topic 'autogen-fixes'Brad King2017-04-213-5/+107
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 09035319 Autogen: Pass explicit predefines header to moc if possible Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !671
| * | | Autogen: Pass explicit predefines header to moc if possibleAleix Pol2017-04-203-5/+107
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Qt is relying on whoever calls moc to include a file with the predefined values that will be used by the compiler, otherwise moc takes wrong paths and weird things happen. Instead, generate an include file and feed it to all mocs to make sure it's generating correct code. Co-Author: Sebastian Holtermann <sebholt@xwmw.org> Fixes: #16640
* | | | CMake Nightly Date StampKitware Robot2017-04-211-1/+1
| | | |
* | | | Merge topic 'remove-vs7.1-generator'Brad King2017-04-2012-156/+13
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c94f1bcf Drop Visual Studio 7 .NET 2003 generator a4452fd8 cmGlobalVisualStudioGenerator: Drop VS7 enumeration value 6e66fe5f cmGlobalVisualStudio8Generator: Drop unused GetDocumentation method Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !723
| * | | | Drop Visual Studio 7 .NET 2003 generatorBrad King2017-04-199-141/+11
| | | | | | | | | | | | | | | | | | | | This generator has been deprecated since CMake 3.6. Remove it.
| * | | | cmGlobalVisualStudioGenerator: Drop VS7 enumeration valueBrad King2017-04-194-5/+2
| | | | | | | | | | | | | | | | | | | | | | | | | We no longer support the VS 7.0 (.NET 2002) IDE, so drop the enumeration value corresponding to its version.
| * | | | cmGlobalVisualStudio8Generator: Drop unused GetDocumentation methodBrad King2017-04-192-10/+0
| | |/ / | |/| | | | | | | | | | This has been moved to the factory.
* | | | Merge topic 'update-kwsys'Brad King2017-04-208-188/+194
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 697a5d64 Merge branch 'upstream-KWSys' into update-kwsys 5785482c KWSys 2017-04-19 (9f6ffaff) Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !716
| * | | | Merge branch 'upstream-KWSys' into update-kwsysBrad King2017-04-198-188/+194
| | | | | | | | | | | | | | | | | | | | | | | | | * upstream-KWSys: KWSys 2017-04-19 (9f6ffaff)
* | | | | CMake Nightly Date StampKitware Robot2017-04-201-1/+1
| |/ / / |/| | |
* | | | Merge topic 'objlib-extend'Brad King2017-04-1918-108/+346
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | eec93bce Allow OBJECT libraries to be installed, exported, and imported 93c89bc7 Genex: Allow TARGET_OBJECTS to be used everywhere ac0cf7ff Genex: Reject TARGET_OBJECTS on non-object libraries earlier 8577978c Tests: ExportImport C code should use explicit (void) in prototypes 26cfd039 cmInstallTargetGenerator: Re-order GenerateScriptForConfig logic 25f3f22a cmGlobalGenerator: Add method to check if object file location is known d596c550 cmGeneratorTarget: Add method to get the object file directory 930042f2 cmGeneratorTarget: Factor out a GetTargetObjectNames method ... Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !712
| * | | | Allow OBJECT libraries to be installed, exported, and importedRobert Maynard2017-04-1811-63/+228
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Teach install() and export() to handle the actual object files. Disallow this on Xcode with multiple architectures because it still cannot be cleanly supported there. Co-Author: Brad King <brad.king@kitware.com>
| * | | | Genex: Allow TARGET_OBJECTS to be used everywhereRobert Maynard2017-04-182-9/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously the `TARGET_OBJECTS` generator expression was limited only to use in a buildsystem context so that Xcode's placeholders in object file paths can be evaluated. Lift this restriction so that the expression can at least be used in most settings. Co-Author: Brad King <brad.king@kitware.com>
| * | | | Genex: Reject TARGET_OBJECTS on non-object libraries earlierBrad King2017-04-181-9/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move the diagnostic that rejects the TARGET_OBJECTS generator expression in non-buildsystem context until after the check for whether the named target is an object library. This order will makes more sense than the previous order once TARGET_OBJECTS is allowed in non-buildsystem context.
| * | | | cmInstallTargetGenerator: Re-order GenerateScriptForConfig logicBrad King2017-04-181-19/+22
| | | | | | | | | | | | | | | | | | | | | | | | | Do not populate some local variables before switching on the target type.
| * | | | cmGlobalGenerator: Add method to check if object file location is knownBrad King2017-04-183-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a `HasKnownObjectFileLocation` method returning whether we know the exact location of object files produced by the native build system. This is true everywhere except on Xcode when an architecture placeholder is used.
| * | | | cmGeneratorTarget: Add method to get the object file directoryBrad King2017-04-182-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | Add a `GetObjectDirectory` method to get the target's object file directory for a specific configuration.
| * | | | cmGeneratorTarget: Factor out a GetTargetObjectNames methodBrad King2017-04-183-29/+43
| | | | |
| * | | | cmGeneratorTarget: Drop default GetLinkerLanguage config argumentBrad King2017-04-172-2/+3
| | | | | | | | | | | | | | | | | | | | Update one remaining call site to avoid using the default.
* | | | | Merge topic 'cmake-gui-desktop-icon-wayland'Brad King2017-04-192-1/+1
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | 86787633 cmake-gui: Fix display of icon under Wayland. Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !715
| * | | | cmake-gui: Fix display of icon under Wayland.Clinton Stimpson2017-04-172-1/+1
| |/ / / | | | | | | | | | | | | Fixes: #16797
* | | | CMake Nightly Date StampKitware Robot2017-04-191-1/+1
| | | |
* | | | Merge topic 'ipo-var-per-config'Brad King2017-04-181-7/+4
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 470437f6 Support CMAKE_INTERPROCEDURAL_OPTIMIZATION_<CONFIG> Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !709
| * | | | Support CMAKE_INTERPROCEDURAL_OPTIMIZATION_<CONFIG>Ruslan Baratov2017-04-171-7/+4
| | | | |
* | | | | Merge topic 'fix-CMP0026-old'Brad King2017-04-181-0/+20
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5e616fcf CMP0026: Fix OLD behavior with file written during configure step Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !710
| * | | | | CMP0026: Fix OLD behavior with file written during configure stepBrad King2017-04-171-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Refactoring in commit 60307c5056 (cmGeneratorTarget: Replace source classifier implementation, 2017-04-07) accidentally regressed support for CMP0026's OLD behavior in the case of a source file written by project code during the configure step after getting a LOCATION. We should not perform full source classification until the generate step because files written by the project's configure step may not exist yet. Add special logic to support this case. Add a test case for it. Reported-by: David Stoup <david.stoup@kitware.com>
* | | | | | CMake Nightly Date StampKitware Robot2017-04-181-1/+1
| |_|/ / / |/| | | |
* | | | | Merge topic 'prepare-per-config-objects'Brad King2017-04-177-83/+192
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ca697bfc cmGeneratorTarget: Drop obj libs from GetConfigCommonSourceFiles e44a8d2c Xcode: Refactor loop over all sources 97cc29c7 VS: Teach generators how to mark per-config source files 2f6f6f0c Xcode: Use config-specific object library files on link lines 888c8af6 VS: List config-specific object library files on link lines 40aa6c05 cmGeneratorTarget: Add method to collect all sources for all configs Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !701
| * | | | | cmGeneratorTarget: Drop obj libs from GetConfigCommonSourceFilesBrad King2017-04-132-2/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Call sites such as those in the VS global generator that are used only to reject per-config sources will now allow per-config object library objects. The corresponding generators have already been taught to deal with per-config object library files. Remaining call sites do not need object library files anyway. This will later allow `$<TARGET_OBJECTS:...>` generator expressions to evaluate to values that vary by configuration (e.g. because each configuration has its own object files).
| * | | | | Xcode: Refactor loop over all sourcesBrad King2017-04-131-33/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Switch from `GetConfigCommonSourceFiles` to `GetAllConfigSources`. This will allow us to drop object library files from the former.
| * | | | | VS: Teach generators how to mark per-config source filesBrad King2017-04-134-36/+97
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add internal infrastructure for looping over all sources for all configurations and generating each source with exclusion marks for configurations in which they do not participate. This does not yet make per-config sources available in general but does set up some of the needed infrastructure. Unfortunately doing this cleanly will require major refactoring of both the VS 7-9 generators and the VS 10+ generators (for separate reasons). Instead add some extra internal structures to carry information where we need it.
| * | | | | Xcode: Use config-specific object library files on link linesBrad King2017-04-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We can do this only with Xcode 5 and above where we list the object library files in the per-config link line value. On older Xcode versions we list the object files as sources so that dependencies work correctly, but that does not allow per-config objects. (Xcode may allow per-config source exclusion but only by base name.)
| * | | | | VS: List config-specific object library files on link linesBrad King2017-04-131-11/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In cases that we need to list object library files on link lines, look up the set of files matching the configuration of each link line.
| * | | | | cmGeneratorTarget: Add method to collect all sources for all configsBrad King2017-04-132-0/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Multi-config generators like VS and Xcode need to loop over all the source files first and then handle per-config information within each one. Teach cmGeneratorTarget to provide such a view.
* | | | | | Merge topic 'file-copy-relative-from'Brad King2017-04-171-10/+51
|\ \ \ \ \ \ | |_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 99b90dbf file: Add COPY/INSTALL option for fixed layout relative to a directory dadf1570 file: Refactor COPY/INSTALL relative path handling Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !703
| * | | | | file: Add COPY/INSTALL option for fixed layout relative to a directoryBrad King2017-04-131-1/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a `FILES_FROM_DIR` option to install a specific set of files specified relative to a given directory and preserve their layout in the destination. Currently we intend to use this internally to implement other things so we don't provide an `install()` porcelain or documentation yet.
| * | | | | file: Refactor COPY/INSTALL relative path handlingBrad King2017-04-131-10/+13
| |/ / / / | | | | | | | | | | | | | | | Delay conversion to absolute path until the last moment.
* | | | | Merge topic 'simpler-import-lib-check'Brad King2017-04-171-3/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9a5dcc32 cmExportBuildFileGenerator: use HasImportLibrary Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !699
| * | | | | cmExportBuildFileGenerator: use HasImportLibraryBen Boeckel2017-04-131-3/+1
| | | | | |
* | | | | | Merge topic 'vs-custom-kits-dir'Brad King2017-04-171-13/+33
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fee01194 VS: Add an environment variable for the Windows 10 kits directory b80c6d12 VS: Refactor Win 10 Kits root detection to support multiple roots Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !696
| * | | | | | VS: Add an environment variable for the Windows 10 kits directoryBrad King2017-04-121-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Define a `CMAKE_WINDOWS_KITS_10_DIR` environment variable to allow users to tell CMake about a custom Windows 10 SDK directory. We choose to make this an environment variable rather than a CMake variable or cache entry because: * Using a custom directory also requires custom external MSBuild configuration. Therefore users are already configuring a custom environment. * The custom directory must be set consistently in all parts of a build including nested projects. An environment variable avoids requiring users to thread the setting into nested builds. Fixes: #16743
| * | | | | | VS: Refactor Win 10 Kits root detection to support multiple rootsBrad King2017-04-121-13/+25
| |/ / / / /
* | | | | | CMake Nightly Date StampKitware Robot2017-04-171-1/+1
| | | | | |
* | | | | | CMake Nightly Date StampKitware Robot2017-04-161-1/+1
| |_|_|/ / |/| | | |
* | | | | CMake Nightly Date StampKitware Robot2017-04-151-1/+1
| | | | |
* | | | | CMake Nightly Date StampKitware Robot2017-04-141-1/+1
| |/ / / |/| | |