Commit Graph

375 Commits

Author SHA1 Message Date
Sylvain Joubert
b9ed29b7cb Help: Fix formatting typo for the 'if' command 2017-08-18 09:43:40 +02:00
Sylvain Joubert
d8ecc25457 Add PREPEND sub-command to string command 2017-08-11 13:26:33 +02:00
Brad King
f4e66b41d8 Merge topic 'find-package_root-disable'
578d95f8 find_*: Disable the PACKAGE_ROOT search path group for CMake 3.9

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1116
2017-08-10 09:22:02 -04:00
Brad King
578d95f87d find_*: Disable the PACKAGE_ROOT search path group for CMake 3.9
Disable the feature added by commit v3.9.0-rc1~71^2~2 (find_*: Add a new
PackageRoot search path group, 2017-05-03) and remove documentation
added by commit v3.9.0-rc1~71^2 (find_*: Add docs for PackageRoot search
path group, 2017-05-03).  Unfortunately the name `<pkg>_ROOT` may
already be set by projects for their own incompatible purposes.  Disable
the behavior change for now to fix the regression for CMake 3.9.  We can
restore it later with a policy.

In order to keep the implementation and tests working, add an
undocumented variable we can use in the tests to enable the behavior
before the policy is introduced.

Fixes: #17144
2017-08-08 11:52:28 -04:00
Brad King
b745cb3e55 Merge topic 'file_WRITE_docs'
d7472bbf file: Clarify directory creation behavior when using WRITE

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1088
2017-08-04 09:16:46 -04:00
Robert Dailey
d7472bbf16 file: Clarify directory creation behavior when using WRITE
When using `file(WRITE)`, parent directories are also created. Documentation
has been updated to explain this behavior.

Co-Author: Craig Scott <craig.scott@crascit.com>
2017-08-03 14:11:26 -04:00
Ruslan Baratov
75ca5f04df Help: Document that file(GLOB) result is sorted
It has been sorted since commit v3.6.0-rc1~54^2 (file: Sort GLOB results
to make it deterministic, 2016-05-14).  That commit left the order
unspecified in the documentation, but has been stable long enough to
document now.
2017-08-03 14:00:07 -04:00
Brad King
59e52b3041 Merge topic 'doc_configure_file'
c7d81e16 Help: Explicitly state that some file generations are lazy

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1025
2017-07-11 07:35:27 -04:00
Sylvain Joubert
c7d81e16cb Help: Explicitly state that some file generations are lazy
Fixes: #16856
2017-07-07 15:46:35 +02:00
Sylvain Joubert
58f4744821 configure_file: Add support for indented cmakedefine
Optional spaces and/or tabs are now understood between the '#' character
and the 'cmakedefine'/'cmakedefine01' words. This indentation is
preserved in the output lines.

Fixes: #13037
2017-07-04 12:00:02 +02:00
Pavel Solodovnikov
80f1221f50 include_guard: add doc pages and a release note 2017-06-22 11:13:15 +03: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
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
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
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
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
Chuck Atkins
fe8f08d268 find_*: Add docs for PackageRoot search path group 2017-05-19 08:46:02 -04:00
Gregor Jasny
6a6cbd47fb Help: Fix typo in add_library(... ALIAS ...) text 2017-05-14 22:09:19 +02: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
8fba1f4a03 Merge topic 'excludeFixtures'
c1b2b7c0 Add ctest options for limiting which tests fixtures add

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !778
2017-05-02 08:22:07 -04:00
Craig Scott
c1b2b7c03c Add ctest options for limiting which tests fixtures add
The new options allow the user to restrict the setup and cleanup tests
automatically added for fixtures.
2017-05-02 01:54:13 +10:00
Christian Pfeiffer
2a207aaca1 separgs: Add a NATIVE_COMMAND mode 2017-04-26 20:34:06 +02:00
Brad King
c94f1bcf92 Drop Visual Studio 7 .NET 2003 generator
This generator has been deprecated since CMake 3.6.  Remove it.
2017-04-19 15:28:05 -04:00
Brad King
44f0d2d991 Merge topic 'objlib-extend'
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
2017-04-19 10:47:31 -04:00
Brad King
334efdebb8 Merge topic 'doc-CMAKE_MATCH_n'
eb08e1fe Help: Document CMAKE_MATCH_<n> variables
8dd99752 Help: Link from if(MATCHES) to regex specification docs
a0091a69 Help: Format string() command regex specification docs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !719
2017-04-19 10:45:41 -04:00
Brad King
eb08e1febb Help: Document CMAKE_MATCH_<n> variables 2017-04-18 14:45:49 -04:00
Brad King
8dd9975263 Help: Link from if(MATCHES) to regex specification docs 2017-04-18 14:45:04 -04:00
Brad King
a0091a697e Help: Format string() command regex specification docs 2017-04-18 14:44:50 -04:00
Brad King
3022545f14 Help: Document find command search path separators
The `find_*` commands read search paths from both CMake variables
and from environment variables.  Document how multiple values in
these variables should be separated.

Fixes: #16800
2017-04-18 14:22:20 -04:00
Robert Maynard
eec93bceec Allow OBJECT libraries to be installed, exported, and imported
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>
2017-04-18 11:36:10 -04:00
Brad King
2cb98329f1 Merge topic 'project-description'
3b484871 project: Add `DESCRIPTION` parameter

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !679
2017-04-13 08:14:23 -04:00
Alex Turbov
3b4848717a project: Add DESCRIPTION parameter
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`.
2017-04-11 10:17:00 -04:00
Brad King
5e95a99088 Merge topic 'clarifyFileGenerateDocs'
d039f741 Help: Clarify file(GENERATE) only writes output file at generation phase

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !681
2017-04-10 10:01:11 -04:00
Craig Scott
d039f7414f Help: Clarify file(GENERATE) only writes output file at generation phase
Closes: #16556
2017-04-10 09:58:22 -04:00
Beeble
227de0b95d include_external_msproject: Honor MAP_IMPORTED_CONFIG_<CONFIG>
This allows projects added via `include_external_msproject` to compile
the preferred configuration despite different naming conventions.
2017-04-05 13:44:03 -04:00
Steven Newbury
462cf25427 Add support for x32-abi
Detect x32-abi through CMakeCompilerABI infrastruture and use this
information at runtime to determine the correct library paths with
`FIND_LIBRARY_USE_LIBX32_PATHS`.

Fixes: #15994
2017-03-07 15:22:55 -05:00
Christian Schmidbauer
503f25d490 find_library: Allow custom lib suffix be used as find path
Add a new `CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX` variable to allow use
of a custom suffix on `lib` directory names.  This is a more general
option than that added by commit v3.7.0-rc1~504^2 (Teach find_library
and find_package to search lib32 paths, 2016-06-10).  It allows the find
path to be more deterministic on custom setups.

See discussion in #10287 and #15994.
2017-03-01 09:49:42 -05:00
Brad King
07c3380a6e execute_process: Restore no-decoding default behavior
Since commit v3.8.0-rc1~232^2 (execute_process: Add ENCODING option for
Windows child process output, 2016-11-23) we decode child process output
using the console's active codepage by default.  This differs from
previous versions of CMake and is therefore incompatible.  Changing this
default will require a policy, so for now revert the default behavior
back to performing no decoding.

Reported-by: Nils Gladitz <nilsgladitz@gmail.com>
2017-02-13 13:53:17 -05:00
Brad King
4168bc184e Help: Improve execute_process ENCODING option documentation
Spell out the options in a definition list and document each one.
2017-02-13 13:53:17 -05:00
Brad King
30abf145fd Help: Fix cmake code block warnings produced by Sphinx 1.4
Some of our "cmake" code blocks do not use fully valid CMake syntax
because they have placeholders for human reference.  Sphinx has
never been able to properly lex and highlight these, but now warns.
Fix each block's syntax or change to a non-cmake block as appropriate.
2017-02-10 10:43:30 -05:00
Brad King
f012a95836 Merge topic '16432-static-frameworks'
071f8e78 Apple: Add support for static frameworks
d525754e Xcode: Refactor RunCMake.Framework test to prepare for static frameworks
45405f00 Xcode: Ignore Xcode project warning until issue is fixed
50e1c105 Makefile: For static libraries remove only the "real" lib before creating
8643ca75 Makefile: Re-order list of files to clean
2017-01-31 09:04:16 -05:00
Gregor Jasny
071f8e78dd Apple: Add support for static frameworks
Closes: #16432
2017-01-31 08:59:15 -05:00
Bernhard M. Wiedemann
6c54f7b365 string: Teach TIMESTAMP to treat %% as %
This encoding is documented by `strptime`.
2017-01-27 09:25:37 -05:00
Bernhard M. Wiedemann
243aed525a cmTimestamp: Support SOURCE_DATE_EPOCH to override current time
See https://reproducible-builds.org/ for why this is good and
https://reproducible-builds.org/specs/source-date-epoch/ for the
definition of this variable.
2017-01-26 10:21:41 -05:00
Brad King
22d240184c Merge topic 'cdash_upload_retry'
05ed82b1 ctest_submit: Update documentation for CDash upload retries
0ce7643a ctest_submit: improve handling of QUIET option
5614a5cd ctest_submit: Allow RETRY_COUNT for CDASH_UPLOAD
2017-01-20 11:54:28 -05:00
Zack Galbreath
05ed82b1d2 ctest_submit: Update documentation for CDash upload retries 2017-01-20 11:37:27 -05:00
Brad King
aa63ab6d3e Merge topic 'expand_custom_commands'
7c8ab7dd add_custom_{command,target}: Add COMMAND_EXPAND_LISTS option
2017-01-17 09:04:50 -05:00
Mateusz Janek
b42330be21 source_group: Add options create groups matching directory tree
Add `TREE` and `PREFIX` arguments to enable this behavior.
2017-01-16 10:52:48 -05:00