Commit Graph

39645 Commits

Author SHA1 Message Date
Brad King
d32ceffb1e Merge topic 'vs-nitpicks'
b88e138369 cmVisualStudio10TargetGenerator: minor code cleanup

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2063
2018-05-16 10:01:57 -04:00
Kitware Robot
c698dbd45d CMake Nightly Date Stamp 2018-05-16 00:01:05 -04:00
Brad King
743f24bac6 Merge branch 'release-3.11' 2018-05-15 10:16:32 -04:00
Brad King
92ce7cc230 Merge topic 'fix-automoc-warnings'
9672d81ca3 Qt4Macros: Don't AUTOMOC or AUTOUIC qt4-generated files
800b2fcf80 Qt4Macros: Use get_property/set_property

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2066
2018-05-15 10:15:14 -04:00
Brad King
64234199ae Merge branch 'release-3.11' 2018-05-15 10:00:13 -04:00
Brad King
eaf8d7a1f4 Merge topic 'autogen_register_info_files'
e461a136c1 Autogen: Register generated dependency files

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2071
2018-05-15 09:58:55 -04:00
Brad King
c29992078f Merge topic 'custom-command-expand-empty'
6e59491659 add_custom_{command,target}: Fix crash on empty expanded command

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2074
2018-05-15 09:54:08 -04:00
Brad King
29d20e2e0c Merge branch 'fix-automoc-warnings' into release-3.11
Merge-request: !2066
2018-05-15 09:52:09 -04:00
Matthew Woehlke
9672d81ca3 Qt4Macros: Don't AUTOMOC or AUTOUIC qt4-generated files
Suppress AUTOMOC and AUTOUIC on files generated by Qt4 wrapping macros;
particularly, those generated by `qt4_wrap_cpp`, `qt4_wrap_ui`, and
`qt4_add_resources`.  None of these should need AUTOMOC or AUTOUIC
treatment, and CMP0071 makes it important to mark this explicitly.
2018-05-15 09:50:22 -04:00
Matthew Woehlke
800b2fcf80 Qt4Macros: Use get_property/set_property
Replace use of old-style {get,set}_source_file_properties with newer
{get,set}_property.
2018-05-15 09:48:11 -04:00
Kitware Robot
d793b482d9 CMake Nightly Date Stamp 2018-05-15 00:01:05 -04:00
Brad King
813bcc2997 Merge branch 'custom-command-expand-empty' into release-3.11
Merge-request: !2074
2018-05-14 11:59:51 -04:00
Brad King
6e59491659 add_custom_{command,target}: Fix crash on empty expanded command
Our custom command generation logic assumes that all command lines have
at least `argv0`.  In `add_custom_{command,target}` we already check
that at least a `COMMAND` was given, but using `COMMAND_EXPAND_LISTS` in
combination with a generator expression that expands to an empty string
may produce an empty command line.  In this case simply add an empty
string as a command to maintain our internal invariant.

Fixes: #17993
2018-05-14 11:54:27 -04:00
Brad King
99e658258e Merge topic 'FindPkgConfig-LINK_LIBRARIES'
92ac721a44 FindPkgConfig: export the list of found libraries also as variable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2068
2018-05-14 09:46:31 -04:00
Brad King
5a227ce805 Merge topic 'cuda-vs-cuda-device-runtime'
a170a59a58 VS: Link CUDA binaries with the device runtime library 'cudadevrt'

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2062
2018-05-14 09:42:00 -04:00
Brad King
7b62ec2451 Merge branch 'autogen_register_info_files' into release-3.11
Merge-request: !2071
2018-05-14 09:40:13 -04:00
Brad King
238c4820ff Merge branch 'release-3.11' 2018-05-14 09:39:36 -04:00
Brad King
6e39697ad5 Merge topic 'irsl-fortran-only-linux'
05ece372a6 IRSL: Fix Intel library list for ifort-only setups

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2061
2018-05-14 09:35:34 -04:00
Brad King
81ef418fe8 Merge topic 'update-kwsys'
05d67d2545 Merge branch 'upstream-KWSys' into update-kwsys
55efd14733 KWSys 2018-05-11 (46da6b14)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2064
2018-05-14 09:35:00 -04:00
Brad King
18c71919ac Merge topic 'xml-element-enhance'
ff13b0cdc2 cmCTestLaunch: use cmXMLElement for XML generation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2057
2018-05-14 09:34:19 -04:00
Brad King
41653c6df6 Merge topic 'findjpeg_static_fix'
322eab0429 FindJPEG: Add 'jpeg-static' to searched names

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2059
2018-05-14 09:33:06 -04:00
Brad King
a04ca510c1 Merge topic 'cpack-nuget'
f739752ad6 CPack: Add NuGet support
dd43e6fe89 Tests: Format `RunCPackVerifyResult.cmake` more consistently
43582cda57 Tests: Fix comment for finding dpkg tool

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1972
2018-05-14 09:32:04 -04:00
Sebastian Holtermann
e461a136c1 Autogen: Register generated dependency files
For CMP0058 record that rcc info files are generated by CMake.

Fixes: #17985
2018-05-14 09:21:14 -04:00
Kitware Robot
653eb6ebdc CMake Nightly Date Stamp 2018-05-14 00:01:03 -04:00
Kitware Robot
9388d13f60 CMake Nightly Date Stamp 2018-05-13 00:01:04 -04:00
Kitware Robot
9afeb2e5a7 CMake Nightly Date Stamp 2018-05-12 00:01:12 -04:00
Rolf Eike Beer
92ac721a44 FindPkgConfig: export the list of found libraries also as variable 2018-05-11 19:35:53 +02:00
Brad King
05d67d2545 Merge branch 'upstream-KWSys' into update-kwsys
* upstream-KWSys:
  KWSys 2018-05-11 (46da6b14)
2018-05-11 11:34:27 -04:00
KWSys Upstream
55efd14733 KWSys 2018-05-11 (46da6b14)
Code extracted from:

    https://gitlab.kitware.com/utils/kwsys.git

at commit 46da6b14f03f27d8531f841b9f48c1fda452c915 (master).

Upstream Shortlog
-----------------

Kyle Edwards (2):
      5b8bf75b INSTALL: move namelink into development component
      e5733515 Fix recent regression in installation of namelink

luz.paz (1):
      0e14a1a6 Misc. typos and whitespace fixes
2018-05-11 11:34:26 -04:00
Vitaly Stakhovsky
ff13b0cdc2 cmCTestLaunch: use cmXMLElement for XML generation
class `cmXMLElement` enhanced with more members; its use demonstrated
2018-05-11 11:33:13 -04:00
Vitaly Stakhovsky
b88e138369 cmVisualStudio10TargetGenerator: minor code cleanup 2018-05-11 10:05:51 -04:00
Michael Hofmann
322eab0429 FindJPEG: Add 'jpeg-static' to searched names
A statically built libjpeg-turbo library will have a '-static' suffix;
see the jpeg-static CMake target here:

    https://github.com/libjpeg-turbo/libjpeg-turbo/blob/1.5.3/CMakeLists.txt#L936

On Windows the resulting .lib file is called 'jpeg-static.lib'.
Consider this name while searching.
2018-05-11 09:57:52 -04:00
Brad King
72e9fcdf2f Merge branch 'irsl-fortran-only-linux' into release-3.11
Merge-request: !2061
2018-05-11 09:45:59 -04:00
Christian Pfeiffer
05ece372a6 IRSL: Fix Intel library list for ifort-only setups
Fixes: #17727
2018-05-11 09:45:07 -04:00
Alex Turbov
f739752ad6 CPack: Add NuGet support
Create a CPack generator that uses `nuget.exe` to create packages:

    https://docs.microsoft.com/en-us/nuget/what-is-nuget

NuGet packages could be easily produced from a `*.nuspec` file (running
`nuget pack` in the directory w/ the spec file).  The spec filename does
not affect the result `*.nupkg` name -- only `id` and `version` elements
of the spec are used (by NuGet).

Some implementation details:

* Minimize C++ code -- use CMake script do to the job. It just let the
  base class (`cmCPackGenerator`) to preinstall everything to a temp
  directory, render the spec file and run `nuget pack` in it, harvesting
  `*.nupkg` files...;

* Ignore package name (and use default paths) prepared by the base class
  (only `CPACK_TEMPORARY_DIRECTORY` is important) -- final package
  filename is a responsibility of NuGet, so after generation just scan the
  temp directory for the result `*.nupkg` file(s) and update
  `packageFileNames` data-member of the generator;

* The generator supports _all-in-one_ (default), _one-group-per-package_
  and _one-component-per-package_ modes.
2018-05-11 09:28:44 -04:00
Brad King
c9e995c9ef Merge topic 'vs-refactor'
a2b5acec3b cmVisualStudio10TargetGenerator: refactor

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2054
2018-05-11 09:23:13 -04:00
Brad King
d54796cbd9 Merge topic 'FindCUDA-sccache'
53ffff2277 FindCUDA: Add support for sccache

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2050
2018-05-11 09:22:01 -04:00
Brad King
1dda570edc Merge topic 'vs-fix-csharp-recompile'
91754b4e60 VS: When not referencing output assembly do not try to copy it either

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2037
2018-05-11 09:20:49 -04:00
Brad King
9912d2655a Merge branch 'release-3.11' 2018-05-11 09:19:09 -04:00
Brad King
1e521a1a91 Merge topic 'restore-imported-lib-alias-diagnostic'
e567d7eb63 add_library: Restore error on alias of non-global imported target

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2058
2018-05-11 09:18:08 -04:00
Brad King
c747d4ccb3 Merge topic 'FindBoost-backport-python-deps'
81cc993f89 FindBoost: Backport versioned python dependencies for v1.35 to v1.66
557e68e1a3 FindBoost: Remove extra indentation in 1.65/1.66 dependency block

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2045
2018-05-11 09:17:02 -04:00
Brad King
a170a59a58 VS: Link CUDA binaries with the device runtime library 'cudadevrt'
According to https://docs.nvidia.com/cuda/nvrtc/index.html there are
some cases where a CUDA binary "...must be linked against the CUDA
device runtime (cudadevrt) library".  When `nvcc` drives linking it
automatically links to runtime libraries as follows:

* -cudart=none: None
* -cudart=shared: -lcudadevrt -lcudart
* -cudart=static: -lcudadevrt -lcudart_static

The `cudadevrt` library is the cuda device runtime library.  It is
always static so passing it to the linker when not necessary does
not hurt anything.

With Ninja and Makefile generators, we detect `cudadevrt` and either
`cudart` or `cudart_static` libraries implied by `nvcc` and then add
them to link lines driven by a host compiler.  However, this does not
work with the VS generator because the CUDA Toolkit Visual Studio
integration does not use `nvcc` to link binaries and instead uses
`link.exe` directly.

Visual Studio project files (`.vcxproj`) for CUDA are expected to
explicitly list the needed runtime libraries.  Our VS generator already
adds `cudart.lib` or `cudart_static.lib` based on the `-cudart=` flag.
Update it to also add `cudadevrt.lib` as nvcc does.

Fixes: #17988
2018-05-11 08:49:10 -04:00
Kitware Robot
ad83aa0f3d CMake Nightly Date Stamp 2018-05-11 00:01:05 -04:00
Brad King
4f0c5d3775 Merge branch 'restore-imported-lib-alias-diagnostic' into release-3.11
Merge-request: !2058
2018-05-10 10:11:48 -04:00
Brad King
e567d7eb63 add_library: Restore error on alias of non-global imported target
In commit v3.11.0-rc1~433^2~1 (Add support for IMPORTED GLOBAL targets
to be aliased, 2017-09-14) we accidentally dropped the error on calling
`add_library` to alias an imported target that is not globally visible.
The `add_executable` command's equivalent check was properly updated.
Restore the check in `add_library` with the same update.  Also fix the
test case accordingly.

Fixes: #17982
2018-05-10 09:57:31 -04:00
Craig Scott
da30ba3ab8 Merge topic 'ctest-start-args-rework'
9deaf07597 Help: add release notes for ctest_start() changes
563781099f ctest_start: read model from TAG file

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2036
2018-05-10 05:36:32 -04:00
Kitware Robot
5498cb7cdb CMake Nightly Date Stamp 2018-05-10 00:01:04 -04:00
Alex Turbov
dd43e6fe89 Tests: Format RunCPackVerifyResult.cmake more consistently 2018-05-09 08:41:58 -04:00
Alex Turbov
43582cda57 Tests: Fix comment for finding dpkg tool 2018-05-09 08:41:58 -04:00
Brad King
d44441a365 Merge topic 'doc-cpack-revise'
bfb91ff7f2 CPack: Add more markup to module documentation
5fc59ea7c8 CPack: Document `CPACK_PACKAGE_DESCRIPTION` variable
3f354d65b4 CPack: Move CPACK_BINARY_<GENNAME> with rest of docs
53ec402069 CPack: Convert documentation to long-bracket comment syntax

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2051
2018-05-09 08:41:33 -04:00