summaryrefslogtreecommitdiffstats
path: root/Source
Commit message (Collapse)AuthorAgeFilesLines
* 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
| |/ / |/| |
* | | Merge topic 'xcode-remove-UseObjectLibraries'Brad King2017-04-133-57/+32
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 229abfc8 cmGeneratorTarget: Drop unused UseObjectLibraries method 63fbf587 Xcode: Inline relevant parts of UseObjectLibraries 1afacebe Xcode: Do not add Object Libraries source group on Xcode >= 5 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !698
| * | | cmGeneratorTarget: Drop unused UseObjectLibraries methodBrad King2017-04-122-38/+0
| | | |
| * | | Xcode: Inline relevant parts of UseObjectLibrariesBrad King2017-04-121-12/+22
| | | |
| * | | Xcode: Do not add Object Libraries source group on Xcode >= 5Brad King2017-04-121-11/+14
| |/ / | | | | | | | | | | | | | | | The group is always empty because on Xcode 5 and above we list object library files directly on the link line and do not list sources for them.
* | | Merge topic 'project-description'Brad King2017-04-131-0/+31
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 3b484871 project: Add `DESCRIPTION` parameter Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !679
| * | | project: Add `DESCRIPTION` parameterAlex Turbov2017-04-111-0/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It is quite often the project description has used in a real world software. Examples include: * part of a help screen of the application * builtin resources (`*.rc` files, data for "About" dialog of a GUI app, & etc) * most generators for CPack can use it * it could be used by documentary software (Doxygen, Sphinx) which is usually integrated to CMake based projects via `add_custom_target()` Now `project()` call learned an optional `DESCRIPTION` parameter with a short string describing a project. Being specified, it would set the `PROJECT_DESCRIPTION` variable which could be used in `configure_file()` or whatever user wants. Also `PROJECT_DESCRIPTION` is a default value for `CPACK_PACKAGE_DESCRIPTION_SUMMARY`.
* | | | Merge topic 'update-kwsys'Brad King2017-04-135-4/+95
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ada8e0ca Merge branch 'upstream-KWSys' into update-kwsys 85841e8b KWSys 2017-04-12 (23a4c211) Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !694
| * | | | Merge branch 'upstream-KWSys' into update-kwsysBrad King2017-04-125-4/+95
| | |/ / | |/| | | | | | | | | | | | | | * upstream-KWSys: KWSys 2017-04-12 (23a4c211)
* | | | Merge topic 'include-style'Brad King2017-04-13552-745/+862
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1d829c86 Use quotes for non-system includes 26ee9e42 CPack: drop CPack prefix for includes 5afac50f cmConfigure: Ensure separate include block in headers Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !691
| * | | | Use quotes for non-system includesDaniel Pfeifer2017-04-11545-721/+721
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Automate with: git grep -l '#include <cm_' -- Source \ | xargs sed -i 's/#include <\(cm_.*\)>/#include "\1"/g' git grep -l '#include <cmsys/' -- Source \ | xargs sed -i 's/#include <\(cmsys\/.*\)>/#include "\1"/g' git grep -l '#include <cm[A-Z]' -- Source \ | xargs sed -i 's/#include <\(cm[A-Z].*\)>/#include "\1"/g'
| * | | | CPack: drop CPack prefix for includesDaniel Pfeifer2017-04-1118-24/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Automate with: git grep -l '#include <CPack/' -- Source \ | xargs sed -i 's/#include <CPack\/\(.*\)>/#include "\1"/g' git grep -l '#include "CPack/' -- Source \ | xargs sed -i 's/#include "CPack\/\(.*\)"/#include "\1"/g'
| * | | | cmConfigure: Ensure separate include block in headersDaniel Pfeifer2017-04-11111-0/+111
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make sure that `#include <cmConfigure.h>` is followed by an empty line in header files. This is necessary to make sure that changing <> to "" does not affect the include ordering of clang-format. Automate with: git grep -l '#include <cmConfigure.h>' | grep -v '.cxx$' \ | xargs sed -i '/#include <cmConfigure.h>/ { N; N; s/\n\{1,2\}/\n\n/ }'
* | | | | CMake Nightly Date StampKitware Robot2017-04-131-1/+1
| |/ / / |/| | |
* | | | Merge topic 'vs-refactor-source-loop'Brad King2017-04-124-93/+80
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a2e91af9 cmGeneratorTarget: Drop unused GetIDLSources method a77158b2 VS: Refactor loop over classified sources Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !689
| * | | | cmGeneratorTarget: Drop unused GetIDLSources methodBrad King2017-04-112-8/+0
| | | | |
| * | | | VS: Refactor loop over classified sourcesBrad King2017-04-112-85/+80
| | | | | | | | | | | | | | | | | | | | | | | | | Loop over all sources at once instead of looking up and looping over each kind of source separately.
* | | | | Merge topic 'xcode-object-arch-dir'Brad King2017-04-123-31/+61
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8c346bbc Xcode: Compute a concrete object file arch dir if possible 5f4e26df Xcode: Refactor object directory name computation 5b29fd6d Xcode: Refactor internal architecture list construction b1eb493c cmGlobalGenerator: Abort generation earlier on export() error Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !688
| * | | | | Xcode: Compute a concrete object file arch dir if possibleBrad King2017-04-112-1/+19
| | | | | |
| * | | | | Xcode: Refactor object directory name computationBrad King2017-04-112-10/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Factor out a helper function to compute the object directory name architecture component.
| * | | | | Xcode: Refactor internal architecture list constructionBrad King2017-04-112-17/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Factor population of the `Architectures` member out into a helper to avoid duplication.
| * | | | | cmGlobalGenerator: Abort generation earlier on export() errorBrad King2017-04-111-4/+5
| | | | | |
* | | | | | CMake Nightly Date StampKitware Robot2017-04-121-1/+1
| |_|/ / / |/| | | |
* | | | | Merge topic 'vs-remove-UseObjectLibraries'Brad King2017-04-116-77/+46
|\ \ \ \ \ | | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f4af14ad VS: Simplify logic collecting object library files as sources 10772c51 VS: Simplify use of object libraries in WINDOWS_EXPORT_ALL_SYMBOLS 22829a13 cmMakefile: Create an explicit "Object Libraries" source group Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !686