| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| |
| |
| |
| | |
3232f84c VS: Fix MANIFESTUAC link flag map to .vcxproj elements
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !526
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add special parsing of the flags given in `/MANIFESTUAC:"..."` in order
to map them correctly to `.vcxproj` elements.
Keep the old incorrect flag table entries for `uiAccess` and `level`
flags for compatibility even though they do not really exist.
Fixes: #16563
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
e2cca9f8 FindGTest: Avoid macro name collision
4636c64b FindGTest: Improve test to catch link error
35061791 FindGTest: Fix shared linking on Windows
9fd9e448 FindGTest: Avoid using find_dependency in a find module
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1267
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Use two _'s for private function/macro names rather than one. This
avoids a potential collision if a function/macro with no leading _ that
otherwise matches the name of a private function/macro also overrides a
built-in function or is defined twice.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Add a reference to one of Google Test's command-line flags to the
FindGTest test. This will ensure that we are using the correct compile
definitions on Windows, as the test will otherwise fail to link. (IOW,
this tests the changes made by the previous commit.)
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Add logic to FindGTest.cmake to attempt to determine if the libraries
are shared or static. If the libraries are shared, add an interface
compile definition that is needed in some cases for successful linking
on Windows.
See also https://github.com/google/googletest/issues/877.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The `find_dependency` macro is not meant for use in find modules.
Instead use plain `find_package` for the Threads package. Assume that
if it is not found then it isn't needed on the current platform.
Issue: #17257
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
a929dd16 FindBoost: Simplify search in lists
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1281
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Instead of `list(FIND...)` and then checking result for `-1`
(found/not-found), nowadays `if` command has the `IN_LIST` test for
that.
This change was originally made by commit v3.9.0-rc1~41^2 (FindBoost:
Simplify search in lists, 2017-04-23) but then had to be reverted by
commit v3.9.2~3^2 (FindBoost: Revert "Simplify search in lists.",
2017-09-05) due to problems related to using `find_dependency`. Those
problems were addressed by commit 3080a0a611 (FindBoost: Improve
behavior when thread dependency is missing, 2017-09-15), so now we can
restore the original change.
Issue: #17252
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
77eb212d Help: Clarify/make consistent the APPLE, UNIX and WIN32 variable docs
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1279
|
| | | | | |
|
| |/ / /
|/| | | |
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
67529aab Doc: document that CoverageExtraFlags will come first
69fac3c3 pass arguments as vector to cmCTest::RunCommand()
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1261
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The only 2 callers took care to construct a properly escaped string, but not
using the documented way, and that string was passed only to be immediately
split into tokens again. Start with a vector and join it only for logging,
avoiding needless quotes during that.
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
bf1e606f FindMPI: Add support for FreeBSD and SLES
2f673da6 FindMPI: Support components for various languages
9a58e69c FindMPI: Modernization from ground up
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !893
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Fixes: #17117
|
| | | | | | |
|
| | |_|/ /
| |/| | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This is a near-total rewrite of FindMPI implementing the following
features:
Environmental improvements:
- C++ settings can now be picked from C settings if no dedicated C++
settings are found (some installs of IBM Platform MPI)
- Fortran settings can now be found on MPICH-1, MVAPICH-1, Microsoft
MPI and MPICH-2 on Windows.
- Improved flag procession logic: Flags related to security enhancements
of MPI itself, and unrelated to MPI usage (-fstack-protector-strong on
e.g. RHEL 7 for MPICH and MVAPICH) will be filtered out properly now.
-pthread is now being handled. -fno-strict-aliasing, which may be needed
while compiling MVAPICH (e.g. RHEL 7's MVAPICH package) is also
filtered.
Features added:
- MPI version can be determined for each language and is exposed as the
package version
- MPI functionality is being tested to ensure the correctness of
settings
- MPI-2 C++ bindings can be suppressed if desired by the project or
user. For older MPIs, this often resolves issues and eliminated the
infamous SEEK_SET trouble.
- MPI-2 C++ bindings are now being searched for and exposed by a
variable if detected.
- Fortran support now does not make assumptions over the MPI present and
works with ILP64 MPI implementations.
- Fortran now exposes which bindings (mpif.h, mpi/mpi_f08 modules) are
available
- MPI detection can now work hybridly, which for example permits using the
Fortran modules shipped with some compiler suites together with MPI
(e.g. PGI on Windows shipping MSMPI modules)
- Ability to determine MPI library version (*requires* try_run, caution)
upon request
- Ability to determine Fortran capabilities from MPI-3 for each of the
bindings (subarrays, asynchronous attribute protecting entities) (also
requires try_run)
Fine grained control over the search process:
- Possibility to selectively enable and disable steps like compiler
wrapper search and guessing. Permits picking Microsoft MPI over Intel
MPI if both are loaded (previously not possible without removing the
IMPI compiler wrappers from the environment)
- Ability to pick MPICH2 over MSMPI (previously the first one located
was taken)
- A user may now pass compiler flags to the compiler wrapper script,
enabling much more flexibility. This permits for example linking the
Intel MPI debug runtime, static linking, ILP64 with Fortran,
linking tracing, ...
- A user may define a suffix for all MPI binaries that are being looked
for (useful on Debian/Ubuntu where the alternative MPI installs are each
appended with their name, e.g. mpicc.mpich and mpicc.lam)
Cache variable improvements
- Instead of the previous plural cache variables a list-of-variables
approach is now in place. Permits correcting individual variables
instead of having to wade through a list, also speeds up the search
process and increases comfort by eliminating duplicate entries in
LIBRARIES over languages
- MPIEXEC was corrected to MPIEXEC_EXECUTABLE in order to fix the
grouping in the CMake GUI for the variable (previously ungrouped)
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
3080a0a6 FindBoost: Improve behavior when thread dependency is missing
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1272
|
| | |/ / /
| |/| | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The `find_dependency` macro is not meant for use in find modules and
`return()`s from the caller when the package is not found. Avoid using
it in FindBoost. Instead use plain `find_package` for the Threads
package and manually forward the `QUIET` argument. When the Threads
package is missing then treat the Boost `thread` component as missing.
Issue: #17257
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
6fb36572 cmake-gui: Enable High DPI scaling
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1271
|
| |/ / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This Qt flag enables UI scaling based on scale factor provided by the
operating system. Only supported on versions of Qt >= 5.6.
The flag has no effect on macOS, where high DPI support is already
enabled as a setting in the bundle's info.plist.
Fixes: #17026
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
714ce728 bootstrap: Make libuv available during bootstrap
6a2d967d bootstrap: Require compiler mode aware of C99 on Solaris
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1131
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
On UNIX, build only the parts of libuv we need for the filesystem,
process, and poll abstractions using the POSIX poll() backend. This
avoids many platform-specific conditions. On Windows, build all of
libuv; there are no conditional alternatives anyway.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
On Solaris some system headers included in C with `-D_XOPEN_SOURCE=600`
require C99 support by the compiler.
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
98530d3c cm_codecvt: Tell IWYU to keep cmConfigure.h
4e14498f Drop now-unused definition of CM_OVERRIDE
0b33aee4 Use C++11 override instead of CM_OVERRIDE
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1265
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
We no longer need it explicitly for `CM_OVERRIDE`, but we still need to
include it first everywhere.
|
| | | | | | | |
|
| | |/ / / /
| |/| | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
We now require C++11 support including `override`. Drop use of
the old compatibility macro. Convert references as follows:
git grep -l CM_OVERRIDE -- '*.h' '*.hxx' '*.cxx' |
xargs sed -i 's/CM_OVERRIDE/override/g'
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
7200ab49 Tests: Fix CMake syntax warning in VSGNUFortran test
9da13bc3 Tests: Fix some references to 'cmake' executable
f1f109e9 Tests: Drop tests that have not run for over 10 years
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1270
|
| | | | | | | |
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Use `${CMAKE_CMAKE_COMMAND}` rather than `cmake` or `${CMAKE_COMMAND}`
in order to ensure we always refer to the `cmake` command being tested.
|
| |/ / / / / |
|
|\ \ \ \ \ \ |
|
| |\ \ \ \ \ \
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Merge-request: !1280
|
| |\ \ \ \ \ \ \
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
Merge-request: !1273
|
|\ \ \ \ \ \ \ \ \
| | |_|/ / / / / /
| |/| | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
ee1f8903 FindBoost: Add support for Boost 1.65.0 and 1.65.1 to CMake 3.9
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1280
|
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
Backport the changes from commit fa114e7d70 (FindBoost: Add Boost 1.65
dependencies, 2017-08-22) and commit dbba53a5aa (FindBoost: Add version
1.65.1, 2017-09-06) to CMake 3.9.
Fixes: #17289
|
|\ \ \ \ \ \ \ \ \
| | |_|/ / / / / /
| |/| | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
0d543589 vim: Remove default setting of expandtab
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Maurice <m-ou.se@m-ou.se>
Merge-request: !1273
|
| |/ / / / / / /
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
An update from vim-cmake-syntax by commit v3.9.0-rc1~167^2^2
(vim-cmake-syntax 2017-05-02, 2017-05-02) brought in a change to set
`expandtab` in CMake language files. This should be a per-project or
per-user choice instead, so drop the setting.
|
| | | | | | | | |
|
| |_|_|_|_|/ /
|/| | | | | | |
|
| |_|/ / / /
|/| | | | | |
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
3bbe95f5 Clean up iwyu code to not be one big if statement.
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1247
|
| | |_|_|/ /
| |/| | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This commit changes the internal -E__run_iwyu to be -E__run_co_compile. This
is used for co-compile commands. These are tools that want to mirror the
compiler. For each compiler invocation the tool will be invoked first. This
started as a way to implement include what you use (iwyu), but has expanded
to include cpplint, cppcheck and others. Likely there will be more in the
future as well. This commit implements each one in its own function and
provides a way to add additional ones in the future with less work.
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
d25f30a6 FindOpenMP: Add support for components
23530151 FindOpenMP: Minor environmental improvements
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1266
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Language specific components are added to FindOpenMP to ease consumption
of the module's results.
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
A backup flag for Cray compilers was added and the OpenMP 5.0 Preview 1
document was added to the specification map.
|
|\ \ \ \ \ \ \
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
fb19b778 CodeBlocks: add option to exclude external files
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1159
|