Commit Graph

1377 Commits

Author SHA1 Message Date
Brad King 225675b1a2 Merge branch 'wix-cmake-downgrade-fix' into release-3.14
Merge-request: !3087
2019-03-12 09:41:37 -04:00
Nils Gladitz 7593bdf4e8 CMake: Fix WiX installer downgrades with versioned binaries
Since commit 5b9da05b7a (Windows: Embed version information into CMake
binaries, 2017-10-25, v3.11.0-rc1~411^2) our binaries have version
information that prevents a `.msi` downgrade from replacing them by
default.  Configure the re-install mode:

* a: reinstall all files regardless of version
* m: rewrite all per-machine registry entries
* u: rewrite all per-user registry entries
* s: reinstall shortcuts and icons

Fixes: #19006
2019-03-12 09:39:35 -04:00
Brad King bf1c2a2593 CMake 3.14.0-rc1 version update 2019-02-06 10:08:35 -05:00
Brad King 748d024551 Merge topic 'fetchcontent-reduce-boilerplate'
a94355c7b7 FetchContent: Add new command FetchContent_MakeAvailable()
611d5274de Sphinx: Add limited support for nested variables in docs
1a07e1b47d FetchContent: Trivial doc corrections

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2830
2019-01-30 08:13:42 -05:00
Craig Scott 611d5274de Sphinx: Add limited support for nested variables in docs
This is needed to allow example code to contain content like
`${some_${foo}_bar}`.
2019-01-26 16:49:15 +11:00
Lucy Phipps b9e6d04558 Reduce size of PNG images
Use FileOptimizer 13.50.2431 (x86) and ZopfliPNG 1.0.2.

Update expected file hashes in tests.
2019-01-25 09:14:51 -05:00
Brad King 5b3af28e45 libuv: Update CMake-internal buildsystem 2019-01-17 11:29:44 -05:00
Brad King 1136275ae1 libuv: Include uv/ headers from each other without any path
Headers in `uv/` can include each other without the `uv/` prefix.  Using
the prefix assumes that the location of `uv/` is in the include file
search path, but it is possible to include `uv.h` via a longer path.
2019-01-17 10:27:14 -05:00
Brad King 1e1209729b Merge branch 'upstream-libuv' into update-libuv
* upstream-libuv:
  libuv 2019-01-15 (f84c5e69)
2019-01-17 10:26:32 -05:00
Brad King 88b90fb1ff Merge topic 'rel-win7'
214a0bc924 Utilities/Release: Build for Windows 7 and above

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2807
2019-01-15 13:18:04 -05:00
Brad King e01d04b3a1 Merge topic 'curl-IPv6'
971d490e5b curl: do not disable IPv6 support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2762
2019-01-15 13:13:17 -05:00
Brad King d4a42dd4a8 Merge topic 'iwyu-clang-6'
cd0881be61 IWYU: Update CMake code for IWYU built with Clang 6

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2810
2019-01-15 11:38:24 -05:00
Brad King cd0881be61 IWYU: Update CMake code for IWYU built with Clang 6
IWYU now correctly requires `<utility>` for `std::move`.  It also
requires a container header when used via a range-based for loop.
2019-01-15 10:00:50 -05:00
Brad King 214a0bc924 Utilities/Release: Build for Windows 7 and above
Drop support for Windows XP and Windows Vista.  Upstream libuv has
done this, and since that is a dependency of ours we will soon
need to do so also.
2019-01-14 14:17:01 -05:00
Kyle Edwards bf2503089b liblzma: fix undefined shift result
When a 32-bit integer is shifted left by 32 bits, the result is
undefined. Shift a 64-bit integer instead.
2019-01-14 09:53:12 -05:00
Kyle Edwards ee555c2a33 libuv: fix clang scan-build warning 2019-01-14 09:53:12 -05:00
Rechi Rechi 971d490e5b curl: do not disable IPv6 support
Allow curl's detection of IPv6 to proceed when building in CMake.
2019-01-10 13:54:25 -05:00
Robert Maynard db89590f36 Help: CMakeTemplateStyle uses colors that better contrast. 2019-01-09 15:53:26 -05:00
Brad King dc90cd6877 Merge topic 'fileapi'
b9c6f08276 Help: Add release note for fileapi feature
4b6b2a571c fileapi: extend codemodel v2 with directory details
eb8c7676a4 fileapi: extend codemodel v2 with a project model
42f0125ceb fileapi: Add test for cmakeFiles v1
6615408193 fileapi: add cmakeFiles v1
3f6ee75a66 fileapi: Add test for cache v2
7489e95b8e fileapi: add cache v2
ea0a060168 fileapi: Add test for codemodel v2
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2706
2018-12-13 09:57:59 -05:00
Brad King 3e922ceb5e fileapi: add codemodel v2
Start with v2 to distinguish it from server-mode v1.

Issue: #18398
2018-12-12 06:40:10 -05:00
Brad King 5751a09092 jsoncpp: fix signed overflow when parsing negative value
Clang's ubsan (-fsanitize=undefined) reports:

    runtime error: negation of -9223372036854775808 cannot be represented in
    type 'Json::Value::LargestInt' (aka 'long'); cast to an unsigned type to
    negate this value to itself

Follow its advice and update the code to remove the explicit negation.
2018-12-11 12:50:21 -05:00
Regina Pfeifer c2f6872c4e CTest: Remove submit method 'xmlrpc' 2018-11-29 00:29:12 +01:00
Brad King 9bb203ed0f Merge topic 'FindBoost-1.69'
5045cd82d0 FindBoost: Additional fixes for 1.69

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2601
2018-11-13 10:38:54 -05:00
Roger Leigh 5045cd82d0 FindBoost: Additional fixes for 1.69 2018-11-13 10:37:01 -05:00
Brad King b83420e45d Merge topic 'update-curl'
c1ad5118de curl: backport upstream fix to 7.62.0 regression
03bf934fbe curl: Modernize tiny test code used for build inside CMake
2b3c1bb9b0 curl: Update build within CMake to account for 7.62 changes
636bcefeab Merge branch 'upstream-curl' into update-curl
9835e90750 curl 2018-10-30 (19667715)
9c6574795c curl: Update script to get curl 7.62.0

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2550
2018-11-05 07:43:41 -05:00
Brad King c1ad5118de curl: backport upstream fix to 7.62.0 regression
Backport upstream curl commit 2c5ec339ea (Curl_follow: accept
non-supported schemes for "fake" redirects, 2018-11-01) to get
a fix to curl issue 3210, a regression in 7.62.0.
2018-11-02 08:14:12 -04:00
Brad King 03bf934fbe curl: Modernize tiny test code used for build inside CMake
Drop unused code.  Report the error message on failure.
Format the source file using clang-format.
2018-11-01 08:55:50 -04:00
Brad King 2b3c1bb9b0 curl: Update build within CMake to account for 7.62 changes 2018-10-31 09:50:04 -04:00
Brad King 636bcefeab Merge branch 'upstream-curl' into update-curl
* upstream-curl:
  curl 2018-10-30 (19667715)
2018-10-31 09:46:23 -04:00
Brad King 9c6574795c curl: Update script to get curl 7.62.0 2018-10-31 09:40:47 -04:00
Brad King 53e65e8e0a curl: Do not call cmake_minimum_required inside CMake itself
Re-use the requirements from the top-level.
2018-10-25 11:49:59 -04:00
Brad King 89ab893469 Merge topic 'fix-no-testing'
a834bcaa91 Tests: Add missing BUILD_TESTING conditions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Dan Ibanez <daibane@sandia.gov>
Merge-request: !2520
2018-10-25 07:25:13 -04:00
Brad King a834bcaa91 Tests: Add missing BUILD_TESTING conditions
We should not call `add_test` unless `BUILD_TESTING` is enabled.

Fixes: #18500
2018-10-24 15:51:17 -04:00
Brad King 5112a76a17 Merge topic 'update-curl'
0310024563 curl: Update build within CMake to account for 7.61 changes
b9d1107790 curl: Backport to work with CMake 3.1 again
e9e8dcee6b Merge branch 'upstream-curl' into update-curl
18812a9c3d curl 2018-09-04 (432eb5f5)
ded211ae46 curl: Update script to get curl 7.61.1

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2509
2018-10-23 10:20:56 -04:00
Brad King 887ba2dc5f Merge topic 'curl-ssize_t'
3dc484e531 curl: add missing type sizes for 'long long' and '__int64'

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2513
2018-10-23 10:19:58 -04:00
Brad King ec13ba36b5 Merge branch 'update-curl' into release-3.13
Merge-request: !2509
2018-10-22 12:55:14 -04:00
Brad King 8b5cd17000 Merge branch 'curl-ssize_t' into release-3.13
Merge-request: !2513
2018-10-22 12:55:05 -04:00
Brad King 3dc484e531 curl: add missing type sizes for 'long long' and '__int64'
When generating `curl_config.h`, add size information for `long long`
and `__int64` types.  These are needed as candidates for defining the
`ssize_t` type because on MSVC, `long` is not the same size as `size_t`.

This problem did not affect upstream curl because it computes the
`ssize_t` type in CMake code where all sizes are available.  CMake's
port computes it in preprocessor logic because universal binaries on
macOS do not know type sizes until compile time.

Fixes: #18477
2018-10-22 12:02:38 -04:00
Brad King 0310024563 curl: Update build within CMake to account for 7.61 changes
The_CURL_STATICLIB option was replaced by BUILD_SHARED_LIBS.

Drop our own CURL_STATICLIB compile definition because it is now
provided by curl's usage requirements.
2018-10-22 08:55:40 -04:00
Brad King b9d1107790 curl: Backport to work with CMake 3.1 again
Curl 7.61.1 requires CMake 3.4 to build from source and also exposes
a dependency on OpenSSL imported targets.  Revert that part of the
changes imported from curl upstream.
2018-10-22 08:51:01 -04:00
Brad King e9e8dcee6b Merge branch 'upstream-curl' into update-curl
* upstream-curl:
  curl 2018-09-04 (432eb5f5)
2018-10-22 08:48:58 -04:00
Brad King ded211ae46 curl: Update script to get curl 7.61.1 2018-10-22 08:23:52 -04:00
Brad King 29ec12fb4f Merge topic 'cmake-through-3.12'
95b4b9137a Declare support for CMake versions through 3.12 for own build

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2496
2018-10-19 09:58:27 -04:00
Craig Scott 7053dd301c Merge topic 'help-syntax-highlighting'
93f3f65516 Help: Revise docs of modules AddFileDependencies..CheckFunctionExists
fc7ee1ca45 Help: Override pygments CMakeLexer to support <..> and [..]
74b3eacdc7 Help: Use appropriate list types in FindPkgConfig

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2468
2018-10-19 06:31:55 -04:00
Joachim Wuttke (o) fc7ee1ca45 Help: Override pygments CMakeLexer to support <..> and [..]
* The code snippets in the docs consist of CMake code mixed
  with syntax definition punctuation like < > [ ] ... Therefore
  a pure CMake lexer is inadequate. Here it is replaced by a
  CMake syntax definition parser.
* Fixed syntax definition snippets in FindPkgConfig.cmake to
  make best use of syntax highlighting. This source file is the
  hardest to support because it contains comparison operators
  <= = >=, which need special attention to avoid confusion
  with the placeholder indicators <...>.
* Fixed syntax in execute_process.rst (there were unbalanced
  brackets).
* Disabled syntax highlighting for long string examples in
  cmake-language.7.rst.
* No highlighting of removed syntax in CMP0049
* To inspect the outcome of this patch, see e.g. the pages
  * manual/cmake-buildsystem.7.html
  * module/ExternalProject.html
  * module/FindPkgConfig.html
  which are particularly rich in complex code snippets.
2018-10-19 07:25:34 +11:00
Brad King 56c85d9429 Merge topic 'rel-doc-qthelp'
1d5c8b81db Utilities/Release: Add qthelp docs to binary archives

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2497
2018-10-18 07:38:15 -04:00
Brad King 1d5c8b81db Utilities/Release: Add qthelp docs to binary archives
Fixes: #18465
2018-10-17 14:38:46 -04:00
Brad King 95b4b9137a Declare support for CMake versions through 3.12 for own build
CMake 3.12 introduced a `...<max>` syntax in the version given to
`cmake_minimum_required` to automatically set policies to NEW up
to that version.  Use it to avoid listing policies explicitly.

The syntax is compatible with older versions of CMake such that they use
the extended version string for the `CMAKE_MINIMUM_REQUIRED_VERSION`
variable (which we don't use) but otherwise ignore it.
2018-10-17 14:29:16 -04:00
Brad King ab6bf9d0ad Utilities/Release: Update to openssl-1.1.1
Update the prebuilt binary build configurations for machines where
we build our own OpenSSL library to use a newer version.
2018-10-08 10:42:12 -04:00
Brad King 94652e8733 CMake 3.13.0-rc1 version update 2018-10-03 12:53:38 -04:00