Commit Graph

24344 Commits

Author SHA1 Message Date
Brad King
df0cfdf60e Merge topic 'vs-options-movexml'
a0d9429bd7 cmVisualStudioGeneratorOptions: Move XML code to subclasses

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1885
2018-03-27 07:50:55 -04:00
Brad King
b9788dc5a3 Merge topic 'revert-CTestTestfile-removal-again'
70c50aa23c Revert "Remove CTestTestfile.cmake when BUILD_TESTING is OFF"

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1887
2018-03-27 07:49:28 -04:00
Kitware Robot
82b0316e0a CMake Nightly Date Stamp 2018-03-27 00:01:05 -04:00
Vitaly Stakhovsky
a0d9429bd7 cmVisualStudioGeneratorOptions: Move XML code to subclasses 2018-03-26 09:35:58 -04:00
Brad King
70c50aa23c Revert "Remove CTestTestfile.cmake when BUILD_TESTING is OFF"
Revert commit v3.8.0-rc1~305^2 (Remove CTestTestfile.cmake when BUILD_TESTING
is OFF, 2016-11-14) again.  We reverted it once in commit v3.8.0-rc3~22^2
(Revert "Remove CTestTestfile.cmake when BUILD_TESTING is OFF", 2017-03-06) but
it was accidentally restored by commit v3.11.0-rc1~387^2 (server: add
"ctestInfo" request to get test info, 2017-10-25), perhaps due to conflict
resolution during rebase.

We cannot remove `CTestTestfile.cmake` when testing is off because it breaks
projects that never enable testing but create their own `CTestTestfile.cmake`
manually instead.  Revert the change again and add a test case.
2018-03-26 07:44:22 -04:00
Kitware Robot
2fd00f7668 CMake Nightly Date Stamp 2018-03-26 00:01:10 -04:00
Kitware Robot
b080ac48c3 CMake Nightly Date Stamp 2018-03-25 00:01:04 -04:00
Kitware Robot
3dec341fe7 CMake Nightly Date Stamp 2018-03-24 00:01:13 -04:00
Craig Scott
23922f48cc Merge topic 'pr.find_package.prefixes'
4eb5d851d5 Help: Add 'lib32|libx32|lib64' paths to find_package prefixes

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1878
2018-03-23 05:11:18 -04:00
Kitware Robot
2614335a34 CMake Nightly Date Stamp 2018-03-23 00:01:09 -04:00
Craig Scott
9f2ec9d241 Merge topic 'list-sublist'
768225837d list: Add SUBLIST sub-command

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1874
2018-03-22 15:27:24 -04:00
Craig Scott
82df2fe17e Merge topic 'policy-version-range'
45408b5ea1 cmake_minimum_required: Optionally set policies with version range
6a41aa2abd cmPolicies: Split parsing and impl of ApplyPolicyVersion
1d00ed7cf7 cmPolicies: Drop unnecessary check from ApplyPolicyVersion
0df559832b cmPolicies: Pass policy version as std::string

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1864
2018-03-22 15:24:49 -04:00
Brad King
45ffb4ac79 Merge topic 'ccmake-revise-default'
99bf77f49c ccmake: Check for curses more robustly before enabling

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1881
2018-03-22 08:39:26 -04:00
Brad King
a5eb7d1c11 Merge topic 'vs-flags-improvement'
5697c6ae03 cmVisualStudioGeneratorOptions: Factor out an OutputFlag helper

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1862
2018-03-22 08:35:17 -04:00
Brad King
a7ac022425 Merge topic 'find-package_root-revise'
3f479a3ca3 find_package: Improve CMP0074 warning messages

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1880
2018-03-22 08:32:54 -04:00
Kitware Robot
9b3d3952a8 CMake Nightly Date Stamp 2018-03-22 00:01:06 -04:00
Ruslan Baratov
4eb5d851d5 Help: Add 'lib32|libx32|lib64' paths to find_package prefixes
Document the conditions when 'lib32|libx32|lib64' variants will be added to the
list of possible installation prefixes.
2018-03-21 20:59:09 +03:00
Brad King
99bf77f49c ccmake: Check for curses more robustly before enabling
Compute a default for `BUILD_CursesDialog` by building a small test
project that uses curses.  Disable `ccmake` by default if it fails,
and do not search for Curses as part of the main build.  This avoids
creating FindCurses cache entries when we are not considering ccmake.

If `BUILD_CursesDialog` is enabled (e.g. by the user) then warn if
curses cannot be found.
2018-03-21 13:57:45 -04:00
Marc Chevrier
768225837d list: Add SUBLIST sub-command
Issue: #17823
2018-03-21 12:54:53 -04:00
Brad King
87223a24f0 Merge topic 'makefile-fix-depend-optimization'
8c0f12c4aa Makefile: Restore use of dependency scanning cache

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1870
2018-03-21 09:08:10 -04:00
Brad King
64bb65777a Merge topic 'ccmake-solaris'
3b7be02480 ccmake: Fix compilation with ncurses on Solaris

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1876
2018-03-21 08:56:09 -04:00
Brad King
45408b5ea1 cmake_minimum_required: Optionally set policies with version range
Teach `cmake_minimum_required` and `cmake_policy(VERSION)` to support a
version range of the form `<min>[...<max>]`.  Define this to mean that
version `<min>` is required, but known policies up to those introduced
by `<max>` will be set to `NEW`.  This will allow projects to easily
specify a range of versions for which they have been updated.
2018-03-21 08:00:28 -04:00
Brad King
3f479a3ca3 find_package: Improve CMP0074 warning messages
Policy `CMP0074` was added by commit eb35d8884b (find_package: Use
PackageName_ROOT variables as search prefixes, 2018-03-15).  Revise the
logic to avoid warning when a `PackageName_ROOT` variable is set to
empty since that won't change the search behavior.  Also, when we do
warn include the variable value(s) for reference.
2018-03-21 07:51:20 -04:00
Kitware Robot
9fae23f703 CMake Nightly Date Stamp 2018-03-21 00:01:12 -04:00
Vitaly Stakhovsky
5697c6ae03 cmVisualStudioGeneratorOptions: Factor out an OutputFlag helper 2018-03-20 14:10:04 -04:00
Brad King
3b7be02480 ccmake: Fix compilation with ncurses on Solaris
On Solaris the ncurses header may define an `__attribute__` macro.
This breaks C++ headers that use `__attribute__(...)` syntax.
Somehow it causes references to unresolved symbols:

    __gthrw_pthread_once
    __gthrw_pthread_mutex_lock
    __gthrw_pthread_mutex_unlock

instead of references to the correct symbols:

    pthread_once
    pthread_mutex_lock
    pthread_mutex_unlock

Detect this case and undefine the `__attribute__` macro after
including the curses headers.
2018-03-20 11:39:28 -04:00
Brad King
d41abae70f Merge topic 'list-join'
a58158727b list(): add `JOIN` sub-command

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1846
2018-03-20 09:40:40 -04:00
Marc Chevrier
a58158727b list(): add JOIN sub-command 2018-03-20 14:28:17 +01:00
Brad King
157ae9a088 Merge topic 'make_GetItems_const'
8e20ad1a5e cmComputeLinkInformation: make GetItems() const

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1863
2018-03-20 09:21:02 -04:00
Brad King
f5f992b6f0 Merge topic 'vs-indentfix'
b82ad18fe0 cmVisualStudio10TargetGenerator: fix indentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1868
2018-03-20 09:19:26 -04:00
tsecer harry
8c0f12c4aa Makefile: Restore use of dependency scanning cache
Since commit v2.8.0~27 (Major optimization of C/C++ dependency scanning,
2009-09-23) our `VaildDeps` cache of `depend.internal` content is
supposed to avoid re-scanning dependencies of object files whose
dependencies have not changed.  However, this was broken by changes to
`cmDependsC::WriteDependencies` by commit v3.1.0-rc1~272^2~1 (cmDepends:
Refactor object file path conversion, 2014-07-22).  The object file path
written to `depend.internal` was changed to a relative path, but the
lookup in the `ValidDeps` cache of that information was not updated too.
Therefore the cache is not used.

Fix the object file path used for the `ValidDeps` lookup to restore the
original optimization.
2018-03-20 08:40:04 -04:00
Kitware Robot
5831b6a2ae CMake Nightly Date Stamp 2018-03-20 00:01:08 -04:00
Vitaly Stakhovsky
b82ad18fe0 cmVisualStudio10TargetGenerator: fix indentation
Added printing empty string to get the right indentation.
2018-03-19 09:56:44 -04:00
Brad King
6b9172d759 CMake 3.11.0-rc4 2018-03-19 09:25:26 -04:00
Michael Stürmer
8e20ad1a5e cmComputeLinkInformation: make GetItems() const 2018-03-19 09:07:38 -04:00
Brad King
180a36e243 Merge topic 'find-package_root-restore'
eb35d8884b find_package: Use PackageName_ROOT variables as search prefixes

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1858
2018-03-19 08:30:05 -04:00
Brad King
20fc763b32 Merge topic 'export-properties'
6db61f0725 Export: allow exporting of additional properties

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1834
2018-03-19 08:28:14 -04:00
Brad King
c3b95b5a9a Merge topic 'codelite-project-settings'
334c8ba7a4 CodeLite: Prefer CMAKE_RUNTIME_OUTPUT_DIRECTORY for output path
acd322ebe4 CodeLite: Use project Makefile instead of workspace Makefile.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1840
2018-03-19 08:27:14 -04:00
Brad King
60299bc6f0 Merge topic 'vs-debugger-command'
5a7113d8fb VS: Add target property VS_DEBUGGER_COMMAND

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1842
2018-03-19 08:26:33 -04:00
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
Brad King
6a41aa2abd cmPolicies: Split parsing and impl of ApplyPolicyVersion
Also rename local variables to clarify their role during parsing.
2018-03-16 12:37:14 -04:00
Brad King
1d00ed7cf7 cmPolicies: Drop unnecessary check from ApplyPolicyVersion
This internal API is never called with `version_min` empty.
2018-03-16 12:21:29 -04:00
Brad King
0df559832b cmPolicies: Pass policy version as std::string 2018-03-16 12:06:04 -04:00
Brad King
eb35d8884b find_package: Use PackageName_ROOT variables as search prefixes
This feature was originally added by commit v3.9.0-rc1~71^2~2 (find_*:
Add a new PackageRoot search path group, 2017-05-03) and documented by
commit v3.9.0-rc1~71^2 (find_*: Add docs for PackageRoot search path
group, 2017-05-03).  However, we had to disable the feature and remove
the documentation in commit v3.9.1~2^2 (find_*: Disable the PACKAGE_ROOT
search path group for CMake 3.9, 2017-08-08) due to breaking projects
that used `PackageName_ROOT` variables themselves.

Add policy `CMP0074` to restore the `PackageName_ROOT` variable behavior
in a compatible way.  Also revise the stack of root paths to store the
paths themselves rather than the package names.  This way the policy can
be considered at the `find_package` call site instead of individual
`find_` calls inside a find module.

Co-Author: Chuck Atkins <chuck.atkins@kitware.com>
Issue: #17144
2018-03-16 09:19:28 -04:00