Commit Graph

320 Commits

Author SHA1 Message Date
Ben Boeckel
c5b072800d gitlab-ci: add jobs for reproducing the release binaries 2020-06-03 12:50:15 -04:00
Ben Boeckel
45f2786ff7 Release/linux: remove explicit LANG setting
It shouldn't be needed anymore now that the Sphinx scripts are reading
UTF-8 content explicitly.
2020-06-03 11:51:21 -04:00
Brad King
7670ba8b0a Utilities/Release: Drop win{32,64} scripts in favor of docker build
Also drop the `CMakeNightlyWin{32,64}` tests that use the scripts.

Follow the pattern from commit 689fdbfc61 (Utilities/Release: Drop
linux64 script in favor of docker build, 2019-08-27, v3.16.0-rc1~184^2).
2020-05-05 14:56:56 -04:00
Brad King
ff929badb3 Utilities/Release: Add docker specs to build and test Windows binaries
These will allow anyone to produce portable binaries like those
published on `cmake.org`.

Follow the pattern from commit facc240a45 (Utilities/Release: Add docker
specs to build and test Linux binaries, 2019-08-23, v3.16.0-rc1~184^2~2).
Parameterize the architecture to support both `x86_64` and `i386`.
2020-05-05 14:56:26 -04:00
Brad King
5f4f7e637a Utilities/Release: Generalize OS in README docker instructions
Replace the hard-coded OS name `linux` with an `<os>` placeholder.
Mention `linux` in an explicit list of supported `<os>/<arch>` pairs.
2020-05-05 14:50:26 -04:00
Brad King
13467f1dbd Utilities/Release: Make README docker examples more readable
Hard-code them for `linux/x86_64` instead of using an `<arch>`
placeholder.  Update the prose to mention the platform/arch explicitly.
2020-05-05 14:45:53 -04:00
Brad King
593c3fa1d4 Utilities/Release: Remove unused linux/x86_64/test/cache-ninja.txt 2020-05-05 14:37:04 -04:00
Brad King
f0e97788e5 Merge topic 'rel-linux-openssl'
3a66c7674c Utilities/Release: Update to openssl 1.1.1f

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4563
2020-04-03 06:55:35 -04:00
Brad King
3a66c7674c Utilities/Release: Update to openssl 1.1.1f 2020-04-03 06:50:56 -04:00
Brad King
7253b49ca9 Utilities/Release: Use python 3 for tests on Windows binaries
Explicitly specify the build machine's Python 3 installation for
Windows to be used by the test suite.  This avoids accidentally
using other versions on the machine.
2020-02-10 10:19:20 -05:00
Brad King
1529f4a930 Utilities/Release: Teach "push" script to create destination subdirectory
Extend the script added by commit 9bf97363b0 (Utilities/Release: Replace
upload step with a "push" script, 2019-05-24, v3.15.0-rc1~56^2) to
create the destination subdirectory for the CMake version being pushed.
2019-10-10 14:24:32 -04:00
Kitware Robot
ed98209ddc Revise include order using clang-format-6.0
Run the `clang-format.bash` script to update our C and C++ code to a new
include order `.clang-format`.  Use `clang-format` version 6.0.
2019-10-01 12:26:36 -04:00
Alexej Harm
a3cfb66543 Add compatibility with the cl.exe /permissive- compiler option 2019-09-11 15:26:20 +02:00
Brad King
2c95c35c51 Utilities/Release: Add docker spec for STGZ package on Linux
The spec added by commit facc240a45 (Utilities/Release: Add docker specs
to build and test Linux binaries, 2019-08-23) generates only the TGZ
package, but the old `Utilities/Release/linux64_release.cmake` script
also generated a STGZ package.
2019-08-29 13:04:27 -04:00
Brad King
4929453504 Merge topic 'docker-rel-linux'
689fdbfc61 Utilities/Release: Drop linux64 script in favor of docker build
2d7cfd30ac Utilities/Release: Drop source archive generation in scripts
facc240a45 Utilities/Release: Add docker specs to build and test Linux binaries
bf832ccf01 Utilities/Release: Add README.rst describing directory content
ab153f17bf Utilities/Release: Drop machine-specific README
ed294c1664 Add option to skip CMake tests that need network access
4b8a864d52 Add option to test CMake itself against its hosting CMake

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Gregor Jasny <gjasny@googlemail.com>
Merge-request: !3727
2019-08-29 09:32:13 -04:00
Brad King
689fdbfc61 Utilities/Release: Drop linux64 script in favor of docker build
Drop also drop the CMakeNightlyLinux64 test that uses the script.
2019-08-28 13:20:36 -04:00
Brad King
2d7cfd30ac Utilities/Release: Drop source archive generation in scripts
We will generate the `.tar.gz` and `.zip` source archives using
`git archive` in the scripts that drive the Linux build with Docker.
2019-08-28 13:20:36 -04:00
Brad King
facc240a45 Utilities/Release: Add docker specs to build and test Linux binaries
These will allow anyone to produce portable binaries like those
published on `cmake.org`.
2019-08-28 13:20:36 -04:00
Brad King
bf832ccf01 Utilities/Release: Add README.rst describing directory content 2019-08-23 13:31:54 -04:00
Brad King
ab153f17bf Utilities/Release: Drop machine-specific README 2019-08-23 13:29:49 -04:00
Brad King
74eef37bc7 Utilities/Release: Select MSVC runtime library via abstraction
Use the `CMAKE_MSVC_RUNTIME_LIBRARY` abstraction added by CMake 3.15
instead of hard-coding the `-MT` flag.
2019-08-23 10:55:59 -04:00
Brad King
ed54d87789 Configure CMake itself with policies through CMake 3.15
In particular, set `CMP0091` to `NEW` to enable the MSVC runtime library
abstraction so it can be set via `CMAKE_MSVC_RUNTIME_LIBRARY` in the
cache.
2019-08-23 10:55:58 -04:00
Brad King
329f0a64b0 Utilities/Release: Replace batch scripts with individual scripts
Provide a more granular per-platform workflow.
2019-07-11 10:24:28 -04:00
Brad King
9bf97363b0 Utilities/Release: Replace upload step with a "push" script
Replace the `upload_release.cmake` script with a `push.bash` script
that is more configurable from the command line and that does not
hard-code any destinations.  Instead of using `scp` to access
`cmake.org` directly, push the files atomically to a staging
directory from which another process will actually upload them.
2019-05-24 09:51:25 -04:00
Brad King
3a0ab3ba23 Utilities/Release: Teach upload script to compute version automatically
Read the version from `Source/CMakeVersion.cmake` instead of repeating it.
2019-05-24 08:04:11 -04:00
Brad King
9a34031081 Utilities/Release: Enable signing of Windows release binaries 2019-05-08 13:18:31 -04:00
mistersandman
18962f8f8f Utilities/Release: Link statically to QWindowsVistaStyle plugin
We now build with Qt 5.12.  This plugin is needed with Qt >= 5.10.

Fixes: #19147
Suggested-by: mistersandman on gitlab.kitware.com
2019-04-08 13:30:36 -04:00
Brad King
d7c4a8ab81 Merge topic 'wix-cmake-downgrade-fix'
7593bdf4e8 CMake: Fix WiX installer downgrades with versioned binaries

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3087
2019-03-13 10:08:03 -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
adba2945b3 Utilities/Release: Update to Qt 5.12 on Windows builds 2019-03-08 07:23:55 -05:00
Brad King
58426958ab Utilities/Release: Update for using Windows 10 SDK
In commit e903a9fc55 (Utilities/Release: Create a Windows 64-bit binary,
2016-03-16, v3.6.0-rc1~235^2~2) we added a `_USING_V110_SDK71_` macro to
tell the MSVC standard library headers they were using an older SDK.
The environment in which our Windows binaries are produced has been
updated to use a Windows 10 SDK now that we do not need to support
WinXP, so we can drop the definition.
2019-03-08 07:23:55 -05:00
Brad King
bf1c2a2593 CMake 3.14.0-rc1 version update 2019-02-06 10:08:35 -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
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
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
Brad King
830d4760db Utilities/Release: Build with gcc 8.2 on Linux
Also add a binutils-2.31 to CMAKE_PREFIX_PATH in the environment so that
tests that look for them with `find_program` can find a newer version.
This is needed for the build id support in readelf.
2018-09-25 16:53:11 -04:00
Brad King
bab868be13 Utilities/Release: Skip spurious ExternalData test for nightly binary
This test fails spuriously too often and prevents the nightly binary
from finishing.  Simply skip it for the nightly binary to allow it to
complete more regularly.
2018-09-19 10:59:21 -04:00
T.J. Corona
66f59bd7da cmake-gui: Update icons 2018-08-16 11:56:08 -04:00
Brad King
eb63a07eaa Utilities/Release: Explicitly enable ccmake on macOS and Linux
Since commit v3.12.0-rc1~325^2 (ccmake: Check for curses more robustly
before enabling, 2018-03-21) we may not enable ccmake by default when
using a non-system curses (e.g. the static curses we build on Linux for
our binaries).  Enable the option explicitly for our prebuilt binaries.
2018-07-02 11:36:15 -04:00
Brad King
af63c8bd61 CMake 3.12.0-rc1 version update 2018-06-05 11:43:10 -04:00
Brad King
86121ffd1c Utilities/Release: Update to openssl-1.1.0h
Update the prebuilt binary build configurations for machines where
we build our own OpenSSL library to use a newer version.
2018-05-31 11:24:41 -04:00
Jean-Christophe Fillion-Robin
52b1419040 Utilities/Release: Remove extra colon from release scripts
The type of the `BUILD_QtDialog` cache entry is `BOOL`, not `BOOL:`.
2018-04-03 14:11:38 -04:00
Brad King
51b287c40c CMake 3.11.0-rc1 version update 2018-02-05 11:16:50 -05:00
Brad King
b40d45cdb1 Utilities/Release: Update to openssl-1.1.0g
Update the prebuilt binary build configurations for machines where
we build our own OpenSSL library to use a newer version.

Now that we require pthreads for libuv anyway, we can use OpenSSL 1.1
along with its dependency on pthreads.
2017-11-14 09:43:03 -05:00
Brad King
78aeb30075 Utilities/Release: Update to openssl-1.0.2m
Update the prebuilt binary build configurations for machines where
we build our own OpenSSL library to use a newer version.
2017-11-14 09:36:07 -05:00
Brad King
313a565729 Utilities/Release: Build static executables on Windows
Switch to the MSVC static runtime library (and static UCRT).
Link Qt statically, including the Windows platform plugin.
Disable the Qt tests because they are incompatible with a
Qt using a static runtime library.
2017-11-14 07:26:36 -05:00
Brad King
a12830c2fd Utilities/Release: Remove unused setting in Linux build
CMake_INSTALL_DEPENDENCIES is not needed because we link both
Qt and the toolchain runtime library statically.
2017-11-14 07:26:36 -05:00
Brad King
05373ee1a2 CMake 3.10.0-rc1 version update 2017-10-05 09:55:23 -04:00