Commit Graph

33685 Commits

Author SHA1 Message Date
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
Brad King af7ebf8ad3 librhash: Install COPYING file with CMake documentation
When we install using the bundled librhash source, notify users of its
license terms.
2016-11-10 08:26:55 -05:00
Brad King bb01f20e99 librhash: Disable warnings to avoid changing 3rd party code
Add '-w' or equivalent flag on compilers supporting it.
Tell MSVC to use its lowest warning level inside librhash sources.
2016-11-10 08:26:55 -05:00
Brad King 31bb727f3b librhash: Build the library within CMake
Update `ustd.h` to include KWSys Large File Support configuration so
that consistent stream libraries are used (on AIX with XL).

Add a `cm_rhash.h` header to include the CMake-provided copy of the
`rhash.h` header from CMake sources.
2016-11-10 08:26:54 -05:00
Brad King 53048afa8d librhash: Remove source fragments not needed for CMake
We only need a subset of the hash algorithms supported by librhash.
Add preprocessor conditionals to remove source fragments that we do
not need.  Write an alternative algorithm enumeration that matches
the indexing on our reduced array.

Also remove a few fragments outright.
2016-11-10 08:26:54 -05:00
Brad King 5cb1b345d9 Merge branch 'upstream-librhash' into import-librhash
* upstream-librhash:
  librhash 2016-11-01 (d839a1a8)
2016-11-03 13:45:29 -04:00
librhash upstream 1367fccc33 librhash 2016-11-01 (d839a1a8)
Code extracted from:

    https://github.com/rhash/rhash.git

at commit d839a1a853f22b8cfd26c2006ee5481739ea1114 (master).
2016-11-03 13:45:28 -04:00
Brad King 798b0adc62 Add script to update librhash from upstream 2016-11-03 13:45:22 -04:00
Brad King 60d80bca4a Merge branch 'release-3.6' 2016-11-03 10:42:24 -04:00
Brad King dec0cfcef0 Merge branch 'release' 2016-11-03 08:58:27 -04:00
Brad King a12e148b8a Merge branch 'release-3.6' 2016-11-03 08:56:28 -04:00
Brad King acc2e03d79 Merge topic 'FindHDF5-restore-default-C'
ff3ccc1f FindHDF5: Restore pre-3.6 behavior of finding only C by default
2016-11-03 08:54:43 -04:00
Brad King 3dd99758d1 Merge topic 'remove-utf8-option'
baead1e2 Encoding: Remove option to use ANSI code page internally
2016-11-03 08:54:37 -04:00
Brad King e106a6eafb Merge topic 'compile-features-for-language-standards'
9a8d758c Help: Document language standard meta-features
df252db1 Features: Test cycle diagnostic with language standard meta-feature
6d5fb0e0 Features: Test feature propagation with language standard meta-feature
a34b98a8 WCDH: Ignore language standard meta-features
b0996a3f Features: Add meta-features requesting awareness of a particular standard
8b6cc251 Features: Centralize per-compiler recording macros
2d23f7b2 Features: Do not record features on MSVC < 2010
2016-11-03 08:54:33 -04:00
Brad King 90e09fb958 Merge topic 'intel-compile-features-windows'
b902f2a9 Features: Fix Intel cxx_attributes existence condition
2016-11-03 08:54:28 -04:00
Brad King b902f2a98a Features: Fix Intel cxx_attributes existence condition
This condition needs to follow the same pattern added in note `[1]` by
commit a5a3642f (Features: Port Intel CXX features to test macros where
possible, 2016-10-26).  It was accidentally left out of that commit.
2016-11-03 08:38:23 -04:00
Kitware Robot ffe78961ad CMake Nightly Date Stamp 2016-11-03 00:01:04 -04:00
Brad King 9c507c13a0 CMake 3.6.3 v3.6.3 2016-11-02 11:46:41 -04:00
Brad King 967e9aafda Merge branch 'FindHDF5-restore-default-C' into release-3.6 2016-11-02 11:45:37 -04:00
Brad King de25d988bc Merge branch 'qtdialog-lib-paths' into release-3.6 2016-11-02 11:45:33 -04:00
Clinton Stimpson baead1e2a8 Encoding: Remove option to use ANSI code page internally
The switch to use UTF-8 encoding has been defaulted to on for quite some
time since commit v3.2.0-rc1~116^2 (Encoding: Switch to use UTF-8
internally by default on Windows, 2014-12-26).
2016-11-02 08:48:34 -06:00
Brad King 9a8d758c3a Help: Document language standard meta-features 2016-11-02 10:01:24 -04:00
Brad King df252db15a Features: Test cycle diagnostic with language standard meta-feature
The `cxx_static_assert` feature may be available in C++ 98 mode of some
compilers or not available at all in others.  Intstead of using an
individual feature to test cyclic requirement of a feature requiring
C++ 11, use the `std_cxx_11` meta-feature that has exactly this meaning.
2016-11-02 10:01:24 -04:00
Brad King 6d5fb0e0d0 Features: Test feature propagation with language standard meta-feature
The `cxx_static_assert` feature may be available in C++ 98 mode of some
compilers or not available at all in others.  Intstead of using an
individual feature to test propagation of a feature requiring C++ 11,
use the `std_cxx_11` meta-feature that has exactly this meaning.
2016-11-02 10:01:23 -04:00
Brad King a34b98a834 WCDH: Ignore language standard meta-features
The `{c,cxx}_std_*` features are meant for use with
`target_compile_features` but do not make sense for use with
WriteCompilerDetectionHeader.  Filter them out of any requested list.
2016-11-02 10:01:23 -04:00
Brad King b0996a3fa2 Features: Add meta-features requesting awareness of a particular standard
A common use case of `target_compile_features` is simply to specify that
the compiler should be run in a mode that is aware of e.g. C++11.  Some
projects simply specify a particular C++11-only feature to request this.
Provide a first-class way to do this by naming features after the
corresponding language standard.  Record them as always available in the
corresponding standard level so that requesting them always ensures that
standard (or higher) is used.
2016-11-02 10:00:28 -04:00
Brad King 8b6cc2518a Features: Centralize per-compiler recording macros
Simplify and de-duplicate per-compiler feature recording macros and
convert to a centralized per-language macro.
2016-11-02 09:51:48 -04:00
Brad King 2d23f7b206 Features: Do not record features on MSVC < 2010
We have no feature tests for versions of VS older than 2010, so do
not even call `record_compiler_features` for such versions.  This
is consistent with other compilers where we call this macro only
for versions for which we have recorded features.
2016-11-02 09:42:18 -04:00
Brad King ab2ae4823c Merge branch 'release' 2016-11-02 09:13:25 -04:00
Brad King 5f7f0ab517 Merge branch 'FindHDF5-restore-default-C' into release 2016-11-02 09:07:53 -04:00
Brad King ff3ccc1f23 FindHDF5: Restore pre-3.6 behavior of finding only C by default
Refactoring in commit v3.6.0-rc1~72^2 (HDF5: Rework component searching
to correctly find HL for all bindings, 2016-05-12) changed the default
behavior from finding only the C bindings to finding everything for the
enabled languages.  Restore the original behavior for compatibility and
because many projects need only the C bindings.

Closes: #16397
2016-11-02 09:06:56 -04:00
Brad King 316206e267 Merge topic 'doc-cmake-qt-fixes'
1c52e651 Help: Update example Qt 5 find_package call to add missing component
4c802a32 Help: Update example Qt 5 find_package call to use COMPONENTS
2016-11-02 08:54:47 -04:00
Brad King cea26782c9 Merge topic 'doc-cmake-qt-missing-dbus'
13bc31aa Help: Update example Qt 5 find_package call to add missing component
2016-11-02 08:54:26 -04:00
Brad King b5ad094e3b Merge topic 'cpack-doc-typos'
4ab3b0c4 CPackRPM: Fix incorrect variable name in documentation
e6460e7d CPackDeb: Fix incorrect variable name in documentation
2016-11-02 08:54:23 -04:00
Brad King c555eca9ba Merge branch 'doc-cmake-qt-fixes' into release 2016-11-02 08:52:23 -04:00
Thiago M. de C. Marques 1c52e6511f Help: Update example Qt 5 find_package call to add missing component
Running CMake on it caused the following error:

    error: Target "publisher" links to target "Qt5::DBus" but the target
    was not found.  Perhaps a find_package() call is missing for an
    IMPORTED target, or an ALIAS target is missing?

Add the missing DBus component.
2016-11-02 08:51:57 -04:00
Marcus D. Hanwell 4c802a326b Help: Update example Qt 5 find_package call to use COMPONENTS 2016-11-02 08:51:53 -04:00
Thiago M. de C. Marques 13bc31aab5 Help: Update example Qt 5 find_package call to add missing component
Running CMake on it caused the following error:

    error: Target "publisher" links to target "Qt5::DBus" but the target
    was not found.  Perhaps a find_package() call is missing for an
    IMPORTED target, or an ALIAS target is missing?

Add the missing DBus component.
2016-11-02 08:50:03 -04:00
Brad King 2857ca89a2 Merge branch 'cpack-doc-typos' into release 2016-11-02 08:44:22 -04:00
Brad King 503766fa0e Merge branch 'fix-macos-sysroot' into release 2016-11-02 08:44:16 -04:00
Alex Turbov 4ab3b0c462 CPackRPM: Fix incorrect variable name in documentation
`CPACK_RPM_COMPONENT_INSTALL` is the correct variable to set to enable
component packaging.  `CPACK_RPM_PACKAGE_COMPONENT` is just set to a
component name when CPack calls corresponding installer.
2016-11-02 08:42:56 -04:00
Alex Turbov e6460e7d40 CPackDeb: Fix incorrect variable name in documentation
`CPACK_DEB_COMPONENT_INSTALL` is the correct variable to set to enable
component packaging.  `CPACK_DEB_PACKAGE_COMPONENT` is just set to a
component name when CPack calls corresponding installer.
2016-11-02 08:42:44 -04:00
Brad King f6b93fbf3a Merge topic 'fix_compiler_arg1'
cfbf857b cmRulePlaceholderExpander: Fix CMAKE_<LANG>_COMPILER_ARG1 replacement
2016-11-02 08:35:29 -04:00
Brad King 6a65f0534b Merge topic 'fix-macos-sysroot'
93504190 Darwin: Remove deployment target version check
542d52f9 Revert "Xcode: Convert maybe unversioned OSX sysroot into versioned SDK path"
2016-11-02 08:35:26 -04:00
Brad King 93f025118d Merge topic 'UseSWIG-SWIG_OUTFILE_DIR'
8444b984 UseSWIG: Add option to specify swig output file directory
2016-11-02 08:35:23 -04:00
Kitware Robot ff957bc1e1 CMake Nightly Date Stamp 2016-11-02 00:01:04 -04:00
Brad King 713424ad20 Merge topic 'find-qt5-docs'
ff11989c Help: Update example Qt 5 find_package call to use COMPONENTS
2016-11-01 14:10:05 -04:00