34803 Commits

Author SHA1 Message Date
Roger Leigh
b479429b2c FindBoost: Allow testing for multiple compiler suffixes
This is to permit VS2017 to make use of the vc141 suffix or
fall back to the compatible vc140 to use Boost libraries built
with VS2015.

Cherry picked from commit 3ca6f70f8b27c08ad3470542705701e6e8e6ea05
plus a fixup from commit 6115875bf0faef61c558e46395e67bdfd4ad48e1
for backport to CMake 3.8.
2017-04-24 10:52:01 -04:00
Brad King
92857eef23 FindBoost: Fix library directory for VS 2017
Boost 1.64 now names the library directory `14.1`, not `15.0`.
2017-04-24 10:51:08 -04:00
Brad King
b99fbf3b16 Merge branch 'FindBoost-fix-backslash-tolerance' into release 2017-04-19 11:28:08 -04:00
Alex Turbov
2516bccdf6 FindBoost: Restore tolerance of backslashes in paths
Since commit v3.8.0-rc1~136^2 (FindBoost: Search official location of
prebuilt binaries on Windows, 2016-12-21) we pass input paths through
`_Boost_UPDATE_WINDOWS_LIBRARY_SEARCH_DIRS_WITH_PREBUILT_PATHS` in more
places than before.  This broke tolerance of backslashes in paths
provided by the user due to the macro argument re-parsing.  Turn
`_Boost_UPDATE_WINDOWS_LIBRARY_SEARCH_DIRS_WITH_PREBUILT_PATHS` into a
function instead of macro to avoid re-parsing of macro arguments.

Fixes: #16816
2017-04-19 11:24:41 -04:00
Brad King
f612719a77 Merge branch 'FindOpenSSL-more-precompiled' into release 2017-04-19 11:09:44 -04:00
Alex Turbov
16ef163fd6 FindOpenSSL: Add more library name alternatives
Add names found in OpenSSL 1.1.0 builds from [1].

[1] https://www.npcglib.org/~stathis/blog/precompiled-openssl/
2017-04-19 11:08:42 -04:00
Brad King
da7833c5bb CMake 3.8.0 v3.8.0 2017-04-10 11:16:00 -04:00
Brad King
a6a0cfb24d Merge branch 'vs-rc-defines' into release 2017-04-10 11:08:26 -04:00
Brad King
89b92a98a5 RC: Mark CMAKE_RC_FLAGS_<CONFIG> cache entries as advanced
These were added by commit v3.8.0-rc4~4^2~1 (RC: Add missing
CMAKE_RC_FLAGS_<CONFIG> entries to cache, 2017-03-28) and should be
advanced as they are for other languages.
2017-04-10 11:07:14 -04:00
Brad King
e265ddecfc Merge branch 'packaging-qtsdk' into release 2017-04-10 10:04:51 -04:00
Brad King
63a57d1bd9 Merge branch 'emulatorTargetPropertyDocs' into release 2017-04-10 09:58:57 -04:00
Brad King
07790796fc Merge branch 'clarifyFileGenerateDocs' into release 2017-04-10 09:58:52 -04:00
Craig Scott
d039f7414f Help: Clarify file(GENERATE) only writes output file at generation phase
Closes: #16556
2017-04-10 09:58:22 -04:00
Brad King
07cc72502d Merge branch 'clarifyRemoveDocs' into release 2017-04-10 09:53:14 -04:00
Craig Scott
186dd8771e Help: Cross compile variable used as initial value for target property
Variable CMAKE_CROSSCOMPILING_EMULATOR is used to initialize
CROSSCOMPILING_EMULATOR.

Issue: #16785
2017-04-10 09:52:58 -04:00
Craig Scott
812274ff49 Help: Clarify what the -f option does for the remove command
Closes: #16784
2017-04-10 09:50:10 -04:00
Brad King
861f3465b4 Merge branch 'FindwxWidgets-new-syslibs' into release 2017-04-10 09:40:39 -04:00
Konstantin Podsvirov
94420a7b61 QtIFW: Improved packaging as part of the QtSDK
Changes:
- Fix install script template (*.qs.in) to register on all platforms;
- Add patch version numter to display name ("CMake X.Y" -> "CMake X.Y.Z").
2017-04-08 07:13:50 +03:00
Vadim Zeitlin
ae4b3b7072 FindwxWidgets: link with the new required libs under MSW
Latest wxWidgets git master version and the upcoming 3.1.1 release requires
linking with shlwapi and version DLLs. As this does no harm when using the
previous versions, just do it unconditionally.
2017-04-07 23:50:55 +02:00
Brad King
1a6e47aa3d Merge branch 'server-mode-test-no-pyc' into release 2017-04-03 13:37:27 -04:00
Brad King
e51d939525 Tests: Avoid generating .pyc files during Server test
Avoid writing any files to the source tree during testing.

Fixes: #16770
2017-04-03 13:36:48 -04:00
Brad King
585f94fe69 Merge branch 'mac-implicit-link-no-lto-flag' into release 2017-04-03 13:24:03 -04:00
Brad King
53f17333f8 CMakeParseImplicitLinkInfo: Ignore ld -lto_library flag
The `ld` tool in Xcode 8.3 now has a `-lto_library <path>` flag.  Ignore
the flag instead of accidentally parsing it as `-l` with `to_library`.

Fixes: #16766
2017-04-03 13:23:31 -04:00
Brad King
b1f35f1ffd Merge branch 'intel-compile-features' into release 2017-03-31 14:29:25 -04:00
Brad King
4af0c9daf4 Features: Update features for Intel C++ 17.0.2 on UNIX
Intel 17.0.2 on UNIX introduced a regression from 17.0.1 in its
definition of `__cpp_constexpr` in `-std=c++14` mode.  It incorrectly
defines it as `200704` instead of the expected `201304`.  Fix our
feature detection table to account for this.
2017-03-31 14:29:18 -04:00
Brad King
cf9f186e0d Merge branch 'test-fix-CTestTestChecksum-dir' into release 2017-03-31 13:48:56 -04:00
Brad King
72d0f94713 Tests: Fix spurious CTestTestParallel failures
If `CTestTestParallel` was run at the same time as `CTestTestChecksum`
(e.g. during parallel testing) then the former fails due to the latter
stepping on its directory.  Fix the directory used for the latter to
avoid the conflict.
2017-03-31 13:46:08 -04:00
Brad King
1f5ab90208 Merge branch 'ExternalProject-fix-remote-branch' into release 2017-03-31 13:00:08 -04:00
Brad King
6f3838c034 ExternalProject: Fix regression in GIT_TAG with remote branch name
The change in commit  v3.8.0-rc2~7^2 (ExternalProject: Run `git
checkout` with `--` to clarify arguments, 2017-02-24) broke the case of
`GIT_TAG some-remote-branch` because an explicit `--` means that the
preceding argument is a tree-ish instead of a branch.  Revert the change
and leave a comment.

Fixes: #16763
2017-03-31 12:59:53 -04:00
Brad King
9e32b88784 CMake 3.8.0-rc4 v3.8.0-rc4 2017-03-30 09:16:41 -04:00
Brad King
18eeed4194 Merge branch 'FindBoost-1.64-deps' into release 2017-03-30 08:55:01 -04:00
Roger Leigh
556d98da3b FindBoost: Update 1.64 dependencies using 1.64 beta1 2017-03-30 11:43:13 +01:00
Brad King
cb4e731347 Merge branch 'sdcc-compiler-id' into release 2017-03-29 13:22:06 -04:00
Brad King
5695558f4a SDCC: Fix identification of current sdcc compiler
The sdcc compiler no longer defines the `SDCC` preprocessor macro.
Instead `__SDCC_VERSION_MAJOR` and similar component-wise macros are
defined.  Use them instead if defined.

Issue: #16746
2017-03-29 13:21:49 -04:00
Brad King
6ca509e7c6 Merge branch '16742-swift-3.0' into release 2017-03-29 10:40:59 -04:00
Gregor Jasny
77139e320c Swift: Simplify mixed test case to make it version agnostic
Issue: #16742
2017-03-29 15:36:05 +02:00
Brad King
d4a995750a Merge branch 'vs-rc-defines' into release 2017-03-29 09:24:29 -04:00
Gregor Jasny
c03141c04c Swift: Default to Swift 3.0 with Xcode 8.3 and later
Xcode 8.3 has dropped support for Swift 2.3 so that compiler and
feature detection failed.

Closes #16742
2017-03-28 16:06:29 -04:00
Brad King
fff34934e7 MSVC: Restore _DEBUG preprocessor definition in RC debug builds
In commit v3.8.0-rc1~304^2 (MSVC: Do not define _DEBUG explicitly when
using /MDd, 2016-11-15) we removed the `_DEBUG` preprocessor definition
from MSVC C and C++ flags because the `cl` compiler automatically
defines it in Debug builds anyway.  However, the VS generators propagate
C preprocessor definitions to the RC (Windows Resource Compiler) tool.
This means that we used to explicitly define `_DEBUG` for RC debug
builds.  Therefore existing project code may expect the definition to be
there even though the `rc` compiler itself does not implicitly define
`_DEBUG` in debug builds.

Add the `_DEBUG` flag to the default `CMAKE_RC_FLAGS_DEBUG` instead
to restore this definition for RC debug builds.  This also makes it
available consistently in VS, Ninja, and Makefile generators.

Fixes: #16745
2017-03-28 13:10:56 -04:00
Brad King
79a915383f RC: Add missing CMAKE_RC_FLAGS_<CONFIG> entries to cache 2017-03-28 13:10:55 -04:00
Brad King
c77194ec47 VS: Honor preprocessor definitions in RC flags
The VS generators use the C (or CXX) preprocessor definitions for
the Windows Resource Compiler tool.  This causes definitions parsed
out of `CMAKE_RC_FLAGS[_<CONFIG>]` variables to be dropped.  Fix
the implementation to preserve both.

Issue: #16745
2017-03-28 13:10:55 -04:00
Brad King
1449f6f63d cmVisualStudio10TargetGenerator: De-duplicate preprocessor defs 2017-03-28 13:10:55 -04:00
Brad King
8a619e8c85 cmIDEOptions: Add GetDefines method 2017-03-28 13:10:55 -04:00
Brad King
85abc5f5aa Merge branch 'libarchive-backport-zip-dir-fix' into release 2017-03-27 16:53:55 -04:00
Brad King
9dfccdc227 libarchive: backport zip directory recognition fix
Backport upstream libarchive commit 2ecf8d1c1e (Try harder to detect
directories in zip archives, 2016-12-23).

Fixes: #16741
2017-03-27 16:53:20 -04:00
Brad King
8c94f5085d Merge branch 'ninja-fix-sysconf-non-limit' into release 2017-03-27 13:42:30 -04:00
Christian Pfeiffer
92fe00d33c Ninja: Fix command line limit when sysconf has no ARG_MAX
The `sysconf(3)` manual explains that the return value can be `-1` for
limits if there is no definite limit.  Recognize this case and skip
using the value as a limit candidate.  Otherwise we use response files
unconditionally on such systems instead of checking other limits.

Fixes: #16740
2017-03-27 13:42:19 -04:00
Brad King
3ed87b7ee1 Merge branch 'InstallRequiredSystemLibraries-vs2017' into release 2017-03-27 11:50:36 -04:00
Brad King
6eb609fd59 InstallRequiredSystemLibraries: Find VS 2017 redist directory
Use our undocumented `cmake_host_system_information` query to find the
VS 2017 installation directory by asking the VS installer tool.  Then
look relative to that for the redist directory.

Fixes: #16737
2017-03-27 11:43:01 -04:00
Brad King
cf784d9ff5 Add undocumented CMake language means to find VS 2017
Add a query to the `cmake_host_system_information` command to get
the location of a VS 2017 installation.  Leave it undocumented and
for internal use for now.
2017-03-27 11:43:01 -04:00