summaryrefslogtreecommitdiff
path: root/Utilities
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'filesystem-path-c++03-abi' into release-3.24Brad King2022-10-201-10/+6
|\ | | | | | | Merge-request: !7813
| * cm/filesystem: Fix crash with pre-C++11 std::string GNU ABI in C++17Brad King2022-10-201-10/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The `remove_filename` and `replace_extension` methods compute an offset between the whole path in a `std::string` and a part of a path in a `std::string_view`. This is done by subtracting their `.data()` pointers. However, C++17 adds a non-const `.data()` through which modification of the string is allowed. This means the copy-on-write implementation used by the pre-C++11 std::string GNU ABI must reallocate if the string has been copied. Our subtraction then computes an offset between two different allocations, which is undefined behavior. The workaround in commit b3ca4f9ad1 (cm/filesystem: Work around crash when compiled for CYGWIN/MSYS runtime, 2021-04-22, v3.21.0-rc1~271^2~2) avoided the problem by calling the non-const `.data()` to reallocate before constructing the `string_view`. Instead, explicitly call the const `.data()` method on the string, which does not reallocate. Fixes: #22090, #23328
| * Merge branch 'rel-macos-sign-notarize' into release-3.23Brad King2022-07-081-18/+25
| |\ | | | | | | | | | Merge-request: !7463
| * \ Merge topic 'backport-update-libarchive' into release-3.23Brad King2022-05-2444-827/+1807
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | e2fe1d17e6 libarchive: Update build within CMake after changes in 3.5.3 ac5e524763 libarchive: include archive_platform.h first in blake2s sources b93d8b1714 Merge branch 'upstream-LibArchive' into update-libarchive 9fd16c5b5b LibArchive 2022-02-08 (673c1eae) de38c89252 libarchive: Update script to get 3.5.3 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7294
* | \ \ Merge topic 'rel-macos-sign-notarize' into release-3.24Brad King2022-07-081-18/+25
|\ \ \ \ | | |_|/ | |/| | | | | | | | | | | | | | | | | | 432ae51467 Utilities/Release: Update macOS notarization script to use notarytool Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7463
| * | | Utilities/Release: Update macOS notarization script to use notarytoolBrad King2022-07-081-18/+25
| | |/ | |/| | | | | | | | | | `xcnotary` is no longer needed since `altool` has been deprecated in favor of `notarytool`, which has builtin support for waiting.
| * | libarchive: Update build within CMake after changes in 3.5.3Brad King2022-05-241-0/+2
| | |
| * | libarchive: include archive_platform.h first in blake2s sourcesBrad King2022-05-242-0/+4
| | | | | | | | | | | | | | | | | | This is the libarchive convention in all other `.c` sources. It ensures that the configured `_WIN32_WINNT` value is defined before including any system headers.
| * | Merge branch 'upstream-LibArchive' into update-libarchiveBrad King2022-05-2440-826/+1800
| | | | | | | | | | | | | | | * upstream-LibArchive: LibArchive 2022-02-08 (673c1eae)
| * | libarchive: Update script to get 3.5.3Brad King2022-05-241-1/+1
| | |
* | | Utilities/Release: Simplify script to build Qt 6.3.0 Windows binariesCristian Adam2022-06-172-135/+121
| | | | | | | | | | | | | | | | | | | | | | | | | | | Revise and simplify the script from commit d0c9225a7e (Utilities/Release: Add script to build Qt 6.3.0 Windows binaries, 2022-06-10, v3.24.0-rc1~4^2~5). For `cmake-gui` we only need QtBase. Also, convert to a `.cmake` script. Issue: #21902
* | | Merge topic 'update-kwiml' into release-3.24Brad King2022-06-141-1/+7
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 82eb512637 Merge branch 'upstream-KWIML' into update-kwiml 2a233bb754 KWIML 2022-06-14 (7b9bd7fe) Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !7356
| * | | Merge branch 'upstream-KWIML' into update-kwimlBrad King2022-06-141-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | # By KWIML Upstream * upstream-KWIML: KWIML 2022-06-14 (7b9bd7fe)
* | | | Utilities/Release: Add windows-arm64 package to file tableBrad King2022-06-132-1/+13
| | | |
* | | | Utilities/Release: Add script to build Qt 6.3.0 Windows binariesBrad King2022-06-131-0/+135
|/ / / | | | | | | | | | These may be used to build CMake binaries for Windows.
* | | zlib: Mangle symbols to avoid conflict with external transitive dependenciesBrad King2022-06-115-0/+155
| | | | | | | | | | | | | | | | | | Mangling was dropped by commit fc22ac115e (zlib: Drop old sources to make room for a fresh import, 2022-05-26). Restore it for the new import of upstream zlib.
* | | Utilities/Release: Drop unnecessary system API definitions for LinuxBrad King2022-06-062-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We previously defined `_POSIX_C_SOURCE` and friends while building binary packages in order to minimize the version of glibc needed at runtime. The definitions were added by commit facc240a45 (Utilities/Release: Add docker specs to build and test Linux binaries, 2019-08-23, v3.16.0-rc1~184^2~2), but came from older packaging scripts that were removed by commit 689fdbfc61 (Utilities/Release: Drop linux64 script in favor of docker build, 2019-08-27, v3.16.0-rc1~184^2). Those older scripts were meant for use in a hand-maintained environment. Now that we use base images of old CentOS versions to establish the build environment, our builds are already limited to older glibc versions (glibc 2.12 from centos6 on x86_64, and 2.17 from centos7 on aarch64). Our old system API definitions no longer affect the glibc version required by the binaries. Drop them to avoid potential conflicts with system API definitions added by changes like commit f034b0f663 (CMake compilation: do not use compiler extensions, 2020-03-14, v3.18.0-rc1~494^2) and commit c7c3e39e4f (Utilities: Activate POSIX APIs even without compiler extensions, 2022-06-02).
* | | Utilities: Activate POSIX APIs even without compiler extensionsBrad King2022-06-044-0/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Compile some third-party libraries with preprocessor definitions that activate POSIX APIs even when compiler extensions are not enabled. We already do this in libuv, inherited from the upstream buildsystem. This extends commit f034b0f663 (CMake compilation: do not use compiler extensions, 2020-03-14, v3.18.0-rc1~494^2). Issue: #20454
* | | libarchive: Remove a system preprocessor macro that conflicts with a local varBrad King2022-06-041-0/+3
| | | | | | | | | | | | | | | | | | On SunOS i386, the system headers sometimes define macro names corresponding to register names, short and with no prefix. Undefine one that conflicts with our code.
* | | librhash: Explicitly enable large file support on 32-bit targetsBrad King2022-06-041-0/+1
| | | | | | | | | | | | | | | `_LARGEFILE_SOURCE` is needed at least on SunOS i386 if compiler extensions are not enabled.
* | | Utilities/Release: Drop docker specs for Windows binariesBrad King2022-06-0115-454/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit 4c7c66dcf5 (gitlab-ci: Add jobs to make Windows x86_64 and i386 packages, 2022-05-19), we use CI jobs to produce Windows binaries. Revert commit ff929badb3 (Utilities/Release: Add docker specs to build and test Windows binaries, 2020-05-05, v3.18.0-rc1~203^2~1). The filesystem inside Windows containers is too slow to support parallel builds efficiently.
* | | Utilities/Release: Document Linux aarch64 packaging supportBrad King2022-06-011-0/+1
| | | | | | | | | | | | | | | This was accidentally left out of commit e14fb01c41 (Utilities/Release: Add docker specs for Linux aarch64 binaries, 2020-11-25, v3.19.3~8^2~2).
* | | Merge topic 'update-zlib'Brad King2022-05-3130-3647/+16074
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | e6e7b615af zlib: Update build within CMake for 1.2.12 152b4f8920 Merge branch 'upstream-zlib' into update-zlib ffdaa419d7 zlib 2022-03-27 (21767c65) 933293dbc2 zlib: Update script to get zlib 1.2.12 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7302
| * | | zlib: Update build within CMake for 1.2.12Brad King2022-05-281-1/+4
| | | |
| * | | Merge branch 'upstream-zlib' into update-zlibBrad King2022-05-2828-3642/+16062
| | | | | | | | | | | | | | | | | | | | * upstream-zlib: zlib 2022-03-27 (21767c65)
| * | | zlib: Update script to get zlib 1.2.12Brad King2022-05-261-4/+8
| | | |
* | | | Merge branch 'upstream-KWIML' into update-kwimlBrad King2022-05-271-1/+1
|/ / / | | | | | | | | | | | | | | | # By KWIML Upstream * upstream-KWIML: KWIML 2022-05-27 (47070837)
* | | zlib: Add CMakeLists.txt for build within CMakeBrad King2022-05-261-0/+25
| | |
* | | zlib: Use unistd.h on all non-Windows platformsBrad King2022-05-261-1/+1
| | | | | | | | | | | | | | | Replace the `HAVE_UNISTD_H` change from commit 3edcd70754 (ENH: Update zlib to 1.2.3, 2007-09-11, v2.6.0~1135) with simpler logic.
* | | zlib: Suppress some MSVC warningsBrad King2022-05-261-0/+6
| | | | | | | | | | | | | | | | | | Restore the warning suppression code added by commit 0e4571d25c (ENH: Initial import from VTK, 2005-01-26, v2.4.0~2414) and commit 3edcd70754 (ENH: Update zlib to 1.2.3, 2007-09-11, v2.6.0~1135).
* | | zlib: Add initialization to satisfy valgrindBrad King2022-05-261-0/+7
| | | | | | | | | | | | | | | | | | | | | Restore the change from commit cf133ff6b3 (Fix uninitialized variable access in zlib, 2009-11-18, v2.8.2~705). Their web site claims it does no harm ( https://www.zlib.net/zlib_faq.html#faq36), but fixing it this way eliminates the diagnostic.
* | | zlib: Fix typo in commentBrad King2022-05-261-1/+1
| | | | | | | | | | | | | | | Restore the fix from commit bf019d765d (Fix spelling and typos (non-binary), 2012-11-07, v2.8.12~414^2~7).
* | | Merge branch 'upstream-zlib' into update-zlibBrad King2022-05-2624-0/+10308
| | | | | | | | | | | | | | | | | | # By zlib upstream * upstream-zlib: zlib 2011-09-09 (abf180a0)
* | | zlib: add script to import zlib 1.2.3 from upstreamBrad King2022-05-261-0/+51
| | | | | | | | | | | | | | | CMake has vendored this version for a long time. Import it using our modern approach.
* | | zlib: Drop old sources to make room for a fresh importBrad King2022-05-2634-11842/+0
| | |
* | | Utilities/Release: Add script to sign and package Windows binariesBrad King2022-05-191-0/+29
| | | | | | | | | | | | | | | | | | Windows binaries for official releases on `cmake.org` are signed manually by a maintainer with a suitable signing certificate. Add a script to sign the binaries, run CPack, and sign the installer.
* | | Utilities/Release: Add script to build Qt 5.12.1 Windows binariesBrad King2022-05-193-0/+150
| | | | | | | | | | | | | | | | | | | | | | | | These may be used to build CMake binaries for Windows `x86_64` and `i386`. Qt 5.12.1 supports Windows 7. Port the logic from `Utilities/Release/win/x86/deps/Dockerfile` and its helper scripts.
* | | Merge branch 'upstream-curl' into update-curlBrad King2022-05-1626-158/+290
| | | | | | | | | | | | | | | * upstream-curl: curl 2022-05-11 (462196e6)
* | | curl: Update script to get curl 7.83.1Brad King2022-05-161-1/+1
| | |
* | | stl containers: enhance compatibility with C++14, C++17 and C++20Marc Chevrier2022-05-0713-189/+338
| | | | | | | | | | | | | | | | | | * Ensure various functions working with containers are available through all headers as specified by the standard. * Add C++20 std::ssize() function.
* | | Merge topic 'update-curl'Brad King2022-05-03147-4573/+4738
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 30aba1ce8c Merge branch 'upstream-curl' into update-curl 2a9bc9ebf0 curl 2022-04-27 (1669b17d) 5239672e64 curl: Update script to get curl 7.83.0 Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !7219
| * | | Merge branch 'upstream-curl' into update-curlBrad King2022-04-28146-4572/+4737
| | | | | | | | | | | | | | | | | | | | * upstream-curl: curl 2022-04-27 (1669b17d)
| * | | curl: Update script to get curl 7.83.0Brad King2022-04-281-1/+1
| | | |
* | | | cm::enum_set: fix compilation warningMarc Chevrier2022-04-291-1/+5
| | | |
* | | | Merge topic 'doc-cmake.org-tutorial-archive'Brad King2022-04-292-6/+54
|\ \ \ \ | |/ / / |/| | / | | |/ | |/| | | | | | | | | | | | | 4cb616fed6 Tutorial: Provide a source archive when published on cmake.org 37fb70591e Utilities/Sphinx: Add variables listing pre-sphinx commands eb7d913a21 Utilities/Sphinx: Clarify names of variables listing post-sphinx commands Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7215
| * | Tutorial: Provide a source archive when published on cmake.orgBrad King2022-04-282-0/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | Provide readers following the tutorial on `cmake.org` a direct link to download the tutorial's source examples. Previously readers had to fetch the CMake source tree separately and look for the tutorial source examples inside it. Fixes: #22475
| * | Utilities/Sphinx: Add variables listing pre-sphinx commandsBrad King2022-04-271-0/+2
| | |
| * | Utilities/Sphinx: Clarify names of variables listing post-sphinx commandsBrad King2022-04-271-6/+6
| | |
| * | Merge branch 'doc-qhelpgenerator' into release-3.23Brad King2022-04-085-10/+10
| |\ \ | | |/ | | | | | | Merge-request: !7150
| * | Merge topic 'ci-cmake.org-help' into release-3.23Brad King2022-04-061-0/+6
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | b691906d27 gitlab-ci: Build qthelp-format release documentation for cmake.org 1ceec19c20 gitlab-ci: Add objects.inv to cmake.org html documentation Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7146