summaryrefslogtreecommitdiffstats
path: root/Modules/Internal
Commit message (Collapse)AuthorAgeFilesLines
* Features: On SunPro link feature check with lang std flagBrad King2017-05-091-0/+10
| | | | | | | Follow up commit e17b179184 (Features: On SunPro link with language standard compiler flag, 2017-04-28) to apply the same fix to the feature checks. The `try_compile` used for these is intentionally not using `CXX_STANDARD`-based logic so that it can test the individual flags.
* Features: Add meta-features requesting awareness of a particular standardBrad King2016-11-021-0/+2
| | | | | | | | | | 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.
* Features: Centralize per-compiler recording macrosBrad King2016-11-021-1/+9
| | | | | Simplify and de-duplicate per-compiler feature recording macros and convert to a centralized per-language macro.
* Features: Extract strings from test binary more reliably (#15736)Brad King2015-09-101-1/+1
| | | | | | | | | | Since commit v3.1.0-rc1~635^2~7 (project: Add infrastructure for recording CXX compiler features, 2013-10-17) we compile a test source to a binary and then extract "<LANG>_FEATURES:..." strings from the binary with the file(STRINGS) command. Add a newline at the beginning of the string literal to be sure file(STRINGS) can extract the first entry as a string independent of whatever else the compiler may put before the storage it allocates for the literal within the binary.
* Features: Use the features symbol in the feature-test compile.Stephen Kelly2014-05-151-1/+1
| | | | | | | | | | Clang discards the entire string if it is not used, removing the ability to read the features from the compiled binary. That is prevented by using the symbol. GNU with -O3 also discards the string, so use the string in a way which is determined by a runtime value (argc) to prevent it being discarded.
* Project: Use nullary form of main for compile feature tests.Stephen Kelly2014-05-071-1/+1
|
* Project: Remove extern from static string in feature tests.Stephen Kelly2014-05-071-1/+1
|
* Features: Make CMAKE_CXX_KNOWN_FEATURES a property.Stephen Kelly2014-05-021-1/+4
| | | | | As a 'built-in' variable it imposes a cost on all variable lookups and it is expected to be rarely used.
* project: Add infrastructure for recording CXX compiler featuresStephen Kelly2014-04-071-0/+57
Add a feature test using the compiler macros and the preprocessor to determine available features. Add a CMAKE_CXX_COMPILE_FEATURES variable which contains all features known to the loaded compiler, and a CMAKE_CXX_KNOWN_FEATURES variable containing all features known to CMake. Add language standard specific variables for internal use to determine the standard-specific compile flags to use. This will be extended to other languages in the future. Follow-up commits will add features which will be recorded by the feature test.