Commit Graph

1141 Commits

Author SHA1 Message Date
Brad King d23f4414c4 Merge topic 'clang-format-attrs'
d5f39a56 clang-format.bash: Use Git attributes to mark files for formatting
f6986ee4 Define a custom Git attribute to mark sources using our C style
2256c3a7 Define a custom Git attribute to mark source files as generated
2017-02-23 07:35:32 -05:00
Brad King d5f39a56a4 clang-format.bash: Use Git attributes to mark files for formatting 2017-02-22 16:59:26 -05:00
Brad King f45e3b9509 Merge branch 'backport-clang-format-cuda' into release 2017-02-14 10:22:43 -05:00
Brad King fa5188d0ed Merge branch 'backport-clang-format-cuda' into clang-format-cuda 2017-02-14 10:21:22 -05:00
Brad King 592e3d2f96 clang-format.bash: Format CUDA source files too
Add `.clang-format` configuration files for Cuda test directories that
use `Standard: Cpp11`.  Otherwise clang-format splits the triple angle
brackets used for CUDA kernels.
2017-02-14 10:20:23 -05:00
Brad King bb72fff2f0 Merge topic 'update-curl'
d4da4755 Help: Add notes for topic 'update-curl'
14c77153 Tests: Fix `file://` URLs given to curl
73ae6700 curl: Fix passing _WINSOCKAPI_ macro to compiler
1df9d5f9 Merge branch 'upstream-curl' into update-curl
4cc2908f curl 2016-12-22 (44b9b4d4)
f4a3290a curl: Update script to get curl 7.52.1
2017-02-10 13:36:11 -05:00
Brad King 46c6489850 Merge topic 'sphinx-1.4'
30abf145 Help: Fix cmake code block warnings produced by Sphinx 1.4
97917900 Utilities/Sphinx: Port qthelp css workaround to Sphinx 1.4
971384c2 Utilities/Sphinx: Port cmake extension to Sphinx 1.4
2017-02-10 11:32:21 -05:00
Brad King 6cbad490c2 Merge branch 'sphinx-1.4' into release 2017-02-10 11:32:04 -05:00
Brad King 97917900d1 Utilities/Sphinx: Port qthelp css workaround to Sphinx 1.4
The `default.css` static content is no longer placed in the qthelp
`_static` directory.  If it does not exist, skip over it and insert
the content of `basic.css` directly into `cmake.css`.
2017-02-10 10:43:29 -05:00
Gregor Jasny 971384c287 Utilities/Sphinx: Port cmake extension to Sphinx 1.4
Sphinx 1.4 introduced a breaking change to `indexnode` by changing
the length of a tuple.  Teach our extension to produce a tuple of
the proper length for the version of Sphinx in use.

This gets rid of the "4 column based index found" warning.
2017-02-10 10:24:25 -05:00
Brad King 82e5ab9e14 Utilities/Sphinx: Add option for cmake.org version switch to html
Leave the option undocumented since it is not for general use.  We can
simply pass it through `SPHINX_FLAGS` when building for publication on
`cmake.org`.
2017-02-08 08:19:10 -05:00
Brad King 73ae67006c curl: Fix passing _WINSOCKAPI_ macro to compiler
Define `_WINSOCKAPI_` blank rather than to 1 in order to match the
value used by Microsoft's winsock header files.

Backported from upstream curl commit 192466e0 (cmake: Fix passing
_WINSOCKAPI_ macro to compiler, 2017-01-09).

Fixes: #16545
2017-02-07 11:39:49 -05:00
Brad King 1df9d5f919 Merge branch 'upstream-curl' into update-curl
* upstream-curl:
  curl 2016-12-22 (44b9b4d4)
2017-02-07 11:38:00 -05:00
Brad King f4a3290ae7 curl: Update script to get curl 7.52.1 2017-02-07 11:36:59 -05:00
Brad King 566d20771f CMake 3.8.0-rc1 version update 2017-02-06 11:27:03 -05:00
Brad King 773df0e2d7 Add pre-commit hook to check whether SetupForDevelopment must re-run
Add a version number to the `SetupForDevelopment.sh` script and use
a pre-commit hook to check when it changes.
2017-01-31 11:16:10 -05:00
Brad King 050bb41ca7 Tell Git not to export the GitSetup directory
The `Utilities/GitSetup` directory is useful only in Git work trees
and so does not need to be distributed with source tarballs.
2017-01-30 16:56:31 -05:00
Brad King d6108c87af GitSetup: Tell Git not to export .gitattributes
GitSetup upstream added an attribute to export `.gitattributes` so that
importing snapshots into the sources of other projects would bring along
the attributes.  However, we don't want to export them from CMake.  Drop
`.gitattributes` entries not relevant to CMake.
2017-01-30 16:53:14 -05:00
Brad King 3642d657b1 Merge branch 'upstream-GitSetup' into developer-setup
* upstream-GitSetup:
  GitSetup 2016-12-13 (cd5ada6d)
2017-01-30 16:45:48 -05:00
Brad King a2d393d648 Add script to update GitSetup from upstream 2017-01-30 16:40:21 -05:00
Brad King 88a816c6b9 Merge topic 'vs15-detect-from-installer'
3a97a371 VS: Port Visual Studio Setup third-party header to older VS versions
c93e85d8 VS: Use Visual Studio Installer to locate VS 2017
18c8278b VS: Add helper class to interact with Visual Studio Installer
d47bda00 VS: Fix VS 2017 Windows Store toolset selection
efdfc26e VS: Drop check for VS 15 Express Edition
ad5b702c VS: Port Visual Studio Setup third-party header to MinGW
def7395f VS: Add Visual Studio Setup third-party header
2017-01-12 10:20:48 -05:00
Brad King 3a97a3713a VS: Port Visual Studio Setup third-party header to older VS versions 2017-01-11 09:45:05 -05:00
Eric Berge b7f0b1240f libuv requires _XOPEN_SOURCE 600 on Solaris 11
This avoid build errors from the
    /usr/include/sys/feature_tests.h
include file which disallows setting XOpen
versions less than 6 when in C99 mode.
2016-12-21 22:11:28 -06:00
Iyyappa Murugandi ad5b702c09 VS: Port Visual Studio Setup third-party header to MinGW
The `Setup.Configuration.h` which is released by Microsoft is specific
to MSVC.  Update it to compile with non-MS toolchains like MinGW.
2016-12-16 09:58:31 -05:00
Iyyappa Murugandi def7395f62 VS: Add Visual Studio Setup third-party header
The Visual Studio Setup team releases a `Setup.Configuration.h` header
under the MIT License for use by external applications to interact with
the Visual Studio Installer tool [1].  Import it into our source tree
for use by CMake.

[1] https://github.com/microsoft/vs-setup-samples
2016-12-16 09:43:10 -05:00
Brad King 2413075765 update-kwsys: Update repository URL
KWSys is now hosted on Kitware's GitLab instance.
2016-12-14 11:16:47 -05:00
Brad King 062645ca67 Merge topic 'update-kwsys-upstream-link'
23a35edf pre-commit: Update KWSys rejection message for new upstream location
2016-12-14 09:51:56 -05:00
Brad King 23a35edf4d pre-commit: Update KWSys rejection message for new upstream location 2016-12-13 14:40:39 -05:00
Brad King 0290bfc35d Merge topic 'update-curl'
df7fa47c curl: Disable symbol hiding logic in build for CMake
f8a1ba20 Merge branch 'upstream-curl' into update-curl
93cc249f curl 2016-11-02 (3c561c65)
25d7b1ca curl: Update script to get curl 7.51.0
2016-12-06 09:26:20 -05:00
Brad King df7fa47c1b curl: Disable symbol hiding logic in build for CMake
We already disable the code using `HIDES_CURL_PRIVATE_SYMBOLS`, so skip
the code to set it too, thus avoiding unnecessary `message()` calls.
2016-12-06 08:18:33 -05:00
Brad King f8a1ba202f Merge branch 'upstream-curl' into update-curl
* upstream-curl:
  curl 2016-11-02 (3c561c65)
2016-12-05 11:50:43 -05:00
Brad King 25d7b1ca9d curl: Update script to get curl 7.51.0 2016-12-05 11:39:12 -05:00
Nils Gladitz 1b91e010bc Utilities/Release: Store WiX CMake install location in Windows registry 2016-12-05 16:05:19 +01:00
Brad King a0af10e423 Merge topic 'librhash-left-shift-unsigned'
9e07ffa4 librhash: Avoid signed left-shift overflow in sha256
2016-11-29 08:58:59 -05:00
Brad King dd4e25a5a6 Merge topic 'libarchive-openssl-1.1'
6f23daea libarchive: Add support for building with OpenSSL 1.1
7d433206 libarchive: Add headers to adapt between OpenSSL 1.1 and older versions
2016-11-29 08:58:55 -05:00
Brad King 9e07ffa4e4 librhash: Avoid signed left-shift overflow in sha256
Fix `rhash_sha256_final` to use unsigned integers for left shifting to
avoid the possibility of undefined overflow behavior.
2016-11-29 08:30:25 -05:00
Brad King 6f23daea43 libarchive: Add support for building with OpenSSL 1.1
OpenSSL 1.1 made some CTX structures opaque.  Port our code to use the
structures only through pointers via OpenSSL 1.1 APIs.  Use our adaption
layer to make this work with OpenSSL 1.0 and below.

Patch-by: Tomas Mraz <tmraz@redhat.com>
Patch-from: https://bugzilla.redhat.com/1383744
2016-11-28 14:55:42 -05:00
Brad King 7d433206cf libarchive: Add headers to adapt between OpenSSL 1.1 and older versions
Add private forwarding headers for `openssl/{evp,hmac}.h` to give us a
central place to add adaptation code to work across multiple
incompatible OpenSSL versions.  Provide compatibility implementations of
some OpenSSL 1.1 APIs when using older OpenSSL versions.
2016-11-28 14:55:42 -05:00
Brad King 2dafeacb75 Utilities/Release: Update to openssl-1.0.2j
Update the prebuilt binary build configurations for machines where
we build our own OpenSSL library to use a newer version.
2016-11-17 16:12:36 -05:00
Brad King 7a79f7e3c1 librhash: Activate SHA-3 implementation 2016-11-10 15:48:41 -05:00
Brad King 87584b5e9d Merge branch 'upstream-librhash' into add-SHA-3
* upstream-librhash:
  librhash 2016-11-06 (de79828d)
2016-11-10 15:42:32 -05:00
Brad King c50c32a30f librhash: Update import script to add SHA-3 implementation 2016-11-10 15:42:13 -05:00
Brad King de53eb18ab Merge topic 'import-librhash'
cd8a57ae Add option to build CMake against a system librhash
71180fc8 FindLibRHash: Add module to find the librhash package
3216e94c Remove unused cm_sha2 infrastructure
5420278d Port hash computation to cmCryptoHash
9a596b33 cmCryptoHash: Re-implement in terms of librhash
47f91a61 cmCryptoHash: Avoid using subclasses at client sites
d0ff3e70 librhash: Port to KWIML for ABI and integer type information
465a85fb librhash: Avoid signed left-shift overflow
fc2cb74f librhash: Implement bswap_32 as a function even in strict C90 mode
0bd333bc librhash: Implement bswap_64 even in strict C90 mode
7189d62c librhash: Use __builtin_bswap{32,64} on Clang
af7ebf8a librhash: Install COPYING file with CMake documentation
bb01f20e librhash: Disable warnings to avoid changing 3rd party code
31bb727f librhash: Build the library within CMake
53048afa librhash: Remove source fragments not needed for CMake
5cb1b345 Merge branch 'upstream-librhash' into import-librhash
...
2016-11-10 08:34:28 -05:00
Brad King cd8a57ae9b Add option to build CMake against a system librhash
Create a CMAKE_USE_SYSTEM_LIBRHASH option.
2016-11-10 08:29:38 -05:00
Brad King 3216e94cef Remove unused cm_sha2 infrastructure
All clients of `cm_sha2` have been ported to `cmCryptoHash`, which now
uses librhash internally.
2016-11-10 08:29:38 -05:00
Brad King d0ff3e701c librhash: Port to KWIML for ABI and integer type information 2016-11-10 08:29:37 -05:00
Brad King 465a85fb46 librhash: Avoid signed left-shift overflow
Fix `rhash_md5_final` to use unsigned integers for left shifting to
avoid the possibility of undefined overflow behavior.
2016-11-10 08:29:36 -05:00
Brad King fc2cb74fee librhash: Implement bswap_32 as a function even in strict C90 mode
We cannot fall back to the macro implementation because some call sites
may call it with an argument like `*ptr++` that has side effects.
2016-11-10 08:29:36 -05:00
Brad King 0bd333bc2e librhash: Implement bswap_64 even in strict C90 mode 2016-11-10 08:29:36 -05:00
Brad King 7189d62c32 librhash: Use __builtin_bswap{32,64} on Clang 2016-11-10 08:28:57 -05:00