Commit Graph

45367 Commits

Author SHA1 Message Date
Saleem Abdulrasool d9dd7cca66 Swift: correct flags for parallel jobs
`-num-threads` is for the threading, not the job control.  Use `-j` to
launch the parallel jobs.  This enables parallel builds for Swift again
after driver updates preventing the parallelization through
`-num-threads`.
2019-10-28 11:36:57 -04:00
Brad King 92780281c2 CMake 3.16.0-rc2 v3.16.0-rc2 2019-10-18 09:23:00 -04:00
Brad King 6dedb97420 Merge branch 'pch-makefile-depends' into release-3.16
Merge-request: !3928
2019-10-17 10:41:43 -04:00
Brad King 797689ab35 PCH: Fix Makefile dependencies to rebuild PCH on header changes
Teach the Makefile generator to scan the implicit dependencies of PCH
creation.  When a header named by `target_precompile_headers` changes
the corresponding PCH must be rebuilt and all consumers recompiled.

Fixes: #19830
2019-10-17 10:29:31 -04:00
Brad King 7aab792716 Merge branch 'export-target-lang-name' into release-3.16
Merge-request: !3927
2019-10-17 10:23:36 -04:00
Brad King 0b10b3ed6b cmMakefileTargetGenerator: Inline WriteObjectBuildFile in only call site 2019-10-16 13:48:14 -04:00
Brad King 0e436c573c install,export: Do not treat language names as target names
When generating `IMPORTED_LINK_INTERFACE_LANGUAGES`, do not treat the
entries as target names.

Fixes: #19846
2019-10-16 12:48:20 -04:00
Brad King 84e14a52ff Merge branch 'doc-pch-compile-language' into release-3.16
Merge-request: !3925
2019-10-16 10:54:11 -04:00
Brad King ac75886525 PCH: Document and test COMPILE_LANGUAGE genex for per-language header
Fixes: #19839
2019-10-16 10:32:56 -04:00
Brad King c2a7729177 Merge branch 'doc-add_link_options-typos' into release-3.16
Merge-request: !3922
2019-10-16 09:53:39 -04:00
Tom Lankhorst a7ef28b9d8 Help: Fix typos and style in add_link_options documentation 2019-10-16 09:49:08 -04:00
Brad King 3658f4425a Merge branch 'swift-cross-compile' into release-3.16
Merge-request: !3921
2019-10-15 13:29:11 -04:00
Saleem Abdulrasool 466ad466b4 try_compile: support Swift for cross-compilation
Ensure that we preserve the `CMAKE_Swift_COMPILER_TARGET` variable to
use cross-compilation for testing the Swift compiler if appropriate.
2019-10-15 13:25:14 -04:00
Brad King 080163a657 Merge branch 'CMakeFindBinUtils-cleanup' into release-3.16
Merge-request: !3920
2019-10-15 11:19:53 -04:00
Brad King c3c751e9dd Merge branch 'FindCurses-tinfow' into release-3.16
Merge-request: !3915
2019-10-15 11:19:44 -04:00
Brad King c89794feae Merge branch 'FindHDF5-cray' into release-3.16
Merge-request: !3918
2019-10-15 11:19:31 -04:00
Brad King 4041f6a327 Merge branch 'doc-static-lib-flags' into release-3.16
Merge-request: !3919
2019-10-15 11:15:45 -04:00
Brad King f0da223ff0 CMakeFindBinUtils: Remove unnecessary variable unset calls
Some unset calls were added by commit 079b8e2916 (Clang: prefer lld-link
over link.exe, 2019-07-11, v3.16.0-rc1~161^2~2) but they are unnecessary
since commit 3a82ef78eb (CMakeFindBinUtils: Rename and unset variables
for additional names, 2019-07-23, v3.16.0-rc1~332^2~2).

Suggested-by: Norbert Lange <nolange79@gmail.com>
2019-10-15 11:09:06 -04:00
Manuel Herrmann 9fc87ef2e7 FindCurses: use tinfow when wide support is requested 2019-10-15 09:50:52 -04:00
Willem Deconinck 08f4b5dcf9 FindHDF5: Append hdf5 to hdf5_hl to avoid undefined references 2019-10-15 09:47:58 -04:00
Willem Deconinck cd6f0ef35a FindHDF5: Cray HDF5 Fortran module filename is usually capitalized 2019-10-15 09:47:58 -04:00
Brad King fb16e0e7c0 Help: Clarify documentation of CMAKE_STATIC_LINKER_FLAGS
Issue: #19838
2019-10-15 09:43:00 -04:00
Brad King 7716be4561 Merge branch 'cmake-initial-cache-relative' into release-3.16
Merge-request: !3912
2019-10-14 16:18:16 -04:00
Brad King 74035b0ad4 Merge branch 'FindOpenMP-clang-HIP-device' into release-3.16
Merge-request: !3911
2019-10-14 16:18:08 -04:00
Peter Waller c9d73b26b0 cmake: Fix relative path regression in -C
Since commit 4ca0526f8a (cmake: Pass -S and -B into PreLoad.cmake and -C
scripts, 2019-08-20, v3.16.0-rc1~195^2) the value of `CMAKE_SOURCE_DIR`
is the source directory rather than the current working directory.
This was correct on its own, but the place storing that value is also
used as the base for relative paths specified on the command line.
The latter should of course be relative to the current working
directory.

The fix is to switch to use a full path internally, unless a full path
is already specified.  Add tests for the behaviour of `-C` under these
four circumstances:

    {with -S, without -S} x {full path, relative path}

Fixes: #19827
2019-10-14 16:17:00 -04:00
Konstantin Pyzhov db5a8d7876 FindOpenMP: Add support for HIP clang device pass
The HIP clang makes 2 passes when compiling HIP programs: the DEVICE
pass and the HOST pass.  For openmp, the `-fopenmp` option is only
passed to the HOST compilation pass.  Therefore, the small test that
CMake uses for OpenMP detection fails to compile, and CMake reports
failure to detect OpenMP support in the compiler.  The suggested
solution is to add check for `__HIP_DEVICE_COMPILE__` macro defined by
HIP clang for the DEVICE pass to the OpenMP detection test.
2019-10-12 11:04:45 -04:00
Brad King 6847d81856 Merge branch 'no-git-version' into release-3.16
Merge-request: !3910
2019-10-11 14:36:31 -04:00
Kyle Edwards 874396a30d CMakeVersion: Add option to disable Git suffix
Distro maintainers who are building from Git with patches added on
may want to disable the automatic Git suffixing, as it does not
provide any useful information and simply confuses the end user.
Add an undocumented CMake_VERSION_NO_GIT variable to disable this.
2019-10-11 14:32:09 -04:00
Brad King b254b0651e CMakeVersion: Prefer Git information provided by 'git archive' exports
Update the approach from commit fe2c558ba6 (CMakeVersion: Preserve Git
information during 'git archive', 2019-07-25, v3.16.0-rc1~337^2) to
prefer `export-subst` information.  This will allow exported source
trees to be imported into unrelated Git repositories while still using
the original upstream CMake commit information.
2019-10-11 13:49:59 -04:00
Brad King 75f361a00c Merge branch 'InstallRequiredSystemLibraries-redist' into release-3.16
Merge-request: !3909
2019-10-11 12:08:51 -04:00
Brad King ecbf6546d7 IRSL: Install vcruntime140_1.dll if available
VS 2019 now distributes this additional runtime DLL with its `14.2x`
toolsets.

Fixes: #19829
2019-10-11 12:05:51 -04:00
Brad King 2eecd1c3bc IRSL: Prefer MSVC runtime libraries from newest toolset first 2019-10-11 11:57:39 -04:00
Brad King 820f952316 Merge branch 'vs-v142-csharp-flags' into release-3.16
Merge-request: !3908
2019-10-11 11:19:02 -04:00
Brad King bbf216fb6b VS: Add toolset v142 CSharp flag table
While the flag tables for C and C++ were generated from MSBuild `.xml`
files, the CSharp flag tables were written by hand.  Copy the `v141`
flag table to use for the `v142` toolset.

Remove the special case added by commit 626c51f47b (VS: Update for
Visual Studio 2019 Preview 2, 2019-01-24, v3.14.0-rc1~74^2) that mapped
the v142 flag table lookup to v141 since we now have the real v142
table.

Fixes: #19828
2019-10-11 11:11:20 -04:00
Brad King d26ef5d807 Merge branch 'FindPostgreSQL-macports-and-v12' into release-3.16
Merge-request: !3907
2019-10-11 11:09:46 -04:00
Ben Boeckel ec43d96657 FindPostgreSQL: support macports installation scheme
Macports installs into `include/postgresql${suffix}`. Add this to the
list of supported suffixes. Also copy the non-server
`postgresql/${suffix}` path.
2019-10-11 11:04:13 -04:00
Ben Boeckel 908dff41c6 FindPostgreSQL: support version 12 2019-10-11 11:04:13 -04:00
Brad King 18f3e28652 Merge branch 'iar-8051-support' into release-3.16
Merge-request: !3906
2019-10-11 10:23:37 -04:00
Micael Borgefeldt 5652e11ea1 IAR: Add 8051 support
Issue: #17264
2019-10-11 10:22:52 -04:00
Micael Borgefeldt 6e51db9a40 IAR: Fix v850 assembler support file extensions
Fix the file extension added by commit 158f3795b8 (IAR: Add v850
assembler support, 2019-09-23, v3.16.0-rc1~70^2).

Issue: #17264
2019-10-11 10:22:52 -04:00
Brad King 3709389520 Merge branch 'objc-c++flags' into release-3.16
Merge-request: !3904
2019-10-11 09:24:24 -04:00
Brad King 3e05637280 Merge branch 'doc-unity-build' into release-3.16
Merge-request: !3905
2019-10-11 08:32:53 -04:00
Brad King ef5875b559 Merge branch 'intel-19-compile-features' into release-3.16
Merge-request: !3900
2019-10-11 08:32:37 -04:00
Brad King 13c8dbd5a6 Help: Document CMAKE_UNITY_BUILD/CMAKE_EXPORT_COMPILE_COMMANDS limitation
These two options currently do not work well together.  Mention this
limitation in the documentation.

Issue: #19826
2019-10-11 08:05:59 -04:00
Brad King ed06d27c7f Help: Extend documentation of CMAKE_UNITY_BUILD variable 2019-10-11 08:05:29 -04:00
Brad King 1d9155eb93 Help: Improve UNITY_BUILD documentation formatting 2019-10-11 08:03:29 -04:00
Cristian Adam 806e01d638 Objective-C: Do not treat Objective-C files as C++ files
When both C and C++ langauges are enabled, the Objective-C files
should be treated as C files and not as C++ files.
2019-10-11 14:01:48 +02:00
Brad King 8aac65a361 Help: Document CMAKE_UNITY_BUILD in 3.16 release notes 2019-10-11 07:54:59 -04:00
Brad King 3fb146cb11 Tests: Update CompileFeatures test for Intel 19 with VS 2015
Blacklist `cxx_relaxed_constexpr` for this case because the compiler
does not advertise the support in this mode but compiles our example.
2019-10-10 13:14:42 -04:00
Brad King 847e8bc98c Intel: Fix default C++ dialect detection on Windows
For the Intel Compiler for Windows we have some subtle preprocessor
checks in compiler feature detection to detect C++11 and C++14 modes.
Use these when detecting the default C++ dialect too.
2019-10-10 13:14:42 -04:00