Commit Graph

2972 Commits

Author SHA1 Message Date
Brad King f0a9094d80 Merge topic 'no-smiley'
24fa04018c Help: Spell out ";-list" as "semicolon-separated list"

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2528
2018-10-29 09:30:25 -04:00
Brad King f7b8e67463 Merge topic 'doc-updates'
2f9c253961 Help: clarify "LINKER:" prefix usage

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2530
2018-10-26 11:02:09 -04:00
Brad King 216df68b32 Merge topic 'xref1'
760c87c73c Help: Back-reference from find_package() to "Find Modules"

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2531
2018-10-26 09:40:09 -04:00
Marc Chevrier 2f9c253961 Help: clarify "LINKER:" prefix usage
Fixes: #18503
2018-10-26 09:36:53 -04:00
Brad King 6166384e3e Merge topic 'relative-rpath'
95bd6317bc RPATH: Record support for $ORIGIN on various *BSD
c9b8c79271 RPATH: Record support for $ORIGIN on Haiku and Solaris
6114d85a7d RPATH: Add option for using $ORIGIN in build tree

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2456
2018-10-26 09:31:00 -04:00
Peter Wu 6114d85a7d RPATH: Add option for using $ORIGIN in build tree
This makes binaries independent of the build directory by not embedding
the build directory via RPATH.  The tests are partially based on the
existing RuntimePath test, but with the check moved into a POST_BUILD
command such that it can be skipped when the platform lacks support.

Fixes: #18413
2018-10-26 09:25:51 -04:00
Joachim Wuttke (o) 760c87c73c Help: Back-reference from find_package() to "Find Modules"
viz., to section "Find Modules" in cmake-modules.7
2018-10-25 21:44:02 +02:00
Brad King 33cb7a669d Merge topic 'more-highlighting'
14edbe7e7b Help: Syntax highlighting for long strings in cmake-language.7
4f4d5a9b3a Help: Apply syntax highlighting to cmake-generator-expressions.7

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2527
2018-10-25 11:01:33 -04:00
Brad King bb43a42bb9 Merge topic 'deprecation'
c8e8c9cc7c Help: Date deprecation of deprecated commands.
19998d7b3c Help: Use 'deprecated' template, and date deprecation of modules
dc1bb33578 Help: Add version number to deprecation note

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2523
2018-10-25 11:00:57 -04:00
Joachim Wuttke (o) 24fa04018c Help: Spell out ";-list" as "semicolon-separated list" 2018-10-25 15:44:59 +02:00
Joachim Wuttke (o) 14edbe7e7b Help: Syntax highlighting for long strings in cmake-language.7 2018-10-25 14:00:34 +02:00
Joachim Wuttke (o) 4f4d5a9b3a Help: Apply syntax highlighting to cmake-generator-expressions.7 2018-10-25 13:55:30 +02:00
Joachim Wuttke (o) adbaadf0ee Help: Apply syntax highlighting to project commands
* Replace most "::" by ".. code-block:: cmake"
  * Header sentence in imperative voice,
    detailed command description in present tense.
2018-10-25 13:47:31 +02:00
Joachim Wuttke (o) c8e8c9cc7c Help: Date deprecation of deprecated commands. 2018-10-25 13:15:34 +02:00
Joachim Wuttke (o) dc1bb33578 Help: Add version number to deprecation note
In section "Deprecated Commands" in manual/cmake-commands.7,
indicate that those commands are deprecated since 3.0.
2018-10-25 11:05:06 +02:00
Brad King 008cb6aa99 Merge topic 'scripting-commands'
c2efb3efcd Help: Revise docs on Scripting Commands

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2504
2018-10-24 10:39:39 -04:00
Joachim Wuttke (l) c2efb3efcd Help: Revise docs on Scripting Commands
Revise docs for all "Scripting Commands", except four find_XXX
that use a macro suite of their own.

* Take full advantage of the improved syntax highlighting.
* Make consequential use of <..> placeholders.
* Clarify things here and there in the text.

Specific improvements to some command docs:

* "math": Correct description of novel hexadecimal capability.
* "if", "foreach", "while": Provide link to "endif" etc
* "foreach", "while": Mention "break" and "continue".
* "foreach": Simplify explanation of ``RANGE`` and ``IN`` signatures;
   advise against negative arguments or reverse ranges (compare issue #18461)
* "endif", "endfunction" etc: Explain that the argument is optional and
   maintained for compatibility only
2018-10-23 15:12:10 +02:00
Wouter Klouwen 7ddc9e353b ExternalProject: option LOG_MERGED_STDOUTERR to combine stdout and stderr
In some circumstances the user of ExternalProject may not desire the
split log files for stdout and stderr. In particular with a project has
many errors it can be difficult to correlate the output error with the
command that it resulted from.

This commit adds the LOG_MERGED_STDOUTERR option that when enabled
outputs into a unified <name>-<step>.log for each step. If disabled it
will default to the previous behaviour of <name>-<step>-out.log and
<name>-<step>-err.log.
2018-10-19 15:32:51 +01:00
Brad King d120ccd193 Merge topic 'find_fontconfig'
84e7920b3a FindFontconfig: Add module to find Fontconfig

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2487
2018-10-19 09:59:27 -04:00
Brad King b142956829 Merge topic 'doc-target_link_libraries-item-quoting'
18cff26e3a Help: Clarify command-line encoding of target_link_libraries items

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2503
2018-10-19 09:47:53 -04:00
Craig Scott 7053dd301c Merge topic 'help-syntax-highlighting'
93f3f65516 Help: Revise docs of modules AddFileDependencies..CheckFunctionExists
fc7ee1ca45 Help: Override pygments CMakeLexer to support <..> and [..]
74b3eacdc7 Help: Use appropriate list types in FindPkgConfig

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2468
2018-10-19 06:31:55 -04:00
Joachim Wuttke (o) fc7ee1ca45 Help: Override pygments CMakeLexer to support <..> and [..]
* The code snippets in the docs consist of CMake code mixed
  with syntax definition punctuation like < > [ ] ... Therefore
  a pure CMake lexer is inadequate. Here it is replaced by a
  CMake syntax definition parser.
* Fixed syntax definition snippets in FindPkgConfig.cmake to
  make best use of syntax highlighting. This source file is the
  hardest to support because it contains comparison operators
  <= = >=, which need special attention to avoid confusion
  with the placeholder indicators <...>.
* Fixed syntax in execute_process.rst (there were unbalanced
  brackets).
* Disabled syntax highlighting for long string examples in
  cmake-language.7.rst.
* No highlighting of removed syntax in CMP0049
* To inspect the outcome of this patch, see e.g. the pages
  * manual/cmake-buildsystem.7.html
  * module/ExternalProject.html
  * module/FindPkgConfig.html
  which are particularly rich in complex code snippets.
2018-10-19 07:25:34 +11:00
Frederik Gladhorn 84e7920b3a FindFontconfig: Add module to find Fontconfig
This module is inspired by one from KDE's KWin.
2018-10-18 20:32:09 +02:00
Brad King 18cff26e3a Help: Clarify command-line encoding of target_link_libraries items
Items that have full paths will be quoted automatically.  Other
items are treated as command-line string fragments and get no
automatic escaping.  Document the behavior for each item kind.

Fixes: #18467
2018-10-18 13:31:24 -04:00
Brad King 56c85d9429 Merge topic 'rel-doc-qthelp'
1d5c8b81db Utilities/Release: Add qthelp docs to binary archives

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2497
2018-10-18 07:38:15 -04:00
Brad King 5b47557c82 Merge topic 'revert-server-iface-sources'
284a38e42f cmake-server: Revert "Support codemodel filegroups for INTERFACE_SOURCES"

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2495
2018-10-18 07:31:18 -04:00
Brad King 1d5c8b81db Utilities/Release: Add qthelp docs to binary archives
Fixes: #18465
2018-10-17 14:38:46 -04:00
Brad King 284a38e42f cmake-server: Revert "Support codemodel filegroups for INTERFACE_SOURCES"
Revert commit v3.13.0-rc1~144^2 (cmake-server: Support codemodel
filegroups for INTERFACE_SOURCES, 2018-08-10).  The changes activate
code paths not meant to be used with interface libraries.  Another
approach will be needed to expose this information later.

This revert has to be done by hand because the code in question has been
changed somewhat since the changes were made, and was also factored out
to another source file.

Fixes: #18463
2018-10-17 14:02:39 -04:00
Brad King 78681bf001 Merge topic 'better-empty-list-behavior'
121a036f73 cmListCommand: handle empty lists for list(REMOVE_AT)
acfe53c588 cmListCommand: make list(ACTION not_a_list) succeed when idempotent
bf572ac952 cmListCommand: check list(FILTER) operation before the list

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2478
2018-10-17 13:27:56 -04:00
Ben Boeckel 121a036f73 cmListCommand: handle empty lists for list(REMOVE_AT)
Treat an empty list as a list with no valid bounds and return an error
message indicating that any given indices are out-of-bounds.
2018-10-16 14:31:39 -04:00
Ben Boeckel acfe53c588 cmListCommand: make list(ACTION not_a_list) succeed when idempotent
The operations changed here all are no-ops on empty lists anyways, so
just have them succeed when given non-extant lists.

  - `list(REMOVE_ITEM)`
  - `list(REMOVE_DUPLICATES)`
  - `list(SORT)`
  - `list(FILTER)`
  - `list(REVERSE)`
2018-10-16 14:31:39 -04:00
Brad King e5e59a1bc6 Merge topic 'document-dollar-in-varnames'
82a4822610 CMP0053: document that `$` is a valid literal variable character

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2479
2018-10-16 11:04:09 -04:00
Ben Boeckel 82a4822610 CMP0053: document that $ is a valid literal variable character
This was overlooked in the initial implementation of CMP0053. However,
an additional policy to reject it again is not worth it. Instead, add
tests and document the behavior.

Fixes: #17883
2018-10-15 13:59:39 -04:00
Brad King f225d79881 Merge topic 'update_debug_target_properties'
86921f0264 Help: document CMAKE_DEBUG_TARGET_PROPERTIES support for LINK properties

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2480
2018-10-15 13:03:51 -04:00
Robert Maynard 86921f0264 Help: document CMAKE_DEBUG_TARGET_PROPERTIES support for LINK properties 2018-10-12 09:53:22 -04:00
Brad King 7bacb22955 Merge topic 'cppcheck-exit-code'
3b80cd77fb Fail the build if cppcheck returns a non-zero exit code

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2459
2018-10-12 08:17:58 -04:00
Brad King 1cfe2442c4 Merge topic 'find_libinput'
f76047f34a FindLibinput: Add module to find libinput

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2420
2018-10-12 08:15:25 -04:00
Frederik Gladhorn f76047f34a FindLibinput: Add module to find libinput
This module is inspired by one from KDE's KWin.
2018-10-11 10:43:45 -04:00
Brad King fd0e40f166 Merge branch 'backport-revert-install-code-script-genex' into revert-install-code-script-genex 2018-10-11 08:14:48 -04:00
Harald Brinkmann 3b80cd77fb Fail the build if cppcheck returns a non-zero exit code
This allows the build failure to be tuned with cppcheck's
options --error-exitcode=<n> and --exitcode-suppressions=<file>.
2018-10-11 07:56:05 -04:00
Brad King 7d2ee4cb98 Merge topic 'install-subdirectory-order'
b56f2db87a Testing: Add test for CMP0082
fc8955e889 add_subdirectory: Run subdirectory install rules in correct order
514f0b572e Testing: Update hard-coded line numbers to [0-9]+ in some tests

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2434
2018-10-11 07:37:59 -04:00
Brad King 2e1fe8fabe Merge topic 'ctest-done'
a6e0158712 ctest_submit: Add support for a "Done" part
f460bbd4c8 ctest_submit: Refactor file list to use a vector instead of a set

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Zack Galbreath <zack.galbreath@kitware.com>
Merge-request: !2405
2018-10-11 07:32:54 -04:00
Brad King 0f48fbaa72 install: Revert CODE,SCRIPT support for generator expressions
Revert commit v3.13.0-rc1~441^2 (install: Teach CODE,SCRIPT modes to
evaluate generator expressions, 2018-05-29).  Unfortunately it has
been found to break existing code in a real project, e.g.

    install(CODE [[
        message("$<FOOBAR>")
    ]])

Address this regression by reverting support for the 3.13 release
series.  Support can be restored later with a policy for compatibility.

Issue: #15785
Fixes: #18435
2018-10-11 07:05:55 -04:00
Kyle Edwards fc8955e889 add_subdirectory: Run subdirectory install rules in correct order
Before this change, install rules created by add_subdirectory()
would be executed after all of the top-level install rules, even
if they were declared before the top-level rules. This change
adds a new policy, CMP0082, which interleaves the add_subdirectory()
install rules with the other install rules so they are run in the
correct order.
2018-10-10 10:26:39 -04:00
Craig Scott 5dd16bc92c Merge topic 'module-index-restructure'
dc372f6eef Help: Document Use_wxWindows.cmake as deprecated
846e3d2ceb Help: Reorganise module index into sections
c9cedd675b Help: Add link to cmake-qt(7) to FindQt.cmake.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2463
2018-10-10 08:49:23 -04:00
Brad King b62d15c216 Merge topic 'project-version'
2f43bd3b6c Help: move description of CMAKE_PROJECT_* variables
e3e5445d83 Help: Describe options of command project in a definition list.
5b56795d57 Help: make the two signatures of command "project" orthogonal

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2450
2018-10-10 07:05:03 -04:00
Betsy McPhail a6e0158712 ctest_submit: Add support for a "Done" part
Teach CTest to submit Done.xml. Submission of this file indicates to
CDash that a build is complete and no more files will be uploaded. It
contains the build id returned by CDash and the current time.

This file is submitted last for a given build when using the
`ctest_submit()` command.

If submitting by PARTS, use `ctest_submit(PARTS Done)`.
2018-10-10 06:55:59 -04:00
Craig Scott dc372f6eef Help: Document Use_wxWindows.cmake as deprecated
The implementation already logged a message saying that the module
was deprecated. This change adds that message to the module docs.
2018-10-09 17:13:52 +02:00
Joachim Wuttke (l) 846e3d2ceb Help: Reorganise module index into sections
* Split up module list into separate sections for utility modules
  and find modules.
* Improve wording to explain how the different module types
  are expected to be called/used.
* Move deprecated modules to their own separate sections.
2018-10-09 17:13:11 +02:00
Joachim Wuttke (o) 2f43bd3b6c Help: move description of CMAKE_PROJECT_* variables
Describe these variables along with the other variables.
2018-10-09 15:28:53 +02:00