summaryrefslogtreecommitdiff
path: root/Utilities/cmlibrhash
Commit message (Collapse)AuthorAgeFilesLines
* 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: Suppress warnings in third-party code with IBMClangAaron Liu2022-01-271-1/+1
|
* LCC: Add dedicated support for MCST LCC compilermakise-homura2021-10-151-1/+1
| | | | | | | | | | | | | | | | | | | | | Divert LCC compiler as a new one, instead of treating it as GNU. Since old times, Elbrus C/C++/Fortran Compiler (LCC) by MCST has been passing checks for GNU compilers, so it has been identified as GNU. Now, with intent of seriously upstreaming its support, it has been added as a separate LCC compiler, and its version displays not a supported GCC version, but LCC version itself (e.g. LCC 1.25.19 instead of GNU 7.3.0). This commit adds its support for detection, and also converts basically every check like 'is this compiler GNU?' to 'is this compiler GNU or LCC?'. The only places where this check is untouched, is where it regards other platforms where LCC is unavailable (primarily non-Linux), and where it REALLY differs from GNU compiler. Note: this transition may break software that are already ported to Elbrus, but hardly relies that LCC will be detected as GNU; still such software is not known.
* Utilities: Suppress warnings in third-party code with NVHPCBrad King2021-04-201-1/+1
|
* Utilities: Suppress warnings in third-party code when using IntelLLVMBrad King2021-01-281-1/+1
|
* Refactoring: Third-parties public headers are under cm3p prefixMarc Chevrier2020-05-072-2/+2
| | | | Fixes: #20666
* librhash: Fix -Wdocumentation warning about @param nameBrad King2020-03-031-1/+1
|
* librhash: Update build within CMake for rhash 1.3.9Brad King2020-03-021-1/+1
|
* Merge branch 'upstream-librhash' into update-librhashBrad King2020-03-0222-657/+957
| | | | | * upstream-librhash: librhash 2019-12-14 (75716b45)
* Utilities: Suppress warnings in third-party code when using XLClangBrad King2019-02-251-1/+1
|
* Remove now-unused code once used for MIPSpro on IRIXBrad King2019-02-211-1/+1
| | | | | | In commit beb991110d (Remove now-unused code once used on IRIX, 2019-01-11, v3.14.0-rc1~167^2) we removed remnants of IRIX support. Also remove remnants of MIPSpro compiler support.
* librhash: Avoid incorrect int8_t definition with PGI on Linux ppc64leBrad King2018-08-091-0/+2
| | | | | `sys/types.h` defines `int8_t` incorrectly as `char` which is unsigned. Adjust ordering so `inttypes.h` defines it as `signed char` first.
* Merge topic 'librhash-left-shift-unsigned'Brad King2016-11-291-2/+2
|\ | | | | | | | | 9e07ffa4 librhash: Avoid signed left-shift overflow in sha256
| * librhash: Avoid signed left-shift overflow in sha256Brad King2016-11-291-2/+2
| | | | | | | | | | Fix `rhash_sha256_final` to use unsigned integers for left shifting to avoid the possibility of undefined overflow behavior.
* | librhash: Activate SHA-3 implementationBrad King2016-11-103-5/+15
| |
* | Merge branch 'upstream-librhash' into add-SHA-3Brad King2016-11-103-1/+411
|/ | | | | * upstream-librhash: librhash 2016-11-06 (de79828d)
* librhash: Port to KWIML for ABI and integer type informationBrad King2016-11-102-40/+28
|
* librhash: Avoid signed left-shift overflowBrad King2016-11-101-2/+2
| | | | | Fix `rhash_md5_final` to use unsigned integers for left shifting to avoid the possibility of undefined overflow behavior.
* librhash: Implement bswap_32 as a function even in strict C90 modeBrad King2016-11-101-5/+2
| | | | | We cannot fall back to the macro implementation because some call sites may call it with an argument like `*ptr++` that has side effects.
* librhash: Implement bswap_64 even in strict C90 modeBrad King2016-11-101-4/+2
|
* librhash: Use __builtin_bswap{32,64} on ClangBrad King2016-11-101-0/+8
|
* librhash: Install COPYING file with CMake documentationBrad King2016-11-101-0/+2
| | | | | When we install using the bundled librhash source, notify users of its license terms.
* librhash: Disable warnings to avoid changing 3rd party codeBrad King2016-11-102-0/+12
| | | | | Add '-w' or equivalent flag on compilers supporting it. Tell MSVC to use its lowest warning level inside librhash sources.
* librhash: Build the library within CMakeBrad King2016-11-102-0/+31
| | | | | | | | 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.
* librhash: Remove source fragments not needed for CMakeBrad King2016-11-105-125/+47
| | | | | | | | | 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.
* Merge branch 'upstream-librhash' into import-librhashBrad King2016-11-0321-0/+3238
* upstream-librhash: librhash 2016-11-01 (d839a1a8)