Commit Graph

24295 Commits

Author SHA1 Message Date
Brad King 360886b180 Merge topic 'vs10-cmelem'
a74d5a5c8b cmVisualStudio10TargetGenerator: improved XML nesting

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1849
2018-03-19 08:25:49 -04:00
Kitware Robot dfc9036bcf CMake Nightly Date Stamp 2018-03-19 00:01:08 -04:00
Kitware Robot 6aab885c92 CMake Nightly Date Stamp 2018-03-18 00:01:15 -04:00
Craig Scott 80784ef77f Merge topic 'project-homepage-url'
73f9b2974c project: Add HOMEPAGE_URL named parameter
fd28c382b4 project: Add <PROJECT-NAME>_DESCRIPTION
9b57cb62ea Help: Fix minor typo in docs for CMAKE_PROJECT_DESCRIPTION
c89993d529 Tests: Avoid enabling languages unnecessarily in RunCMake.project

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1816
2018-03-17 18:24:44 -04:00
Kitware Robot c824b6c667 CMake Nightly Date Stamp 2018-03-17 00:01:12 -04:00
Alex Turbov 73f9b2974c project: Add HOMEPAGE_URL named parameter
This sets variables like PROJECT_HOMEPAGE_URL, which can be
used as default values for various things (packaging modules,
doxygen defaults, etc.). Some packaging modules have been
updated to do this as part of this commit.

Co-Author: Craig Scott <craig.scott@crascit.com>
2018-03-17 08:25:48 +11:00
Craig Scott fd28c382b4 project: Add <PROJECT-NAME>_DESCRIPTION
For consistency with the VERSION keyword, also define the
<PROJECT-NAME>_DESCRIPTION variable.
2018-03-17 08:25:48 +11:00
Vitaly Stakhovsky a74d5a5c8b cmVisualStudio10TargetGenerator: improved XML nesting
Introduce an `Elem` helper class to track XML element state.  This
simplifies code in a few places, particularly OutputSourceSpecificFlags.
2018-03-16 08:50:19 -04:00
Kitware Robot 43e8e0b688 CMake Nightly Date Stamp 2018-03-16 00:01:12 -04:00
Brad King 2ab900c71b Merge topic 'compile-options-shell'
ce0b983216 target_compile_options: Add syntax to specify shell strings

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1841
2018-03-15 07:55:14 -04:00
Kitware Robot 07f9f41f50 CMake Nightly Date Stamp 2018-03-15 00:01:07 -04:00
Brad King ce0b983216 target_compile_options: Add syntax to specify shell strings
Options specified via `COMPILE_OPTIONS` and `INTERFACE_COMPILE_OPTIONS`
are deduplicated, but individual options can legitimately be duplicated
when grouped with other options, e.g.

    -D A -D B

After deduplication that becomes `-D A B`.  Therefore we need a way to
treat groups of options as units during deduplication.  A simple approach
is to specify each group as one option, e.g.

    "-D A" "-D B"

However, that conflicts with options that legitimately have spaces.  To
break this ambiguity, add a `SHELL:` prefix syntax to specify that an
option should be parsed like shell command line arguments after
deduplication, e.g.

    "SHELL:-D A" "SHELL:-D B"

These will survive deduplication intact, and then be parsed to produce
`-D A -D B` on the final command line.

Fixes: #15826
2018-03-14 11:10:25 -04:00
Kitware Robot 65b7648609 CMake Nightly Date Stamp 2018-03-14 00:01:10 -04:00
Brad King bdbee54a83 Merge topic 'genex-COMPILE_LANGUAGE-system-include'
1b5e52fd65 Genex: Fix COMPILE_LANGUAGE propagation through try_compile
2deb9b7f34 Genex: Fix COMPILE_LANGUAGE in SYSTEM include directories

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1844
2018-03-13 13:42:45 -04:00
Brad King 7c557e2227 Merge topic 'ccmake-stack-smashing'
7899e53691 ccmake: fix status line buffer overflow on very wide terminals

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1836
2018-03-13 13:42:00 -04:00
Tianhao Chai 7899e53691 ccmake: fix status line buffer overflow on very wide terminals
A mistyped length calculation will memset across stack frame when
the user's terminal width is larger than 270.
2018-03-13 13:38:12 -04:00
Kitware Robot b2584ce069 CMake Nightly Date Stamp 2018-03-13 00:01:15 -04:00
Brad King 378a11cdba Merge topic 'genex-TARGET_EXISTS'
7fec336bf7 genex: Add TARGET_EXISTS to check for target existence

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1829
2018-03-12 13:42:18 -04:00
Brad King 746ebaf563 Merge topic 'xml-raii'
90086767dd cmGlobalVisualStudio10Generator: Use cmXMLWriter RAII helpers
8401b6ac4e cmXMLWriter: Add RAII helpers to allow DOM-like syntax

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1818
2018-03-12 13:41:28 -04:00
Brad King fac050ec8d Merge topic 'update-dllplatform'
2dc2a3eb15 Identify DLL platforms via CMAKE_IMPORT_LIBRARY_SUFFIX

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1832
2018-03-12 13:40:44 -04:00
Brad King 725b0cab86 Merge topic 'cmake-rc-version-decimal'
588a1afe76 CMakeVersion.rc: Avoid leading zeros in integer version components

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1835
2018-03-12 13:39:45 -04:00
Brad King 1b5e52fd65 Genex: Fix COMPILE_LANGUAGE propagation through try_compile
When evaluating include directories during export to a `try_compile`
test project, thread the compile language through to the generator
expression evaluator so it can support `$<COMPILE_LANGUAGE:...>`.

Issue: #17811
2018-03-12 13:30:14 -04:00
Brad King 2deb9b7f34 Genex: Fix COMPILE_LANGUAGE in SYSTEM include directories
When evaluating `INTERFACE_SYSTEM_INCLUDE_DIRECTORIES`, or evaluating
`INTERFACE_INCLUDE_DIRECTORIES` on an imported target, thread the
compile language through to the generator expression evaluator so
that it can support `$<COMPILE_LANGUAGE:...>`.

Fixes: #17811
2018-03-12 11:45:01 -04:00
Kitware Robot b340cacde8 CMake Nightly Date Stamp 2018-03-12 00:01:06 -04:00
Kitware Robot c703972694 CMake Nightly Date Stamp 2018-03-11 00:01:06 -05:00
Kitware Robot 6dbdfab1a9 CMake Nightly Date Stamp 2018-03-10 00:01:12 -05:00
Brad King 588a1afe76 CMakeVersion.rc: Avoid leading zeros in integer version components
The split in commit v3.11.0-rc1~232^2 (CMakeVersion RC file: Split patch
into 2 components, 2017-12-01) can leave components "2018,0309", but the
latter is an octal constant with digit "9" out of range.  Strip the
leading zero to express the components as "2018,309" so the resource
compiler treats them as decimal.
2018-03-09 10:52:49 -05:00
Vitaly Stakhovsky 90086767dd cmGlobalVisualStudio10Generator: Use cmXMLWriter RAII helpers
This simplifies our XML generation code and avoids the need to disable
clang-format.
2018-03-09 10:11:11 -05:00
Brad King c5541cf0da CMake 3.11.0-rc3 2018-03-09 08:33:11 -05:00
Alex Turbov 7fec336bf7 genex: Add TARGET_EXISTS to check for target existence
Define `$<TARGET_EXISTS:a>` to `1` if `a` is an existed target name,
else `0`.
2018-03-09 08:24:05 -05:00
Stephan Szabo 2dc2a3eb15 Identify DLL platforms via CMAKE_IMPORT_LIBRARY_SUFFIX
Use `CMAKE_IMPORT_LIBRARY_SUFFIX` to identify platforms that have DLL
import libraries rather than memorizing a list of platform names.

Fixes: #16801
2018-03-09 08:09:21 -05:00
Brad King e11410bb0c Merge topic 'cmWorkingDirectory_success_checking'
5901699672 cmDepends: Remove attempt to change directory that always fails
e60e4dfc88 cmWorkingDirectory: Check success of current dir changes
e654622aee Tests: Add --build-and-test test case
a865f0beb2 Tests: Confirm test working dir set successfully

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1817
2018-03-09 07:43:54 -05:00
Brad King 44fc572963 Merge topic 'cmoutpconv-static'
ff5823f512 cmOutputConverter: mark helper functions static

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1827
2018-03-09 07:40:28 -05:00
Brad King 98622e5e72 Merge topic 'make-clean-no-targets'
81bc7610ab Makefile: Fix "make clean" when there are no targets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1833
2018-03-09 07:38:49 -05:00
Brad King f8adde152f Merge topic 'sort_glob_output'
87a6816baf Add test for sorting and deduping of file(GLOB) result
b688d4fd22 file(GLOB): Ensure entire file list is sorted

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1821
2018-03-09 07:38:07 -05:00
Vitaly Stakhovsky 8401b6ac4e cmXMLWriter: Add RAII helpers to allow DOM-like syntax
Use RAII for cmXMLWriter::StartElement/EndElement to make nesting
automatic.
2018-03-09 07:28:49 -05:00
Kitware Robot 72abc75519 CMake Nightly Date Stamp 2018-03-09 00:01:10 -05:00
Craig Scott 81b17f4649 Merge topic 'project-warn-missing-metadata-values'
587bad7ba2 project: warn on metadata arguments missing values

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1815
2018-03-08 16:11:52 -05:00
Brad King 50b2d0c944 Merge topic 'misc-typos'
32f6b7a43b Fix misc typos in documentation and comments

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1826
2018-03-08 09:58:19 -05:00
Brad King 1076ac9d68 Merge topic 'vs10-xmlmacros'
59d8cfb85e cmVisualStudio10TargetGenerator: Use helpers for XML tags

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1813
2018-03-08 09:57:44 -05:00
Brad King f0b412dd82 Merge topic 'avoid-LIB_DEPENDS'
7723e9a058 Do not produce legacy _LIB_DEPENDS cache entries
2124a1364a cmTarget: Remove unnecessary RecordDependencies member
1c5bfab532 cmTarget: Simplify ClearDependencyInformation implementation
910a9d608e cmTarget: Simplify ClearDependencyInformation signature

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Pavel Solodovnikov <hellyeahdominate@gmail.com>
Merge-request: !1828
2018-03-08 09:55:09 -05:00
Brad King ca2ac4979d Merge topic 'update-kwsys'
2c5b4359f8 Merge branch 'upstream-KWSys' into update-kwsys
64d4308d83 KWSys 2018-03-07 (2ad561e7)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1830
2018-03-08 09:50:19 -05:00
Brad King 81bc7610ab Makefile: Fix "make clean" when there are no targets
The empty `clean` target was missing from `Makefile2`.
Add one like we already have for `all` and `preinstall`.
2018-03-08 09:01:53 -05:00
Craig Scott 5901699672 cmDepends: Remove attempt to change directory that always fails
Nothing ever set `CompileDirectory` except `SetDirectory()`, but
nothing ever called that function. Therefore, `CompileDirectory`
was always empty for the attempt to change directory in `Check()`,
which therefore would always fail. Nothing was checking the result
and the code was always going to have no effect.
2018-03-08 20:14:42 +11:00
Craig Scott e60e4dfc88 cmWorkingDirectory: Check success of current dir changes 2018-03-08 20:07:14 +11:00
Kitware Robot 458fc1de49 CMake Nightly Date Stamp 2018-03-08 00:01:12 -05:00
Shane Parris b688d4fd22 file(GLOB): Ensure entire file list is sorted 2018-03-07 12:12:19 -05:00
luz.paz 32f6b7a43b Fix misc typos in documentation and comments 2018-03-07 10:54:46 -05:00
Alex Turbov 587bad7ba2 project: warn on metadata arguments missing values
Warn if `DESCRIPTION` or `VERSION` is given without a following value.
2018-03-07 09:35:59 -05:00
Vitaly Stakhovsky 59d8cfb85e cmVisualStudio10TargetGenerator: Use helpers for XML tags
Make the XML generating code smaller, more structured, and less
error-prone.  This is a step towards future XML refactoring.
2018-03-07 08:51:30 -05:00