2251 Commits

Author SHA1 Message Date
Michael Stürmer
07ec212ae8 VS: add target property VS_DOTNET_REFERENCEPROP_<refname>_TAG_<tagname>
Fixes: #16689
2017-06-13 10:46:31 -04:00
Brad King
9203aff851 Merge topic 'android-unified-headers'
3d00be13 Android: Add support for unified headers

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !956
2017-06-13 09:27:17 -04:00
Brad King
3d00be13ee Android: Add support for unified headers
The unified headers are preferred as of NDK r15, so use them by default
if available and provide an option to use the deprecated headers.

Inspired-by: Florent Castelli <florent.castelli@gmail.com>
Fixes: #16584
2017-06-12 11:47:30 -04:00
Brad King
00b91b1530 Merge topic 'execute_process-pipeline-results'
d6051ca3 execute_process: Add option to get results of every child

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !702
2017-06-12 10:22:12 -04:00
Brad King
0cb8730c0b Merge topic 'cpack-freebsd-pkg'
2042cae9 CPack-FreeBSD: add a generator for FreeBSD pkg(8)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !693
2017-06-12 10:21:42 -04:00
Brad King
99153a9eb6 Merge topic 'cuda-compiler-launcher'
414438b2 CUDA: Add option to run the compiler through launcher tools

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !949
2017-06-12 10:20:58 -04:00
Adam Weisi
d6051ca39e execute_process: Add option to get results of every child
Add a `RESULTS_VARIABLE` option to get the results of all children
in a pipeline of one or more `COMMAND`s.
2017-06-10 08:03:06 -04:00
Adriaan de Groot
2042cae9a5 CPack-FreeBSD: add a generator for FreeBSD pkg(8)
Adds an option CPACK_ENABLE_FREEBSD_PKG to allow CPack to look
for FreeBSD's libpkg / pkg(8). If this is set and the libpkg
headers and library are found (which they will be, by default,
on any FreeBSD system), then add a FreeBSD pkg(8) generator.

The FreeBSD package tool pkg(8) uses tar.xz files (.txz) with two
metadata files embedded (+MANIFEST and +COMPACT_MANIFEST).
This introduces a bunch of FreeBSD-specific CPACK_FREEBSD_PACKAGE_*
variables for filling in the metadata; the Debian generator does
something similar. Documentation for the CPack CMake-script is styled
after the Debian generator.

Implementation notes:
 - Checks for libpkg -- the underlying implementation for pkg(8) --
   and includes FreeBSD package-generation if building CMake on
   a UNIX host. Since libpkg can be used on BSDs, Linux and OSX,
   this potentially adds one more packaging format. In practice,
   this will only happen on FreeBSD and DragonflyBSD.
 - Copy-paste from cmCPackArchiveGenerator to special-case
   the metadata generation and to run around the internal
   archive generation: use libpkg instead.
 - Generating the metadata files is a little contrived.
 - Most of the validation logic for package settings is in
   CPackFreeBSD.cmake, as well as the code that tries to re-use
   packaging settings that may already be set up for Debian.
 - libpkg has its own notion of output filename, so we have
   another contrived bit of code that munges the output file
   list so that CPack can find the output.
 - Stick with C++98.
2017-06-10 07:53:59 -04:00
Brad King
414438b2fb CUDA: Add option to run the compiler through launcher tools
Add a `CUDA_COMPILER_LAUNCHER` target property like those added for C
and CXX by commit v3.4.0-rc1~450^2 (Add options to launch the compiler
through tools like ccache or distcc, 2015-06-04).

Fixes: #16953
2017-06-09 12:34:39 -04:00
Brad King
82be694c7a file(GENERATE): Add policy CMP0070 to define relative path behavior
Previously `file(GENERATE)` did not define any behavior for relative
paths given to the `OUTPUT` or `INPUT` arguments.  Define behavior
consistent with CMake conventions and add a policy to provide
compatibility for projects that relied on the old accidental behavior.

Fixes: #16786
2017-06-09 10:38:43 -04:00
Brad King
d3f3759bfb Merge topic 'doc-3.9-find_dependency'
137938e5 Help: Add 3.9 release note about find_dependency update

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !933
2017-06-07 11:09:02 -04:00
Brad King
67c0b56e3c Merge topic 'autogen-no-vs-per-config'
cc1b513d Autogen: Do not use per-config file suffixes with VS yet

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !932
2017-06-07 11:08:13 -04:00
Brad King
44e323ca92 Merge branch 'doc-3.9-find_dependency' into release-3.9 2017-06-07 10:14:45 -04:00
Matthew Woehlke
137938e5f0 Help: Add 3.9 release note about find_dependency update 2017-06-07 10:13:49 -04:00
Brad King
b9d411eb25 Merge branch 'autogen-no-vs-per-config' into release-3.9 2017-06-07 10:01:18 -04:00
Brad King
cc1b513df1 Autogen: Do not use per-config file suffixes with VS yet
The change in commit v3.9.0-rc1~42^2~1 (Autogen: Per-config file
suffixes, 2017-05-15) broke Visual Studio builds because the generators
do not yet fully support per-config sources.  Disable the behavior on
Visual Studio generators for now.

Fixes: #16939
2017-06-07 09:41:49 -04:00
Florian Maushart
e7869e80ce cmake_host_system_information: Add more keywords
Extend the `cmake_host_system_information()` command to add processor
identification keywords.
2017-06-05 13:51:30 -04:00
Brad King
c095e90f3a Begin post-3.9 development 2017-06-05 10:41:19 -04:00
Brad King
9450d13099 Help: Drop development topic notes to prepare release
Release versions do not have the development topic section of
the CMake Release Notes index page.
2017-06-05 10:31:50 -04:00
Brad King
d025faf436 Merge topic 'doc-3.9-relnotes'
945cb9aa Help: Organize and revise 3.9 release notes
7bc26430 Help: Consolidate 3.9 release notes

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !926
2017-06-05 10:22:15 -04:00
Brad King
a44d3cc6ed Help/dev: Add release branch creation to maintainer guide 2017-06-02 14:36:52 -04:00
Brad King
4e52809edf Help/dev: Add a CMake Maintainer Guide document
Initialize it with placeholder content.  This document will serve to
contain instructions for CMake maintenance processes.
2017-06-02 14:24:47 -04:00
Brad King
945cb9aa93 Help: Organize and revise 3.9 release notes
Add section headers similar to the 3.8 release notes and move each
individual bullet into an appropriate section.  Revise a few bullets.
2017-06-02 11:07:36 -04:00
Brad King
7bc2643050 Help: Consolidate 3.9 release notes
Move all development release notes into a new version-specific document:

    tail -q -n +3 Help/release/dev/* > Help/release/3.9.rst
    git rm -- Help/release/dev/*

except the sample topic:

    git checkout HEAD -- Help/release/dev/0-sample-topic.rst

Reference the new document from the release notes index document.
Add a title and intro sentence to the new document by hand.
2017-06-02 09:35:52 -04:00
Brad King
0bb67499c3 Merge topic 'doc-dev-buildbot-lints'
9685d077 Help/dev: Document buildbot lint-iwyu-tidy builder

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !897
2017-05-30 11:50:48 -04:00
Brad King
9685d0773c Help/dev: Document buildbot lint-iwyu-tidy builder
This builder builds CMake using lint tools but does not run the test
suite.  Document it for reviewers to request with `Do: test -i lint`.
2017-05-30 09:34:30 -04:00
Gregor Jasny
7a9a1e0453 Help: Add a hint about C and C++ compiler version variable
Closes #16917
2017-05-28 20:19:53 +02:00
Brad King
5a0fa11fec Merge topic 'autogen_config'
e3e692ca Autogen: Test adaptions
dbda5906 Autogen: Per-config file suffixes. New AUTOGEN_BUILD_DIR target property.
0965002e Autogen: Pass build directory in Info file

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !858
2017-05-28 09:11:33 -04:00
Brad King
8b96e31ca3 Merge topic 'FindProtobuf-export-macro'
1ee20192 FindProtobuf: add optional export declaration macro to generated cpp files

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !881
2017-05-28 09:09:46 -04:00
André Apitzsch
1ee2019239 FindProtobuf: add optional export declaration macro to generated cpp files 2017-05-26 11:35:03 -04:00
Sebastian Holtermann
dbda590628 Autogen: Per-config file suffixes. New AUTOGEN_BUILD_DIR target property.
Closes #14760
Closes #14313
2017-05-26 15:27:17 +02:00
Alex Turbov
59ffabfeec Improve Doxygen support
Except Graphviz's `dot` Doxygen may use few other utilities like
`mscgen` (Message Sequence Chart) and `dia` (Diagram Editor).

Now this module allows to manage Doxygen settings from `CMakeLists.txt`
and forget about `Doxyfile`s. Also it provides a helper function
to add a target to generate documentation: `doxygen_add_docs`.

Implement code review notes:

- Introduce `COMPONENTS` to find: `dot`, `mscgen` and `dia`;
- Deprecate variables `DOXYGEN_SKIP_DOT`, `DOXYGEN_EXECUTABLE`,
  `DOXYGEN_DOT_EXECUTABLE`, `DOXYGEN_DOT_FOUND` in favour of
  `doxygen_add_docs ` usage instead;
- Properly handle paths to found tools in Windows;
- Prevent adding a custom target if Doxygen was not really found;
- Introduce exported (executable) targets for found components.

Co-Author: Craig Scott <craig.scott@crascit.com>
2017-05-24 10:15:45 +07:00
Brad King
8ca236592b Merge topic 'add-findpackage-root-prefix'
fe8f08d2 find_*: Add docs for PackageRoot search path group
57744ca9 find_*: Add tests for PackageRoot search path group
ef3d360a find_*: Add a new PackageRoot search path group

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !796
2017-05-22 10:40:04 -04:00
Brad King
561e5edc3c Merge topic 'FindProtobuf-targets'
37627217 Help: Add notes for topic 'FindProtobuf-targets'
e4e1d194 FindProtobuf: add tests
f29635b6 FindProtobuf: add targets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !861
2017-05-19 14:17:50 -04:00
Chuck Atkins
fe8f08d268 find_*: Add docs for PackageRoot search path group 2017-05-19 08:46:02 -04:00
Brad King
3762721708 Help: Add notes for topic 'FindProtobuf-targets' 2017-05-18 09:26:42 -04:00
Brad King
44f8f839cb Merge topic 'cpack-archive-per-component-filename'
9e06e97d CPack/Archive: per component filenames support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !859
2017-05-18 09:01:57 -04:00
Brad King
6b1e35d207 Merge topic 'gtest_add_tests'
6edd1806 GoogleTest: Expand capabilities of gtest_add_tests()

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !839
2017-05-18 08:46:02 -04:00
Ben Boeckel
1c25adb210 Help/dev: note that unstaging before an update is unnecessary 2017-05-17 13:05:00 -04:00
Domen Vrankar
9e06e97d30 CPack/Archive: per component filenames support
Support for setting archive packager specific
per component filenames and monolithic package
filenames.
2017-05-17 00:47:15 +02:00
Brad King
ef8ac5ad5a Merge topic 'cpackifw-i18n'
72ac7ad9 CPackIFW: Internationalization Support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !748
2017-05-16 09:55:29 -04:00
Craig Scott
6edd1806dd GoogleTest: Expand capabilities of gtest_add_tests()
Now has keyword-based arguments (old syntax form is still supported).
Discovered tests can have a prefix and/or suffix added to the test names
and the list of discovered tests is available to the caller. The working
dir can also be set and the dependency on the source files is now
optional instead of mandatory.
2017-05-16 07:57:27 +10:00
Gregor Jasny
6a6cbd47fb Help: Fix typo in add_library(... ALIAS ...) text 2017-05-14 22:09:19 +02:00
Konstantin Podsvirov
72ac7ad98d CPackIFW: Internationalization Support
Changes:
- DISPLAY_NAME and DESCRIPTION in CPackIFW module now is MULTI_ARGS;
- Added internationalization support for DisplayName and Description
  properties in cmCPackIFWPackage class;
- Added documentation to CPackIFW module;
- Added release note.
2017-05-13 02:34:15 +03:00
Brad King
8e2f3582eb Merge topic 'split-sysroot'
53e89b6a Add options for separate compile and link sysroots

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !819
2017-05-11 10:00:12 -04:00
Brad King
53e89b6ab0 Add options for separate compile and link sysroots
Add `CMAKE_SYSROOT_COMPILE` and `CMAKE_SYSROOT_LINK` variables to as
operation-specific alternatives to `CMAKE_SYSROOT`.  This will be useful
for Android NDKs that compile and link with different sysroot values
(e.g. `r14` with unified headers).

Co-Author: Florent Castelli <florent.castelli@gmail.com>
2017-05-09 14:21:54 -04:00
Roman Lebedev
32400110fe Help: Document HEADER_FILE_ONLY use case
Describe how to get sources into IDE project files.
2017-05-09 11:46:29 -04:00
Brad King
e1ae739e1f Merge topic 'ctest_submit_headers'
1a7d00bd ctest_submit: Add HTTPHEADER option

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !793
2017-05-05 09:50:58 -04:00
Zack Galbreath
1a7d00bd12 ctest_submit: Add HTTPHEADER option
Allow CTest script writers to specify additional HTTP headers to be sent
to CDash during submission.

The motivating case for this feature is a corresponding change in CDash.
This will allow projects to refuse submissions from any site not bearing
a valid authentication token.
2017-05-04 12:21:21 -04:00
Brad King
f15f905bab Features: Record standards and features for SunPro 5.14
Oracle Studio 12.5 adds support for C 11 and associated standard flags.
It also adds a few more C++ 11 features.
2017-05-03 13:13:43 -04:00