summaryrefslogtreecommitdiffstats
path: root/Tests/ExportImport/Import/Interface
Commit message (Collapse)AuthorAgeFilesLines
* Tests: Update for the Fujitsu compilerChuck Atkins2021-03-311-1/+2
|
* Add INTERFACE libraries to generated buildsystem if they have SOURCESBrad King2020-08-072-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | INTERFACE libraries were created with the intention of collecting usage requirements for use by other targets via `target_link_libraries`. Therefore they were not allowed to have SOURCES and were not included in the generated buildsystem. In practice, this has become limiting: * Header-only libraries do have sources, they just do not compile. Developers should be able to edit those sources (the header files) in their IDE. * Header-only libraries may need to generate some of their header files via custom commands. Some projects work around these limitations by pairing each interface library with an `add_custom_target` that makes the header files and custom commands appear in the generated buildsystem and in IDEs. Lift such limitations by allowing INTERFACE libraries to have SOURCES. For those with sources, add a corresponding build target to the generated buildsystem. Fixes: #19145
* Tests: Fix ExportImport PCH expectation on Cray Classic compilerBrad King2019-11-111-1/+1
| | | | Do not expect PCH-included definitions for this compiler.
* PCH: Propagate INTERFACE_PRECOMPILE_HEADERS in install(EXPORT)Brad King2019-09-252-0/+27
| | | | | | | | | This was accidentally left out of commit 0467a2f91b (PCH: add PRECOMPILE_HEADERS to special properties, 2015-03-12). Also add a test case for `install(EXPORT)` and `export()` propagation of precompiled headers. Fixes: #19741
* InterfaceLibrary: Whitelist EXPORT_PROPERTIES propertyBrad King2019-05-171-0/+8
| | | | Fixes: #19261
* Revise C++ coding style using clang-format-6.0Kitware Robot2018-06-012-5/+5
| | | | | | | | | | | | Run the `clang-format.bash` script to update all our C and C++ code to a new style defined by `.clang-format`. Use `clang-format` version 6.0. * If you reached this commit for a line in `git blame`, re-run the blame operation starting at the parent of this commit to see older history for the content. * See the parent commit for instructions to rebase a change across this style transition commit.
* Revise C++ coding style using clang-formatKitware Robot2016-05-162-3/+2
| | | | | | | | | | | | | Run the `Utilities/Scripts/clang-format.bash` script to update all our C++ code to a new style defined by `.clang-format`. Use `clang-format` version 3.8. * If you reached this commit for a line in `git blame`, re-run the blame operation starting at the parent of this commit to see older history for the content. * See the parent commit for instructions to rebase a change across this style transition commit.
* Export: Escape exported property values when writing CMake language filesBrad King2015-06-241-0/+11
| | | | | | | | When writing export files, correctly encode property values that contain characters special to the CMake language parser. We must ensure that they parse correctly when loaded on the consuming side. Reported-by: Dan Liew <dan@su-root.co.uk>
* Allow export of targets with INTERFACE_SOURCES.Stephen Kelly2015-02-102-0/+15
| | | | | | Use the same rules for paths in source and binary dirs in installed INTERFACE_SOURCES as are used for INTERFACE_INCLUDE_DIRECTORIES.
* Features: Extend concept to C language.Stephen Kelly2014-05-141-0/+21
| | | | | | | | | | | Add properties and variables corresponding to CXX equivalents. Add features for c_function_prototypes (C90), c_restrict (C99), c_variadic_macros (C99) and c_static_assert (C11). This feature set can be extended later. Add a <PREFIX>_RESTRICT symbol define to WriteCompilerDetectionHeader to conditionally represent the c_restrict feature.
* Tests: Fix name of cache variable.Stephen Kelly2014-05-071-2/+2
|
* Export: Populate INTERFACE_COMPILE_FEATURES property.Stephen Kelly2014-04-081-0/+17
|
* Consider targets with double colons to be IMPORTED or ALIAS targets.Stephen Kelly2013-10-211-9/+9
| | | | | | | | Introduce a policy to control the behavior. The AliasTargets unit test already tests that using a double-semicolon in the name is not an error. Change the ExportImport test to use a namespace with a double-semicolon too.
* install: Teach EXPORT option to handle INTERFACE_LIBRARY targetsStephen Kelly2013-10-081-0/+13
|
* export: Add support for INTERFACE_LIBRARY targetsStephen Kelly2013-10-083-0/+79