summaryrefslogtreecommitdiffstats
path: root/Source
Commit message (Collapse)AuthorAgeFilesLines
* cmCryptoHash: Add support for SHA-3 algorithmsBrad King2016-11-102-8/+29
|
* Merge topic 'import-librhash'Brad King2016-11-1016-1944/+180
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 ...
| * FindLibRHash: Add module to find the librhash packageBrad King2016-11-101-0/+73
| | | | | | | | | | | | Add it to a private source directory that is not installed so that we can use it for building CMake itself. This will allow it to mature before being distributed publicly.
| * Remove unused cm_sha2 infrastructureBrad King2016-11-105-1800/+0
| | | | | | | | | | All clients of `cm_sha2` have been ported to `cmCryptoHash`, which now uses librhash internally.
| * Port hash computation to cmCryptoHashBrad King2016-11-108-60/+34
| | | | | | | | | | Avoid using KWSys MD5 or `cm_sha2` and use the `cmCryptoHash` abstraction instead.
| * cmCryptoHash: Re-implement in terms of librhashBrad King2016-11-102-85/+73
| | | | | | | | | | | | Offer direct construction with an enumeration of supported algorithms. Also expose the Initialize/Append/Finalize steps publicly and add a FinalizeHex method.
| * cmCryptoHash: Avoid using subclasses at client sitesBrad King2016-11-101-4/+4
| | | | | | | | Use only the main `cmCryptoHash` interface.
| * librhash: Build the library within CMakeBrad King2016-11-101-0/+1
| | | | | | | | | | | | | | | | 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.
* | Merge topic 'autorcc-only-no-rebuild'Brad King2016-11-101-2/+2
|\ \ | | | | | | | | | | | | e4232b82 QtAutogen: Do not re-generate AUTORCC outputs on every build
| * | QtAutogen: Do not re-generate AUTORCC outputs on every buildBrad King2016-11-091-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Refactoring in commit v3.6.0-rc1~134^2~10 (Autogen: Split out moc file generation code to dedicated method, 2016-04-18) removed the unconditional creation of the `<target>_automoc.cpp` file. Now it is generated only when `AUTOMOC` is enabled. However, if this file is not created then our internal `GenerateAll` setting is enabled on every build, causing `AUTORCC` to re-generate its file(s) every time. Fix the `GenerateAll` setting to be used only for when autogen settings change. The old logic was left from when we had only automoc. Closes: #16413
| * | CMake 3.7.0-rc3v3.7.0-rc3Brad King2016-11-041-1/+1
| | |
| * | Merge branch 'cmake-server-handshake-improvements' into releaseBrad King2016-10-282-63/+99
| |\ \
| * \ \ Merge branch 'cmake-server-message-quoting' into releaseBrad King2016-10-241-2/+2
| |\ \ \
| * | | | Ninja: Use binary dir for `$subdir/all` targetsAlexis Murzeau2016-10-242-29/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The targets added by commit v3.6.0-rc1~240^2~2 (Ninja: Add `$subdir/all` targets, 2016-03-11) use as `$subdir` the relative path from the top of the source tree to the current source directory. This is not correct when using `add_subdirectory(test test_bin)`. Instead we need to use the relative path from the top of the binary tree to the current binary directory as was done for related targets by commit v3.7.0-rc1~268^2 (Ninja: Add `$subdir/{test,install,package}` targets, 2016-08-05).
| * | | | CMake 3.7.0-rc2v3.7.0-rc2Brad King2016-10-191-1/+1
| | | | |
* | | | | CMake Nightly Date StampKitware Robot2016-11-101-1/+1
| | | | |
* | | | | Merge topic 'update-kwsys'Brad King2016-11-0972-13666/+11539
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 95a97a40 Merge branch 'upstream-KWSys' into update-kwsys 773b36e5 KWSys 2016-11-09 (18c65411)
| * | | | | Merge branch 'upstream-KWSys' into update-kwsysBrad King2016-11-0972-13666/+11539
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * upstream-KWSys: KWSys 2016-11-09 (18c65411)
* | | | | | Merge topic 'imported-interface-libname'Brad King2016-11-096-19/+82
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 09cda9d5 Allow imported INTERFACE libraries to specify a link library name 1d1f1eeb cmTarget: Refactor GetMappedConfig to choose location property up front 479932fa cmTarget: Add comment clarifying interface library special case 925e4270 cmTarget: Clarify comments in GetMappedConfig
| * | | | | | Allow imported INTERFACE libraries to specify a link library nameBrad King2016-11-096-13/+72
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add an `IMPORTED_LIBNAME[_<CONFIG>]` target property to specify a library name to be placed on the link line in place of an interface library since it has no library file of its own. Restrict use of the property to imported `INTERFACE` libraries. This will be particularly useful for find modules that need to provide imported libraries from system SDKs where the full path to the library file is not known. Now such find modules will be able to provide an imported interface library and set `IMPORTED_LIBNAME` to refer to the SDK library by name. Issue: #15267
| * | | | | | cmTarget: Refactor GetMappedConfig to choose location property up frontBrad King2016-11-031-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Store the `IMPORTED_LOCATION` property name in a variable up front to avoid duplicating the string literal.
| * | | | | | cmTarget: Add comment clarifying interface library special caseBrad King2016-11-031-0/+2
| | | | | | |
| * | | | | | cmTarget: Clarify comments in GetMappedConfigBrad King2016-11-031-3/+3
| | |_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | Clarify comments explaining the availability of a target location (file on disk) to distinguish this from the existence of the target.
* | | | | | CMake Nightly Date StampKitware Robot2016-11-091-1/+1
| |/ / / / |/| | | |
* | | | | Merge topic 'include-what-you-use'Brad King2016-11-08140-442/+660
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 2e620f0b Fix several include-what-you-use findings
| * | | | | Fix several include-what-you-use findingsDaniel Pfeifer2016-11-08140-442/+660
| | | | | |
* | | | | | Merge topic 'clang-tidy'Brad King2016-11-084-8/+8
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0cd654c8 cmGeneratorTarget: Correctly set FortranModuleDirectoryCreated bac93dcf cmGeneratorTarget: Don't assing a bool to a string 1e994985 cmGlobalNinjaGenerator: Suppress clang-tidy warning 5ae3966d cmCTestSubmitHandler: Remove redundant c_str() 443180fb cmCPluginAPI: Fix clang-tidy findings
| * | | | | | cmGeneratorTarget: Correctly set FortranModuleDirectoryCreatedDaniel Pfeifer2016-11-051-0/+1
| | | | | | |
| * | | | | | cmGeneratorTarget: Don't assing a bool to a stringDaniel Pfeifer2016-11-051-1/+0
| | | | | | |
| * | | | | | cmGlobalNinjaGenerator: Suppress clang-tidy warningDaniel Pfeifer2016-11-051-2/+2
| | | | | | |
| * | | | | | cmCTestSubmitHandler: Remove redundant c_str()Daniel Pfeifer2016-11-051-1/+1
| | | | | | |
| * | | | | | cmCPluginAPI: Fix clang-tidy findingsDaniel Pfeifer2016-11-051-4/+4
| |/ / / / /
* | | | | | CMake Nightly Date StampKitware Robot2016-11-081-1/+1
| | | | | |
* | | | | | CMake Nightly Date StampKitware Robot2016-11-071-1/+1
| | | | | |
* | | | | | CMake Nightly Date StampKitware Robot2016-11-061-1/+1
|/ / / / /
* | | | | CMake Nightly Date StampKitware Robot2016-11-051-1/+1
| | | | |
* | | | | Merge topic 'vs-flag-order'Brad King2016-11-041-2/+3
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 4cb5d335 VS: Place source-specific AdditionalOptions after target-wide flags
| * | | | | VS: Place source-specific AdditionalOptions after target-wide flagsBrad King2016-11-021-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Flags specified in the `COMPILE_FLAGS` source-file property should be placed after those in target-wide properties so that those on individual source files can override those on the whole target. This is already done by most generators but was not implemented correctly for VS 2010 and above. Closes: #16400
* | | | | | CMake Nightly Date StampKitware Robot2016-11-041-1/+1
| |/ / / / |/| | | |
* | | | | Merge topic 'remove-utf8-option'Brad King2016-11-037-57/+6
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | baead1e2 Encoding: Remove option to use ANSI code page internally
| * | | | | Encoding: Remove option to use ANSI code page internallyClinton Stimpson2016-11-027-57/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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).
* | | | | | Merge topic 'compile-features-for-language-standards'Brad King2016-11-031-0/+6
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * | | | | | Features: Add meta-features requesting awareness of a particular standardBrad King2016-11-021-0/+6
| | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | | | | CMake Nightly Date StampKitware Robot2016-11-031-1/+1
|/ / / / /
* | | | | Merge topic 'fix_compiler_arg1'Brad King2016-11-021-1/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | cfbf857b cmRulePlaceholderExpander: Fix CMAKE_<LANG>_COMPILER_ARG1 replacement
| * | | | | cmRulePlaceholderExpander: Fix CMAKE_<LANG>_COMPILER_ARG1 replacementZack Galbreath2016-11-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Refactoring in commit b29425f7 (cmLocalGenerator: Populate a container of mappings for replacements, 2016-10-09) broke substitution of this placeholder by storing the wrong key in the new replacement map. Use the proper key, `CMAKE_<LANG>_COMPILER_ARG1`.
* | | | | | CMake Nightly Date StampKitware Robot2016-11-021-1/+1
| |/ / / / |/| | | |
* | | | | Merge topic 'custom-command-CROSSCOMPILING_EMULATOR'Brad King2016-11-012-14/+35
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f648b9be Tests: Check that CROSSCOMPILING_EMULATOR is not used on imported targets e7480d67 Fix custom command target substitution with CROSSCOMPILING_EMULATOR
| * | | | | Fix custom command target substitution with CROSSCOMPILING_EMULATORBrad King2016-10-282-14/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit v3.6.0-rc1~88^2 (CustomCommandGenerator: Add support for CROSSCOMPILING_EMULATOR, 2016-05-04) logic was introduced to substitute a target's `CROSSCOMPILING_EMULATOR` for argv0 in a custom command. However, it broke the case when the argv0 was a target name and now fails to expand the target name to its location at the same time as inserting the emulator. Fix the latter case. Inspired-by: Brian Maher <brian@brimworks.com> Closes: #16288
* | | | | | Merge topic 'src-COMPILE_FLAGS-genex'Brad King2016-11-017-15/+65
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9a58517d Tests: Add case for Xcode per-config per-source COMPILE_FLAGS diagnostic 1e4bb358 Add generator expression support to per-source COMPILE_FLAGS