summaryrefslogtreecommitdiffstats
path: root/Source/cmLinkLineDeviceComputer.h
Commit message (Collapse)AuthorAgeFilesLines
* Modernize: Use #pragma once in all header filesKitware Robot2020-09-031-4/+1
| | | | | | | | | | | | | | | | #pragma once is a widely supported compiler pragma, even though it is not part of the C++ standard. Many of the issues keeping #pragma once from being standardized (distributed filesystems, build farms, hard links, etc.) do not apply to CMake - it is easy to build CMake on a single machine. CMake also does not install any header files which can be consumed by other projects (though cmCPluginAPI.h has been deliberately omitted from this conversion in case anyone is still using it.) Finally, #pragma once has been required to build CMake since at least August 2017 (7f29bbe6 enabled server mode unconditionally, which had been using #pragma once since September 2016 (b13d3e0d)). The fact that we now require C++11 filters out old compilers, and it is unlikely that there is a compiler which supports C++11 but does not support #pragma once.
* cmLinkLineComputer: Add ComputeLinkLibraries overload with backtracesJustin Goshi2019-09-181-2/+6
|
* CUDA: More exhaustive checks to determine when to do device linkingRobert Maynard2019-05-211-0/+6
| | | | | | | | | Previously CMake used fairly naive logic to determine when to do device linking which caused unnecessary device linking to occur frequently. We now use a more exhaustive algorithm to determine when we have a need for device linking. Fixes: #19238
* cmNinjaLinkLineDeviceComputer now lives in the correct source fileRobert Maynard2019-05-201-18/+0
|
* clang-tidy: Use `= delete`Regina Pfeifer2019-01-291-4/+8
|
* Use C++11 override instead of CM_OVERRIDEBrad King2017-09-151-6/+4
| | | | | | | | 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'
* IWYU: Mark cmConfigure.h with pragma: keepDaniel Pfeifer2017-08-261-1/+1
| | | | Also remove `#include "cmConfigure.h"` from most source files.
* Pass large types by const&, small types by valueDaniel Pfeifer2017-06-031-2/+2
|
* Use CM_DISABLE_COPYDaniel Pfeifer2017-04-241-0/+4
|
* Use quotes for non-system includesDaniel Pfeifer2017-04-111-1/+1
| | | | | | | | | | | | | Automate with: git grep -l '#include <cm_' -- Source \ | xargs sed -i 's/#include <\(cm_.*\)>/#include "\1"/g' git grep -l '#include <cmsys/' -- Source \ | xargs sed -i 's/#include <\(cmsys\/.*\)>/#include "\1"/g' git grep -l '#include <cm[A-Z]' -- Source \ | xargs sed -i 's/#include <\(cm[A-Z].*\)>/#include "\1"/g'
* fix some include-what-you-use diagnosticsDaniel Pfeifer2017-02-171-0/+9
|
* CUDA: Now pass correct FLAGS when device link cuda executables.Robert Maynard2017-01-121-0/+3
| | | | | | | | Previously we had a two issues when building cuda executables that required separable compilation. The first was that we didn't propagate FLAGS causing any -arch / -gencode flags to be dropped, and secondly generators such as ninja would use the CXX language flags instead of CUDA when the executable was mixed language.
* CUDA: Add LinkLineComputer that computes cuda dlink lines.Robert Maynard2016-11-141-0/+36