summaryrefslogtreecommitdiffstats
path: root/Source
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'relax_CUDA_RESOLVE_DEVICE_SYMBOLS_constraints'Brad King2019-02-064-32/+53
|\ | | | | | | | | | | | | | | 850ef90a66 CUDA: Honor CUDA_RESOLVE_DEVICE_SYMBOLS for more target types Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Robert Maynard <robert.maynard@kitware.com> Merge-request: !2900
| * CUDA: Honor CUDA_RESOLVE_DEVICE_SYMBOLS for more target typesRobert Maynard2019-02-054-32/+53
| | | | | | | | | | | | | | `CUDA_RESOLVE_DEVICE_SYMBOLS` can be used with shared, module, and executable target types. This relaxation is to allow for better interoperability with linkers that automatically do CUDA device symbol resolution and have no way to disable it.
* | Merge topic 'autogen_same_name_different_extension'Brad King2019-02-062-13/+35
|\ \ | | | | | | | | | | | | | | | | | | | | | a28caabf45 Autogen: AUTOMOC support for files with the same name but different extensions 1f802295f2 Autogen: Extend the SameName test with same name but different extension files Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2920
| * | Autogen: AUTOMOC support for files with the same name but different extensionsSebastian Holtermann2019-02-052-13/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | This adds support for AUTOMOC to moc header files with the same but different extensions (e.g `obj.h`, `obj.hpp`, `obj.hxx`). If a moc file would appear multiple times in `mocs_compilation.cpp`, a number suffix is appended to the name to make it unique. Closes #14489
* | | CMake Nightly Date StampKitware Robot2019-02-061-1/+1
|/ /
* | Merge topic 'update-kwsys'Brad King2019-02-051-1/+2
|\ \ | | | | | | | | | | | | | | | | | | | | | 9ddbf4c6e6 Merge branch 'upstream-KWSys' into update-kwsys 8372c05472 KWSys 2019-02-05 (65802a20) Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2918
| * | Merge branch 'upstream-KWSys' into update-kwsysBrad King2019-02-051-1/+2
| | | | | | | | | | | | | | | * upstream-KWSys: KWSys 2019-02-05 (65802a20)
* | | Merge topic 'autogen_single_all_sources_iteration'Brad King2019-02-054-85/+85
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | b6cf086267 Autogen: Iterate over makefile sources only once ed0fa784eb cmSystemTools: Let `GetFileFormat` accept a `std::stding const&` Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2909
| * | | Autogen: Iterate over makefile sources only onceSebastian Holtermann2019-02-021-78/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | | | In QtAutoGen we used to iterate over all makefile source two times to extract file parameters for moc and uic respectively. This patch merges both iterations into one loop. This makes the code easier to understand and likely faster to execute as well.
| * | | cmSystemTools: Let `GetFileFormat` accept a `std::stding const&`Sebastian Holtermann2019-02-024-8/+6
| | | | | | | | | | | | | | | | | | | | The `const char*` used formerly was converted to a `std::string` internally anyway.
* | | | Merge topic 'vs-fortran-target-check'Brad King2019-02-051-19/+12
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d3d2c3cd49 VS: Fix Fortran target type selection when linking C++ targets Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2913
| * | | | VS: Fix Fortran target type selection when linking C++ targetsBrad King2019-02-041-19/+12
| | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit 2c9f35789d (VS: Decide project type by linker lang as fallback, 2017-03-30, v3.9.0-rc1~340^2) we consider the linker language when detecting whether to generate a `.vfproj` or `.vcxproj` file. However, this could cause C-only projects to become `.vfproj` files if they link to Fortran projects. Instead we should consider only the `LINKER_LANGUAGE` property on the target itself. This approach is already used for CSharp. It allows project code to specify the project file type for a target with no sources but does not allow linked targets to affect it. Fixes: #18687
* | | | Merge topic 'swift-xcode-10.2'Brad King2019-02-051-0/+2
|\ \ \ \ | |_|_|/ |/| | | | | | | | | | | | | | | | | | | 96dece6dc1 Xcode: Update default Swift language version for Xcode 10.2 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2912
| * | | Xcode: Update default Swift language version for Xcode 10.2Brad King2019-02-041-0/+2
| |/ / | | | | | | | | | | | | | | | Xcode 10.2 no longer supports Swift language versions before 4.0. Fixes: #18871
* | | CMake Nightly Date StampKitware Robot2019-02-051-1/+1
|/ /
* | Merge topic 'cmSourceFile_refactor'Brad King2019-02-0413-84/+112
|\ \ | |/ | | | | | | | | | | | | | | | | | | 254b7260f4 cmSourceFile: Check if a file is GENERATED first in the full path computation cd8a930d61 cmSourceFile: Refactor FindFullPath method 6d407ae439 Use cmSourceFile::GetIsGenerated 2ddf3f4467 cmSourceFile: Add IsGenerated method b9d44fc350 cmSourceFile: Additional static property strings Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2908
| * cmSourceFile: Check if a file is GENERATED first in the full path computationSebastian Holtermann2019-02-021-5/+5
| | | | | | | | | | | | | | In `cmSourceFile::FindFullPath` check first if the file is GENERATED before aborting on `FindFullPathFailed`. This allows recomputation of the full path when the GENERATED property was set after the file path was computed with an error.
| * cmSourceFile: Refactor FindFullPath methodSebastian Holtermann2019-02-024-63/+74
| | | | | | | | | | Refactors the cmSourceFile::FindFullPath method to use lambdas.
| * Use cmSourceFile::GetIsGeneratedSebastian Holtermann2019-02-0110-11/+11
| |
| * cmSourceFile: Add IsGenerated methodSebastian Holtermann2019-02-012-4/+17
| | | | | | | | | | | | | | All cmSourceFiles are checked at least once whether they're `GENERATED` or not. This adds a convenience method `GetIsGenerated` that returns a private boolean cache variable `IsGenerated`. `IsGenerated` is updated every time the `GENERATED` property is written.
| * cmSourceFile: Additional static property stringsSebastian Holtermann2019-02-012-3/+7
| |
* | Merge topic 'vs-wince-deployment'Brad King2019-02-041-1/+7
|\ \ | | | | | | | | | | | | | | | | | | f5d72be57a VS: Fix deployment for WinCE projects Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2907
| * | VS: Fix deployment for WinCE projectsWil Stark2019-02-011-1/+7
| |/ | | | | | | Fixes: #18868
* | Merge topic 'winrtrefs'Brad King2019-02-041-2/+8
|\ \ | | | | | | | | | | | | | | | | | | | | | cff026dbc0 VS: Fix WinRT component references 6c21722adb Tests: Fix VSWinStorePhone test with Windows 10 SDK 17763 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2906
| * | VS: Fix WinRT component referencesGilles Khouzam2019-02-011-2/+8
| |/ | | | | | | | | | | | | | | | | | | | | WinRT components need to be referenced in a similar way that managed code libraries are referenced. Validate that the library reference is a WinRT component and reference it through the project. Add test coverage for `VS_WINRT_COMPONENT`. While at it, fix the IOT reference failing on Win10 SDK 17763 which doesn't include it anymore. Fixes: #18846
* | Merge topic 'set-env-warning'Brad King2019-02-041-0/+8
|\ \ | | | | | | | | | | | | | | | | | | cb01b8c8ba set: warn of extra arguments after ENV value. Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2903
| * | set: warn of extra arguments after ENV value.Taylor Holberton2019-02-011-0/+8
| | | | | | | | | | | | Fixes: #18842
* | | CMake Nightly Date StampKitware Robot2019-02-041-1/+1
| | |
* | | CMake Nightly Date StampKitware Robot2019-02-031-1/+1
| | |
* | | CMake Nightly Date StampKitware Robot2019-02-021-1/+1
| |/ |/|
* | Merge topic 'server-normalize-paths'Brad King2019-02-011-2/+11
|\ \ | | | | | | | | | | | | | | | | | | 1c6c2bae28 cmake-server: Normalize build and source directories Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2898
| * | cmake-server: Normalize build and source directoriesGregor Jasny2019-01-311-2/+11
| |/ | | | | | | Fixes: #18862
* | CMake Nightly Date StampKitware Robot2019-02-011-1/+1
|/
* Merge topic 'ninja-intel-depfile'Brad King2019-01-313-6/+37
|\ | | | | | | | | | | | | | | | | a624a3e1b3 Ninja: Use deps=gcc for Intel Compiler on Windows f4f3b6b9af Ninja: Detect when ninja is new enough to support a multi-line depfile 699cd03212 Ninja: Drop unnecessary deptype customization infrastructure Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2893
| * Ninja: Use deps=gcc for Intel Compiler on WindowsBrad King2019-01-301-2/+22
| | | | | | | | | | | | | | | | | | | | | | Ninja 1.9 supports the depfile format generated by this compiler. Use `deps = gcc` when the version of Ninja is new enough. Unfortunately the Intel Compiler for Windows does not properly escape spaces in paths written to a depfile so if there is a space in the path we must still fall back to `deps = msvc`. Fixes: #18855
| * Ninja: Detect when ninja is new enough to support a multi-line depfileBrad King2019-01-302-0/+15
| | | | | | | | | | | | Ninja 1.9 supports the multi-line depfile format generated by the Intel Compiler for Windows. Teach the global generator to detect when the version is new enough to support this.
| * Ninja: Drop unnecessary deptype customization infrastructureBrad King2019-01-301-4/+0
| | | | | | | | | | | | Do not pass `CMAKE_NINJA_DEPTYPE_<LANG>` in place of `deps = gcc`. If Ninja ever introduces a new dependency type we will likely need to update CMake for it anyway.
* | Merge topic 'install-strip-macos'Brad King2019-01-311-1/+13
|\ \ | | | | | | | | | | | | | | | | | | 20291e8e72 install: Fix stripping on macOS Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2892
| * | install: Fix stripping on macOSHarry Mallon2019-01-301-1/+13
| | | | | | | | | | | | | | | | | | | | | | | | On macOS the `strip` tool requires special arguments depending on the type of binary to be stripped. Fixes: #11367 Fixes: #16499
* | | Merge topic 'xcode-object-dir'Brad King2019-01-313-15/+27
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8a7f93d000 Xcode: Fix object library builds with sanitizers enabled eff9c69740 Xcode: Place object library artifacts outside Objects-normal directory Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2885
| * | | Xcode: Fix object library builds with sanitizers enabledBrad King2019-01-302-3/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Using `xcodebuild -enableAddressSanitizer YES ...` causes object files to be placed in a different directory name. Xcode provides a placeholder for this that we can use in `OTHER_LDFLAGS` to reference object files for linking the dependents of object libraries. However, CMake's features for installing and exporting object libraries depend on knowing the real path with no placeholders. For these cases, use the default object directory. Users will then have to choose between sanitizers and the installation and export features, but both will work individually. Fixes: #16289
| * | | Xcode: Place object library artifacts outside Objects-normal directoryBrad King2019-01-302-15/+18
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The `CONFIGURATION_BUILD_DIR` value in the Xcode project file specifies where to place the library artifact. For object libraries we've used the `Objects-normal` directory to hide away the `.a` that we otherwise cannot stop Xcode from producing. The parent of this directory is also specific to the target and does not vary with Xcode's sanitizer features, so move the artifact there. Issue: #16289
* | | Merge topic 'set-validate-cache-type'Brad King2019-01-313-3/+23
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 198650ae73 set: warn if CACHE type is not recognized Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2874
| * | | set: warn if CACHE type is not recognizedTaylor Holberton2019-01-303-3/+23
| | | |
* | | | Merge topic 'autogen-std-bind-to-lambdas'Brad King2019-01-312-6/+2
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d6fbd438c4 Autogen: Refactor std::bind calls to lambdas Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2766
| * | | | Autogen: Refactor std::bind calls to lambdasArtur Ryt2019-01-292-6/+2
| |/ / /
* | | | Merge topic 'tidy-use-equals-default-fix'Brad King2019-01-311-1/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3f9822ff6d clang-tidy: Silence use-equals-default warning Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2887
| * | | | clang-tidy: Silence use-equals-default warningRegina Pfeifer2019-01-301-1/+1
| | |/ / | |/| | | | | | | | | | | | | | | | | | clang-tidy 7 has an option to suppress this warning in macros which defaults to '1'. Set the option to '0' and silence the warning explicitly.
* | | | Merge topic 'std-string-callback'Brad King2019-01-315-16/+13
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1180fc8780 OutputCallback: Accept std::string argument Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: vvs31415 <vstakhovsky@fastmail.com> Merge-request: !2891
| * | | | OutputCallback: Accept std::string argumentRegina Pfeifer2019-01-305-16/+13
| |/ / /