summaryrefslogtreecommitdiffstats
path: root/Tests/IncludeDirectories/CMakeLists.txt
Commit message (Collapse)AuthorAgeFilesLines
* cmDepends: disable long line dependencies for nmakeKai Wang2021-01-111-7/+1
| | | | | | | | | This is a follow-up to commit b696f78073 (cmDepends: merge dependers of depend makefile, 2020-12-18). NMake of visual studio has many versions that not support long line dependencies of make rule. Signed-off-by: Wangkai <wangkai86@huawei.com> Fixes: #21681
* cmDepends: merge dependers of depend makefileKai Wang2021-01-051-1/+7
| | | | | | | | | | | Since one depender has multiple dependees, depend makefile generated same depender line by line, to reduce file size and refine make file parse speed, merge same dependers to one. And add a testcase for large depend.make which generated source file includes 20000 header files and run build and incremental build Signed-off-by: Wangkai <wangkai86@huawei.com> Signed-off-by: Zhaoyingdong <zhaoyingdong@huawei.com>
* Makefiles Generators: use compiler for dependencies generationMarc Chevrier2020-11-291-1/+5
| | | | | | | | | | | Each source compilation generates a dependencies file. These dependencies files are consolidated in one file per target. This consolidation is done as part of command 'cmake -E cmake_depends` launched before evaluation of makefile dependency graph. The consolidation uses the same approach as `CMake` dependencies management. Fixes: #21321
* cmGeneratorTarget: Include Cache now occurs per language+configRobert Maynard2020-09-251-0/+1
| | | | | Previously only occurred per config which broke per-language system includes.
* Tests: Enable coverage of special chars in include dirs for MakefilesBrad King2020-04-151-13/+28
| | | | Issue: #20555
* Tests: Add coverage for special characters in include directoriesBrad King2020-04-101-0/+18
| | | | | | | | | We have tests for special characters in preprocessor definitions and custom command line arguments. Add such a test for include directories. Currently the Makefiles generators do not escape paths in `depend.make` in all cases, so leave a FIXME comment and skip the test for those. Issue: #20555
* Ninja: Add multi-config variantKyle Edwards2019-12-131-1/+1
| | | | Co-Authored-by: vector-of-bool <vectorofbool@gmail.com>
* Tests: Teach tests when to treat clang-cl as MSVCZsolt Parragi2019-02-111-1/+1
| | | | | | | | | | | | | | | | | | | * Disable the system include unused variable test in ExportImport when clang is in MSVC compatible mode. * Disable CxxDialect testcase when clang is in MSVC compatible mode, as it doesn't support `typeof`. * Teach Module.WriteCompilerDetectionHeader to treat clang-cl as MSVC. * Disable the SystemIncludeDirectories testcase within IncludeDirectories when clang is in MSVC compatible mode. * Disable the CMakeOnly.CheckCXXCompilerFlag testcase when clang is in MSVC compatible mode. * Treat clang-cl as MSVC in LinkOptions.cmake in the try_run and try_compile testcases.
* Order SYSTEM include directories after non-system directoriesEphi Sinowitz2018-04-231-0/+4
| | | | | | | An effect of the `-isystem` flag is to search the directory after those specified via `-I` flags. Make behavior more consistent on compilers that do not have any `-isystem` flag by explicitly moving system include directories to the end.
* Xcode: Properly mark SYSTEM includes as suchGregor Jasny2016-12-271-1/+3
| | | | | | | | | We now populate the per-language flags in addition to the header search paths stored in HEADER_SEARCH_PATHS. This preserves include paths for GNU assembly files (cmake/cmake#16449) and also provides SYSTEM include semantics. Closes: cmake/cmake#15687
* Revert "Xcode: Obey SYSTEM keyword for includes (#15687)"Gregor Jasny2016-11-281-3/+1
| | | | | | | | Revert commit v3.7.0-rc1~266^2 (Xcode: Obey SYSTEM keyword for includes, 2015-08-31). It worked for C, C++, and Swift but not for GNU Assembly files for which Xcode has no property to set flags. Closes: #16449
* Xcode: Obey SYSTEM keyword for includes (#15687)Gregor Jasny2016-08-091-1/+3
| | | | | | | | | | | | | CMake used to put all header search paths into HEADER_SEARCH_PATHS attribute. Unfortunately this attribute does not support to declare a search path as a system include. As a hack one could add a -isystem /path to the cflags but then include ordering is not deterministic. A better approach was chosen with this patch by not filling HEADER_SEARCH_PATHS at all and to populate the C, C++, and Fortran flags directly. The include paths used by Xcode should be now identical to the ones used by Unix Makefiles and Ninja generator.
* Use string(APPEND) in TestsDaniel Pfeifer2016-07-271-2/+2
| | | | | | | Automate with: find Tests -type f -print0 | xargs -0 perl -i -0pe \ 's/set\(([a-zA-Z0-9_]+)(\s+)"\$\{\1\}([^"])/string(APPEND \1\2"\3/g'
* Add a variable to specify language-wide system include directoriesBrad King2016-05-251-0/+1
| | | | | | | Create a `CMAKE_<LANG>_STANDARD_INCLUDE_DIRECTORIES` variable to specify system include directories for for `<LANG>` compiler command lines. This plays a role for include directories as the existing `CMAKE_<LANG>_STANDARD_LIBRARIES` variable does for link libraries.
* Clang: Add separate "AppleClang" compiler idBrad King2013-10-081-1/+1
| | | | | | | | | | | | Apple distributes their own Clang build with their own version numbers that differ from upstream Clang. Use the __apple_build_version__ symbol to identify the Apple Clang compiler and report the Apple Build Version as the fourth version component in CMAKE_<LANG>_COMPILER_VERSION. Add Compiler/AppleClang-<lang> and Platform/Darwin-AppleClang-<lang> modules that simply include the upstream equivalents. Fix comparisons of CMAKE_<LANG>_COMPILER_ID to Clang in CMake's own source and tests to account for AppleClang.
* Fix OLD behavior of CMP0021.Stephen Kelly2013-08-241-0/+4
| | | | | | | | | Exclude Ninja and Xcode from the CMP0021 test They do not behave the same as the makefile generator with relative paths. Don't overwrite the header file for in-source builds.
* Add the INTERFACE_SYSTEM_INCLUDE_DIRECTORIES target property.Stephen Kelly2013-07-161-0/+17
| | | | | | | | Unlike other target properties, this does not have a corresponding non-INTERFACE variant. This allows propagation of system attribute on include directories from link dependents.
* include_directories: Fix handling of empty or space-only entriesStephen Kelly2013-05-211-0/+11
| | | | | | | | | This is a regression introduced in commit 0d46e9a0 (Store includes from the same include_directories call together., 2013-01-20). Reported at http://thread.gmane.org/gmane.comp.programming.tools.cmake.user/46695/focus=7847
* Fix clearing of the INCLUDE_DIRECTORIES DIRECTORY property.Stephen Kelly2013-04-101-0/+11
| | | | | This was broken by commit 18a3195a (Keep track of INCLUDE_DIRECTORIES as a vector of structs., 2012-11-19).
* Extract and use the INCLUDE_DIRECTORIES target properties.Stephen Kelly2012-02-221-0/+2
| | | | | | | | | Eliminate callers of cmMakefile::GetIncludeDirectories. All callers of GetIncludeDirectories should go through the local generator object. Only the local generator calls cmTarget::GetIncludeDirectories directly.
* One more try. Use full path by default, and relative on broken compilers.Bill Hoffman2011-06-031-5/+29
|
* Use bin tree for inclues to avoid -I with spaces in the path.Bill Hoffman2011-06-031-4/+17
|
* Append and do not clobber CMAKE_CXX_FLAGS in the test.Bill Hoffman2011-06-031-1/+1
|
* Fix for bug#10798. VS10 did not append -I flags with COMPILE_FLAGS prop.Bill Hoffman2011-06-021-0/+10
This fix adds a test for this case for all generators.