| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This script was added by commit 0f150b69d3 (AIX: Explicitly compute
shared object exports for both XL and GNU, 2019-07-11,
v3.16.0-rc1~418^2~2) but does not have a `.sh` extension so our existing
install rules neglect to give it execute permission. Our test suite
works on AIX in the build tree but the script is broken without execute
permission on installation.
Fixes: #20520
|
|\ \ \ \
| | |_|/
| |/| |
| | | |
| | | |
| | | |
| | | | |
917db8163d cmstd: Remove -isystem option for IBM i (OS400)
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4430
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Much like AIX, IBM i (OS identifier "OS400") implicitly adds `extern
"C"` around system header files included with the `-isystem` option.
Update the condition added by commit c688b401d3 (cmstd: Modernize CMake
system headers, 2019-08-04, v3.16.0-rc1~81^2~1) to treat `IBM i` as we
do AIX.
|
| |/
|/|
| |
| |
| | |
Hard-code more libarchive options as internal cache entries. Doing so
makes some of our `IF(0)` conditions unnecessary, so remove those.
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
3ec82b713e cmMarkAsAdvancedCommand: ignore variables which don't exist in the cache
701a5c60e0 cmake: avoid marking local or unused variables as advanced
af158149e7 FindOpenSSL: do not mark a local variable as advanced
74f659f1f2 FindCurses: only mark CURSES_EXTRA_LIBRARY when it is used
7e2ae4e96d FindOpenGL: only mark declared cache variables as advanced
7cc02a0c29 FindLua: only mark LUA_MATH_LIBRARY as advanced if required
85cd26b8a6 FindBoost: only mark Boost_DIR as advanced if defined
338c7916ba CTest: avoid marking undeclared cache variables as advanced
...
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4150
|
| |/ |
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Reconcile the changes made by:
* commit ae62f66033 (ENH: CMake does not need RPATHs at all for its own executables, 2006-03-01, v2.4.0~380)
* commit a056cffc5b (COMP: enable RPATH if any of the CMAKE_USE_SYSTEM_XXX variables is enabled, 2007-08-28, v2.6.0~1183)
* commit c0108d1e07 (COMP: use RPATH is building QtDialog and the Qt libs are not in /lib or /usr/lib, 2007-11-05, v2.6.0~915)
The overall goal of those changes was to get the RPATH set for external
libraries when needed and also to avoid re-linking or other RPATH
editing on installation. We can use a simpler approach to satisfy both
goals: always use RPATH entries for libraries found externally. If
there are no such libraries we will get no RPATH. If there are such
libraries that are not in standard paths we will get a RPATH that points
at them. This will work for running either from the build tree or the
install tree, so we can use the same for both to avoid editing on
installation.
Fixes: #20185
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Provide a standardized way to handle the C++ "standard" headers
customized to be used with current CMake C++ standard constraints.
Offer under directory `cm` headers which can be used as direct
replacements of the standard ones. For example:
#include <cm/string_view>
can be used safely for CMake development in place of the `<string_view>`
standard header.
Fixes: #19491
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
689fdbfc61 Utilities/Release: Drop linux64 script in favor of docker build
2d7cfd30ac Utilities/Release: Drop source archive generation in scripts
facc240a45 Utilities/Release: Add docker specs to build and test Linux binaries
bf832ccf01 Utilities/Release: Add README.rst describing directory content
ab153f17bf Utilities/Release: Drop machine-specific README
ed294c1664 Add option to skip CMake tests that need network access
4b8a864d52 Add option to test CMake itself against its hosting CMake
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Gregor Jasny <gjasny@googlemail.com>
Merge-request: !3727
|
| | |
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
752fa8be9d libarchive: We now require at least version 3.3.3
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3737
|
| | |
| | |
| | |
| | | |
It's the first version including Zstandard support.
|
| |/
|/|
| |
| |
| |
| | |
In particular, set `CMP0091` to `NEW` to enable the MSVC runtime library
abstraction so it can be set via `CMAKE_MSVC_RUNTIME_LIBRARY` in the
cache.
|
| |
| |
| |
| |
| |
| |
| |
| | |
We removed installation of `Help/index.rst` in commit d2fde94809 (Help:
Add infrastructure for guide-level documentation, 2019-05-30), but the
file is required for `--help-full` to work. Restore installation of the
file and update it to avoid referencing the `Help/guide` directory in
its toctree during processing by `cmRST`.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When building with the built-in Curl, CMAKE_USE_OPENSSL is only set
to ON by default if an OpenSSL installation is detected. However, this
can cause the user to mistakenly build without OpenSSL support if
OpenSSL is not installed, because CMAKE_USE_OPENSSL is set to OFF in
that case. Always set CMAKE_USE_OPENSSL to ON by default on systems
where it could be available, skipping the initial detection, resulting
in an error when we try to use OpenSSL later on. Detect this error
and advise the user to either install OpenSSL or set CMAKE_USE_OPENSSL
to OFF.
Co-Authored-by: Brad King <brad.king@kitware.com>
|
|/
|
|
|
|
|
| |
Create a `Help/guide/` directory to hold guide-level documents.
Build them in most documentation formats, but not as man pages.
Initialize the guide directory with a placeholder for the tutorial.
|
| |
|
|
|
|
|
| |
In particular, set `CMP0082` to `NEW` to interleave install commands
in the top-level directory with subdirectory installations.
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
1761a9a546 CMake: Enable use of zstd in libarchive
2cf2921749 zstd: Add CMake build system
f92b4b52eb Merge branch 'upstream-zstd' into import-zstd
fbaf65639a zstd 2018-12-27 (470344d3)
9337cbfcca zstd: add script to import zstd from upstream
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Bartosz <gang65@poczta.onet.pl>
Merge-request: !3092
|
| |
| |
| |
| |
| |
| |
| | |
Build zstd as part of CMake or find one on the system. Modify our
port of libarchive to use the zstd configured for use with CMake.
Issue: #18657
|
|/ |
|
| |
|
|
|
|
|
|
| |
KWSys now computes a default `CMAKE_CXX_STANDARD` value if it is
not told what standard to use. When `CMake_NO_CXX_STANDARD` is
enabled, tell KWSys not to do that.
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
b9c6f08276 Help: Add release note for fileapi feature
4b6b2a571c fileapi: extend codemodel v2 with directory details
eb8c7676a4 fileapi: extend codemodel v2 with a project model
42f0125ceb fileapi: Add test for cmakeFiles v1
6615408193 fileapi: add cmakeFiles v1
3f6ee75a66 fileapi: Add test for cache v2
7489e95b8e fileapi: add cache v2
ea0a060168 fileapi: Add test for codemodel v2
...
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2706
|
| |
| |
| |
| | |
We need the `failIfExtra` diagnostic added by that version.
|
|/ |
|
|
|
|
|
| |
Create a `CMake_BUILD_LTO` option when building with a CMake that
is new enough to support `CheckIPOSupported` everywhere.
|
|\
| |
| |
| |
| |
| |
| |
| | |
a834bcaa91 Tests: Add missing BUILD_TESTING conditions
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Dan Ibanez <daibane@sandia.gov>
Merge-request: !2520
|
| |
| |
| |
| |
| |
| | |
We should not call `add_test` unless `BUILD_TESTING` is enabled.
Fixes: #18500
|
|\ \
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| | |
0310024563 curl: Update build within CMake to account for 7.61 changes
b9d1107790 curl: Backport to work with CMake 3.1 again
e9e8dcee6b Merge branch 'upstream-curl' into update-curl
18812a9c3d curl 2018-09-04 (432eb5f5)
ded211ae46 curl: Update script to get curl 7.61.1
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2509
|
| |
| |
| |
| |
| |
| |
| | |
The_CURL_STATICLIB option was replaced by BUILD_SHARED_LIBS.
Drop our own CURL_STATICLIB compile definition because it is now
provided by curl's usage requirements.
|
|/
|
|
|
|
|
|
|
|
| |
CMake 3.12 introduced a `...<max>` syntax in the version given to
`cmake_minimum_required` to automatically set policies to NEW up
to that version. Use it to avoid listing policies explicitly.
The syntax is compatible with older versions of CMake such that they use
the extended version string for the `CMAKE_MINIMUM_REQUIRED_VERSION`
variable (which we don't use) but otherwise ignore it.
|
|
|
|
| |
The ENABLE_LZ4 option was added.
|
|
|
|
|
| |
cmArchiveWrite uses the gzip:timestamp write filter option which was not
available until v3.1.0.
|
|
|
|
|
|
|
|
|
| |
It is provided by `functional`, not `utility`. Fix the mapping added by
commit 276d3c7afe (IWYU: Add workaround mapping for std::hash,
2018-07-31). Also generalize the workaround from commit v3.12.0-rc1~39^2~1
(IWYU: Define a macro to tell code it is preprocessing for iwyu,
2018-05-25) to allow local builds to configure specific flags. This
is needed because iwyu behaves differently in different environments.
|
|
|
|
|
|
|
| |
There are some cases where satisfying IWYU breaks compilation, such as
forward-declaring the `std::hash<>` template with C++ standard libraries
that use an inline namespace inside `std`. Define a macro during
include-what-you-use preprocessing so that code can adapt.
|
|\
| |
| |
| |
| |
| |
| | |
f5f72ff844 Explicitly require LibUV 1.10 or higher to build CMake
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1966
|
| |
| |
| |
| | |
CMake 3.11 now uses `uv_translate_sys_error` introduced in LibUV 1.10.
|
|/
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
| |
Some environments require linking to thread libraries for `std::thread`.
Express this direct dependency of CMakeLib explicitly. Previously this
was done indirectly through our bundled libuv, but that does not work
when using a system libuv.
Fixes: #17757
|
|
|
|
|
|
|
|
|
|
| |
Add a check that a simple source file can compile as C++17 that uses
some of the features we need. Do this only when hosted by CMake 3.8
or above because those versions are aware of C++17.
Check for unordered_map as we do in bootstrap since commit 375eca7881
(bootstrap: Check support for unordered_map from compiler mode,
2017-11-30). Also maintain the existing C++14 cstdio check.
|
|
|
|
|
|
| |
The check for C++14 and cstdio is a special case of the more general
problem of checking that the compiler's C++14 mode supports everything
we need. Rename the checks accordingly.
|
| |
|
|\
| |
| |
| |
| |
| |
| | |
08353542 clang-tidy: Clarify comment explaining purpose of CLANG_TIDY_SHA1
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1497
|
| |
| |
| |
| | |
Suggested-by: Bill Hoffman <bill.hoffman@kitware.com>
|
|/
|
|
|
|
|
| |
Do not obscure IWYU's report with warnings from its internal Clang.
We have other testing for such warnings. Also, when compiling with
a non-Clang compiler we might use warning options that IWYU's Clang
does not understand, and we don't want to see warnings about that.
|
|
|
|
|
|
|
|
|
|
| |
Currently a change to the clang-tidy configuration remains unnoticed for
incremental builds in the way that it won't trigger a rebuild. This can be
considered a missing dependency that this patch fixes by introducing a
compile time definition (-DCLANG_TIDY_SHA1) that triggers a rebuild upon
change. Currently this only applies to the target CMakeLib.
Signed-off-by: Matthias Maennich <matthias@maennich.net>
|
| |
|