This check was not functioning properly for the following reasons:
* The "DropSite" and "DropLocation" CTest Configurations do not
get set until ctest_submit() is called. So if ctest_submit()
was not called before ctest_test() we would end up with uncompressed
output, even if the CDash server was new enough to support this feature.
* CDash's API is now versioned. The current location to query is
now /api/v1/getversion.php, not /api/getversion.php.
As a result of these issues, CTest would not compress test/memcheck
output when it should. Rather than fix this check, we now assume that
CTest is communicating with a new enough version of CDash. This behavior
can be controlled through the use of the --no-compress-output command-line
argument.
b34c0457 Release text for omitting unsupported tags topic
cd042330 CPack/RPM test for Suggests tag
228280d8 CPack/RPM prevent special tags from being removed
d8e83ab9 CPack/RPM omit unsupported tags
Suggests tag was not present in older versions
of rpmbuild so we test that the rpm package is
always generated either with Suggests tag present
or skipped if not supported.
When using a Fortran compiler that produces PIC executables by default
with a C compiler that does not produce PIC by default then the mangling
detection executable fails to link. Explicitly enable PIC for the C
compiler just in case the Fortran compiler needs it to link.
Issue: #16405
9a8d758c Help: Document language standard meta-features
df252db1 Features: Test cycle diagnostic with language standard meta-feature
6d5fb0e0 Features: Test feature propagation with language standard meta-feature
a34b98a8 WCDH: Ignore language standard meta-features
b0996a3f Features: Add meta-features requesting awareness of a particular standard
8b6cc251 Features: Centralize per-compiler recording macros
2d23f7b2 Features: Do not record features on MSVC < 2010
This condition needs to follow the same pattern added in note `[1]` by
commit a5a3642f (Features: Port Intel CXX features to test macros where
possible, 2016-10-26). It was accidentally left out of that commit.
Flags specified in the `COMPILE_FLAGS` source-file property should
be placed after those in target-wide properties so that those on
individual source files can override those on the whole target.
This is already done by most generators but was not implemented
correctly for VS 2010 and above.
Closes: #16400
The switch to use UTF-8 encoding has been defaulted to on for quite some
time since commit v3.2.0-rc1~116^2 (Encoding: Switch to use UTF-8
internally by default on Windows, 2014-12-26).
The `cxx_static_assert` feature may be available in C++ 98 mode of some
compilers or not available at all in others. Intstead of using an
individual feature to test cyclic requirement of a feature requiring
C++ 11, use the `std_cxx_11` meta-feature that has exactly this meaning.
The `cxx_static_assert` feature may be available in C++ 98 mode of some
compilers or not available at all in others. Intstead of using an
individual feature to test propagation of a feature requiring C++ 11,
use the `std_cxx_11` meta-feature that has exactly this meaning.
The `{c,cxx}_std_*` features are meant for use with
`target_compile_features` but do not make sense for use with
WriteCompilerDetectionHeader. Filter them out of any requested list.
A common use case of `target_compile_features` is simply to specify that
the compiler should be run in a mode that is aware of e.g. C++11. Some
projects simply specify a particular C++11-only feature to request this.
Provide a first-class way to do this by naming features after the
corresponding language standard. Record them as always available in the
corresponding standard level so that requesting them always ensures that
standard (or higher) is used.
We have no feature tests for versions of VS older than 2010, so do
not even call `record_compiler_features` for such versions. This
is consistent with other compilers where we call this macro only
for versions for which we have recorded features.