Code extracted from:
https://gitlab.kitware.com/utils/kwsys.git
at commit a423d82989a4b89fa7d17f3dd5215684e902208e (master).
Upstream Shortlog
-----------------
Ben Boeckel (1):
45db0937 SystemTools: use PathExists where appropriate
Brad King (1):
e08eee61 SystemTools: Fix conversion warning in test case
Eric Berge (1):
687fcd79 Add -lsocket for libcmsys.a build on SunOS
Gregor Jasny (1):
0541ce21 SystemTools: Fix off-by-one in GetLineFromStream with size limit
397b8546 VS: added documentation for C# support
a7dd8e66 VS: added support for C# (for Visual Studio 2010, 2012, 2013, 2015)
6fda6005 VS: renamed target property VS_USER_PROPS_CXX to VS_USER_PROPS
bb670d96 Autogen: Generators: Remove space
3f86032b Autogen: Generators: Rename requiresMocing method
f24e1d37 Autogen: Generators: Fix clang-tidy readability-else-after-return
f27c5852 Autogen: Initializer: Add old settings file to clean files
d7d2cb48 Autogen: Generators: Save the UIC/RCC settings that were actually used
721997a7 Autogen: Generators: Dedicated generateAll variables for MOC/UIC/RCC
9f47d326 Autogen: Generators: Save the MOC settings that were actually used
597124ba Autogen: Generators: Add function to read makefile definitions config aware
2b400b24 Autogen: Generators: Move moc/uic/rcc executable test to generate method
edf0b8a5 Autogen: Generators: Rename GenerateFoo methods to FooGenerate
06430919 Autogen: Generators: Use FileAbsentOrOlder for UIC tests
ca179f2a Autogen: Generators: Use FileAbsentOrOlder for MOC tests
119791ae Autogen: Generators: Introduce FileAbsentOrOlder function
95e4cfc5 Autogen: Generators: Simplify (and fix) JoinExts function
6c55755b Autogen: Generators: Make class static method a source static function
1491ab1c Autogen: Generators: Make class static method a source static function
...
When using a Makefiles generator, `install/local/fast` and
`install/strip/fast` targets are not at all fast. They depend on
`install/local` and `install/strip` targets respectively instead of
`preinstall/fast` and don't contain any commands instead of repeating
commands in `install/local` and `install/strip`. The issue was
introduced by simple typos in commits v2.6.0~2825 (Adding install/local
global target for Makefile generators, 2006-08-29) and v2.6.0~1743 (add
install/strip target for makefile generators, 2007-05-18).
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.
A module definition (`.def`) file specifies symbols to export from
a linked binary. The librarian tool is not a linker and so should
not be given a `/DEF:...` flag with the `.def` file. The other
generators already do not do this, so fix Ninja to be consistent.
Closes: #16537