summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* cmMakefile: Let AddDefinition accept a value as cm::string_viewSebastian Holtermann2019-07-2456-256/+226
| | | | | | | | | | | | | | | | This changes `cmMakefile::AddDefinition` to take a `cm::string_view` as value argument instead of a `const char *`. Benefits are: - `std::string` can be passed to `cmMakefile::AddDefinition` directly without the `c_str()` plus string length recomputation fallback. - Lengths of literals passed to `cmMakefile::AddDefinition` can be computed at compile time. In various sources uses of `cmMakefile::AddDefinition` are adapted to avoid `std::string::c_str` calls and the `std::string` is passed directly. Uses of `cmMakefile::AddDefinition`, where a `nullptr` `const char*` might be passed to `cmMakefile::AddDefinition` are extended with `nullptr` checks.
* cmMakefile: Simplify and rename AddDefinitionBoolSebastian Holtermann2019-07-246-26/+13
| | | | | | | This simplifies the `cmMakefile::AddDefinition` method with bool value overload to call the string based `cmMakefile::AddDefinition` method with either an "ON" or "OFF" string. Also the method is renamed to `cmMakefile::AddDefinitionBool`
* cmDefinitions: Remove const char* based Set methodSebastian Holtermann2019-07-244-17/+13
| | | | | | | - Removes `cmDefinitions::Set` method overload that takes a `const char*` value argument. - Updates calls to `cmDefinitions::Set` to use the `cm::string_view` based version instead.
* cmDefinitions: Add Unset and cm::string_view based Set methodsSebastian Holtermann2019-07-242-17/+30
| | | | | | | | | | | | | | | | | | - The `cmDefinitions::Def` struct is simplified by removing an unused constructor and the `std_string` type definition. The std::string value becomes a member variable instead of being derived from. - The `cmDefinitions::Unset` method is added that unsets a definition. It has the same functionality as calling `cmDefinitions::Set` with a `nullptr` value argument, - The `cmDefinitions::Set` method gets an overloaded version that takes a `cm::string_view` as value argument. - The originl `cmDefinitions::Set` method with `const char*` argument is refactored to either call the `cm::string_view` based `cmDefinitions::Set` overload or `cmDefinitions::Unset`, depending on whether the value `const char*` is a nullptr (`Unset`) or not (`Set`).
* cmDefinitions: CleanupsSebastian Holtermann2019-07-241-8/+9
|
* CMake Nightly Date StampKitware Robot2019-07-241-1/+1
|
* Merge branch 'release-3.15'Brad King2019-07-230-0/+0
|\
| * Merge branch 'InstallRequiredSystemLibraries-redist' into release-3.15Brad King2019-07-221-6/+14
| |\ | | | | | | | | | Merge-request: !3585
* | \ Merge topic 'InstallRequiredSystemLibraries-redist'Brad King2019-07-231-6/+14
|\ \ \ | | |/ | |/| | | | | | | | | | | | | | | | 13c3ec545b IRSL: Fix discovery of VS 2019 v141 toolset redistributables 0484165da0 IRSL: Fix typo in v143 toolset version check Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3585
| * | IRSL: Fix discovery of VS 2019 v141 toolset redistributablesJames Butler2019-07-221-4/+12
| | | | | | | | | | | | | | | | | | | | | | | | Since VS 2019, the v141 toolset redistributables can be found in either the VS 2019 or VS 2017 install directory. Update the logic to search multiple versions of VS. Fixes: #19488
| * | IRSL: Fix typo in v143 toolset version checkJames Butler2019-07-221-2/+2
| | | | | | | | | | | | | | | | | | Fix the toolset v143 check from commit 33ee779330 (IRSL: Fix discovery of VS 2019 v142 toolset redistributables, 2019-04-03, v3.14.2~6^2) to check the correct variable.
* | | Merge topic 'parsers-bison-3.3'Brad King2019-07-238-1225/+1273
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 8f0b3f92d5 LexerParser: Regenerate parsers with bison 3.3 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3588
| * | | LexerParser: Regenerate parsers with bison 3.3Brad King2019-07-228-1225/+1273
| | | | | | | | | | | | | | | | Run `Utilities/Scripts/regenerate-parsers.bash`.
* | | | Merge topic 'cmHasLiteralPrefix_cm_string_view'Brad King2019-07-231-9/+28
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 301f5356fd cmAlgorithms: Make cmHasPrefix and cmHasSuffix cm::string_view based Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Daniel Pfeifer <daniel@pfeifer-mail.de> Merge-request: !3583
| * | | | cmAlgorithms: Make cmHasPrefix and cmHasSuffix cm::string_view basedSebastian Holtermann2019-07-221-9/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make `cmHasPrefix`, `cmHasSuffix` and `cmStripSuffixIfExists` accept arguments as `cm::string_view` instead of `const std::string&`. This lets them accept literal strings without having to allocate a temporary `std::string`. Add variants of `cmHasPrefix`, `cmHasSuffix` and `cmStripSuffixIfExists` that accept a single character as second argument.
* | | | | Merge topic 'make-imported-targets-more-equal'Brad King2019-07-234-4/+17
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 680a3c63bb target_*: Allow setting INTERFACE properties of UNKNOWN IMPORTED targets 62b5d1e4ad cmTargetPropCommandBase: Order target type condition by order in enum Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3581
| * | | | | target_*: Allow setting INTERFACE properties of UNKNOWN IMPORTED targetsAvraham Shukron2019-07-224-2/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Extend the change made by commit fe4b25ec2f (Teach target_* commands to set INTERFACE properties of IMPORTED targets, 2017-09-18, v3.11.0-rc1~433^2~2) to work with imported targets of type `UNKNOWN`. Fixes: #19434
| * | | | | cmTargetPropCommandBase: Order target type condition by order in enumAvraham Shukron2019-07-221-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | This improves readability.
* | | | | | Merge topic 'command-refactoring3'Brad King2019-07-2329-383/+244
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dfaa87f1b3 cmState: Support BuiltinCommands as free functions 28f2d12a05 cmCommand: De-virtualize function InvokeInitialPass de77d355ac cmState: Add scripted commands by value 0101ace131 cmUnexpectedCommand: Replace with lambda expression 015001aaf1 cmState: Hold commands by value 1eebc29563 cmCommand: deprecate functions GetMakefile and SetError Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3574
| * | | | | | cmState: Support BuiltinCommands as free functionsRegina Pfeifer2019-07-227-62/+34
| | | | | | |
| * | | | | | cmCommand: De-virtualize function InvokeInitialPassRegina Pfeifer2019-07-216-86/+24
| | | | | | |
| * | | | | | cmState: Add scripted commands by valueRegina Pfeifer2019-07-215-89/+50
| | | | | | |
| * | | | | | cmUnexpectedCommand: Replace with lambda expressionRegina Pfeifer2019-07-216-70/+22
| | | | | | |
| * | | | | | cmState: Hold commands by valueRegina Pfeifer2019-07-216-39/+69
| | | | | | |
| * | | | | | cmCommand: deprecate functions GetMakefile and SetErrorDaniel Pfeifer2019-07-2114-45/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace the members for the Makefile and the Error with a cmExecutionStatus. Re-implement GetMakefile and SetError based on that. Both functions should be called directly on the cmExecutionStatus that is passed to InitialPass. This will help us make all Commands immutable and remove the need for cloning.
* | | | | | | Merge topic 'ssl-warning'Brad King2019-07-232-5/+7
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dd3e476786 OpenSSL: Issue an error if OpenSSL is not found Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Brad King <brad.king@kitware.com> Merge-request: !3565
| * | | | | | | OpenSSL: Issue an error if OpenSSL is not foundKyle Edwards2019-07-182-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When building with the built-in Curl, CMAKE_USE_OPENSSL is only set to ON by default if an OpenSSL installation is detected. However, this can cause the user to mistakenly build without OpenSSL support if OpenSSL is not installed, because CMAKE_USE_OPENSSL is set to OFF in that case. Always set CMAKE_USE_OPENSSL to ON by default on systems where it could be available, skipping the initial detection, resulting in an error when we try to use OpenSSL later on. Detect this error and advise the user to either install OpenSSL or set CMAKE_USE_OPENSSL to OFF. Co-Authored-by: Brad King <brad.king@kitware.com>
* | | | | | | | CMake Nightly Date StampKitware Robot2019-07-231-1/+1
| |_|_|/ / / / |/| | | | | |
* | | | | | | Merge topic 'bootstrap-c++14'Brad King2019-07-221-1/+20
|\ \ \ \ \ \ \ | |_|_|_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9dfb66372e bootstrap: Verify C++14 capabilities before using them Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3587
| * | | | | | bootstrap: Verify C++14 capabilities before using themBrad King2019-07-181-1/+20
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit a605bf438e (Extend C++17/C++14 feature checks to cover more standard library APIs, 2019-02-27, cpp-modules-20190312.1~52^2~1) we added checks to the main build of CMake to verify C++14 capabilities before using C++14 flags to build. Add these to the bootstrap check too.
* | | | | | Merge topic 'refactor-processhandler'Brad King2019-07-222-137/+181
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ae2cfc4bd8 Refactor: Break cmCTestTestHandler::ProcessHandler() into smaller functions Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3580
| * | | | | | Refactor: Break cmCTestTestHandler::ProcessHandler() into smaller functionsKyle Edwards2019-07-192-137/+181
| | | | | | |
* | | | | | | Merge topic 'tutorial_reference_cmake_install_command'Brad King2019-07-221-6/+8
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c94e62c07e Tutorial: Updated to reference using cmake --install Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3572
| * | | | | | | Tutorial: Updated to reference using cmake --installRobert Maynard2019-07-191-6/+8
| | |/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | This is preferred over using `make install` as it allows for control over the install location, configuration, and component.
* | | | | | | Merge topic 'doc-string-multibyte'Brad King2019-07-221-81/+94
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b97673f54b Help: Add note to each string() subcommand that assumes ASCII input 26cd64d977 Help: Fix language and formatting inconsistencies for string() command Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3559
| * | | | | | | Help: Add note to each string() subcommand that assumes ASCII inputCraig Scott2019-07-191-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | Fixes: #19465
| * | | | | | | Help: Fix language and formatting inconsistencies for string() commandCraig Scott2019-07-191-81/+85
| | | | | | | |
* | | | | | | | Merge topic 'static-library-flags'Brad King2019-07-221-5/+7
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 59f2aa63e4 Swift: fix static library handling Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3576
| * | | | | | | | Swift: fix static library handlingSaleem Abdulrasool2019-07-191-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Handle static libraries similar to shared libraries. Do not pass along the shared library flags raw as that will pass flags for the linker to the driver which is incorrect.
* | | | | | | | | Merge topic 'refactor-usage-requirements'Brad King2019-07-223-294/+245
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2682714a3f cmGeneratorTarget: Refactor usage requirement genex evaluation 3cbc15773f cmGeneratorTarget: Move static functions to anonymous namespace 33494a507d cmGeneratorTarget: Order usage requirement processing logic consistently c131e62f7b cmGeneratorTarget: Remove unnecessary copy to local variable fab72918c9 cmGeneratorTarget: Remove unused member of internal class 95d3598e04 cmGeneratorExpressionDAGChecker: Avoid const_cast Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Marc Chevrier <marc.chevrier@gmail.com> Merge-request: !3578
| * | | | | | | | | cmGeneratorTarget: Refactor usage requirement genex evaluationBrad King2019-07-191-270/+209
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Evaluate usage requirement generator expressions fully before entering the processing loops. This allows us to evaluate and collect all entries up front and then have only one call to the loop over them. This also allows `AddInterfaceEntries` to immediately evaluate the generator expressions it synthesizes, which will enable later optimization.
| * | | | | | | | | cmGeneratorTarget: Move static functions to anonymous namespaceBrad King2019-07-191-26/+43
| | | | | | | | | |
| * | | | | | | | | cmGeneratorTarget: Order usage requirement processing logic consistentlyBrad King2019-07-191-10/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Re-order logic in all `process*` methods so that they all evaluate generator expressions at the beginning of their loops.
| * | | | | | | | | cmGeneratorTarget: Remove unnecessary copy to local variableBrad King2019-07-191-4/+3
| | | | | | | | | |
| * | | | | | | | | cmGeneratorTarget: Remove unused member of internal classBrad King2019-07-191-3/+0
| | | | | | | | | |
| * | | | | | | | | cmGeneratorExpressionDAGChecker: Avoid const_castBrad King2019-07-192-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make a member mutable to avoid casting away const of a whole object.
* | | | | | | | | | Merge topic 'cpack-install-scripts'Craig Scott2019-07-2210-24/+62
|\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5f96601675 CPack: Introduce CPACK_INSTALL_SCRIPTS variable Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3531
| * | | | | | | | | | CPack: Introduce CPACK_INSTALL_SCRIPTS variableAlex Turbov2019-07-2110-24/+62
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The singular name `CPACK_INSTALL_SCRIPT` has existed but was not linked from the CPack documentation. Also, it supported multiple values and should have had a plural name. Add a plural-named alternative now. If both `CPACK_INSTALL_SCRIPTS` and `CPACK_INSTALL_SCRIPT` are set then ignore the latter with a warning. Signed-off-by: Alex Turbov <i.zaufi@gmail.com>
* | | | | | | | | | | Merge topic 'feature/message-indent'Craig Scott2019-07-2211-14/+144
|\ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5f6fd917a3 message(): Control indentation via CMAKE_MESSAGE_INDENT Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3464
| * | | | | | | | | | | message(): Control indentation via CMAKE_MESSAGE_INDENTAlex Turbov2019-07-2111-14/+144
| | | | | | | | | | | |