summaryrefslogtreecommitdiffstats
path: root/Source
Commit message (Collapse)AuthorAgeFilesLines
* file(INSTALL): Add FOLLOW_SYMLINK_CHAIN argumentKyle Edwards2019-05-162-7/+66
|
* Merge topic 'update-kwsys'Brad King2019-05-162-20/+83
|\ | | | | | | | | | | | | | | 23b3ca5e1f Merge branch 'upstream-KWSys' into update-kwsys 49f8351a18 KWSys 2019-05-15 (dea11658) Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3325
| * Merge branch 'upstream-KWSys' into update-kwsysBrad King2019-05-152-20/+83
| | | | | | | | | | * upstream-KWSys: KWSys 2019-05-15 (dea11658)
* | CMake Nightly Date StampKitware Robot2019-05-161-1/+1
| |
* | Merge topic 'msvc-jmc'Brad King2019-05-152-0/+27
|\ \ | | | | | | | | | | | | | | | | | | 2a9ff9703e MSVC: Add support for /JMC (Just My Code) Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3121
| * | MSVC: Add support for /JMC (Just My Code)Luca Cappa2019-05-142-0/+27
| | |
* | | Merge topic 'additional_clean_files'Brad King2019-05-1513-44/+226
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b5bf369ec6 Release notes: Add release notes for ADDITIONAL_CLEAN_FILES properties 4e2ce0a67a Doc: Update and deprecate ADDITIONAL_MAKE_CLEAN_FILES directory property 338994d65d Doc: Add documentation for ADDITIONAL_CLEAN_FILES properties c11f089d73 Tests: Extend MakeClean test to cover ADDITIONAL_CLEAN_FILES 012d599e26 Ninja: Add support for ADDITIONAL_CLEAN_FILES target property 890a1b9dc3 Ninja: Add support for ADDITIONAL_CLEAN_FILES directory property 7b23001f20 Ninja: Add support for additional clean files d745df4b01 Makefiles: Add support for ADDITIONAL_CLEAN_FILES target property ... Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3318
| * | | Ninja: Add support for ADDITIONAL_CLEAN_FILES target propertySebastian Holtermann2019-05-143-0/+29
| | | |
| * | | Ninja: Add support for ADDITIONAL_CLEAN_FILES directory propertySebastian Holtermann2019-05-142-0/+27
| | | |
| * | | Ninja: Add support for additional clean filesSebastian Holtermann2019-05-142-7/+104
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Additional clean files for the Ninja generator can be registered via the new method `cmGlobalNinjaGenerator::AddAdditionalCleanFile`. If there are additional clean files, a new rule `CLEAN_ADDITIONAL` and a new build target `CMakeFiles/clean.additional` get generated. The `clean` target will depend on `CMakeFiles/clean.additional`, if the target exists.
| * | | Makefiles: Add support for ADDITIONAL_CLEAN_FILES target propertySebastian Holtermann2019-05-141-0/+12
| | | |
| * | | Makefiles: Add support for ADDITIONAL_CLEAN_FILES directory propertySebastian Holtermann2019-05-141-0/+12
| | | |
| * | | Makefiles: Move ADDITIONAL_MAKE_CLEAN_FILES evaluation to lambdaSebastian Holtermann2019-05-141-10/+16
| | | |
| * | | Makefiles: Sort clean files by using a std::set<std::string> containerSebastian Holtermann2019-05-146-30/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | By using a `std::set<std::string>` container instead of a `std::vector<std::string>` container, the clean files list becomes sorted and unique. The clean target in Makefiles beomes nicer and better readable this way. Also double clean entries won't appear anymore.
* | | | Merge topic 'ninja-pool-custom-command'Brad King2019-05-1511-28/+78
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9f76961de8 Support job pools in custom commands and targets Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3308
| * | | | Support job pools in custom commands and targetsRosen Matev2019-05-1411-28/+78
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Provide a way for custom commands and targets to set the pool variable of the ninja build statement. Setting `JOB_POOL` is not compatible with `USES_TERMINAL`, which implies the `console` pool. The option is silently ignored with other generators. Closes: #18483
* | | | | Merge topic 'cmuvprocesschain-iterator-fix'Brad King2019-05-151-1/+4
|\ \ \ \ \ | |_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | dfa24355ea cmUVProcessChain: Add assert() for static analysis tools Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3322
| * | | | cmUVProcessChain: Add assert() for static analysis toolsKyle Edwards2019-05-141-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some static analysis tools throw a false positive for an out-of-bounds item that is being dereferenced. This out-of-bounds error will never actually happen because of how cmUVProcessChain::InternalData::AddCommand() is being called. Nevertheless, this change adds an assert() to help static analysis tools be absolutely certain that the referenced item is within the vector's bounds. This change also changes the item access to use an index rather than an iterator.
* | | | | CMake Nightly Date StampKitware Robot2019-05-151-1/+1
|/ / / /
* | | | Merge topic 'find-boost-cmp0093'Brad King2019-05-141-1/+3
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | | | | | | | | | 5108759ed2 FindBoost: Introduce CMP0093 to report Boost_VERSION in x.y.z format Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3317
| * | | FindBoost: Introduce CMP0093 to report Boost_VERSION in x.y.z formatDennis Klein2019-05-131-1/+3
| | | | | | | | | | | | | | | | This aligns module mode behaviour with config mode.
* | | | Merge topic 'cmSytemTools_ExpandedList'Brad King2019-05-144-29/+58
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | cdff7f4e2a cmSystemTools: Add ExpandedListArgument and ExpandedLists methods Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Ben Boeckel <ben.boeckel@kitware.com> Merge-request: !3313
| * | | | cmSystemTools: Add ExpandedListArgument and ExpandedLists methodsSebastian Holtermann2019-05-134-29/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes ------- In `cmSystemTools` this - renames the method `ExpandList` to `ExpandLists` and makes it iterator based and adds the methods - `std::vector<std::string> ExpandedLists(InputIt first, InputIt last)` - `std::vector<std::string> ExpandedListArgument(const std::string& arg, bool emptyArgs)` Both return the `std::vector<std::string>` instead of taking a return vector reference like `cmSystemTools::ExpandLists` and `cmSystemTools::ExpandListArgument`. Motivation ---------- Since C++17 return value optimization is mandatory, so returning a `std:vector<std::string>` from a function should be (at least) as fast as passing a return vector reference to the function. The new methods can replace `cmSystemTools::ExpandLists` and `cmSystemTools::ExpandListArgument` in many cases, which leads to shorter and simpler syntax. E.g. the commonly used pattern ``` if (const char* value = X->GetProperty("A_KEY_STRING")) { std::vector<std::string> valuesList; cmSystemTools::ExpandListArgument(value, valuesList); for (std::string const& i : valuesList) { doSomething(i); } } ``` becomes ``` if (const char* value = X->GetProperty("A_KEY_STRING")) { for (std::string const& i : cmSystemTools::ExpandedListArgument(value)) { doSomething(i); } } ```
* | | | | Merge topic 'error-generate-step'Brad King2019-05-141-0/+5
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8cc04b1918 cmake: Display error if generate step fails Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Ben Boeckel <ben.boeckel@kitware.com> Merge-request: !3304
| * | | | | cmake: Display error if generate step failsKyle Edwards2019-05-131-0/+5
| |/ / / /
* | | | | Merge topic 'ninja_cleanups'Brad King2019-05-145-241/+223
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 054954d855 Ninja: Use clean target instead of clean tool in `cmake --target clean` calls 30a550d6ad Ninja: In cmNinjaTargetGenerator use std::unique_ptr to manage new instances 0024356f8e Ninja: In cmNinjaTargetGenerator optimize string composition 8691b3cf91 Ninja: Inline range loop range arguments 47da9859e8 Ninja: In cmGlobalNinjaGenerator use std::unique_ptr to manage output streams 9902702134 Ninja: Add and use cmGlobalNinjaGenerator::CMakeCmd method 12aa6fe07b Ninja: Fix message in cmGlobalNinjaGenerator::WriteBuild method 02293841e7 Ninja: Simplify cmGlobalNinjaGenerator::AddRule and HasRule methods ... Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3312
| * | | | | Ninja: Use clean target instead of clean tool in `cmake --target clean` callsSebastian Holtermann2019-05-132-7/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A convenience `clean` target for the Ninja generator exists since commit 3bd41f2eb5. It's safe to call `ninja clean` instead of `ninja -t clean`. This removes the exception mapping of the `clean` target in `cmake --build ... --target clean` calls to the Ninja `-t clean` tool.
| * | | | | Ninja: In cmNinjaTargetGenerator use std::unique_ptr to manage new instancesSebastian Holtermann2019-05-133-7/+9
| | | | | |
| * | | | | Ninja: In cmNinjaTargetGenerator optimize string compositionSebastian Holtermann2019-05-131-62/+78
| | | | | |
| * | | | | Ninja: Inline range loop range argumentsSebastian Holtermann2019-05-123-28/+14
| | | | | |
| * | | | | Ninja: In cmGlobalNinjaGenerator use std::unique_ptr to manage output streamsSebastian Holtermann2019-05-112-28/+31
| | | | | |
| * | | | | Ninja: Add and use cmGlobalNinjaGenerator::CMakeCmd methodSebastian Holtermann2019-05-102-46/+48
| | | | | |
| * | | | | Ninja: Fix message in cmGlobalNinjaGenerator::WriteBuild methodSebastian Holtermann2019-05-101-5/+3
| | | | | |
| * | | | | Ninja: Simplify cmGlobalNinjaGenerator::AddRule and HasRule methodsSebastian Holtermann2019-05-102-13/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Use `std::unordered_set` for the emitted rule register - Use `std::unordered_map` for command length register
| * | | | | Ninja: Simplify cmGlobalNinjaGenerator::WriteRule methodSebastian Holtermann2019-05-101-45/+31
| |/ / / /
* | | | | Merge topic 'cminstallgenerator-compute-error'Brad King2019-05-1416-17/+28
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b133d14fb1 Refactor: Allow cmInstallGenerator::Compute() to return an error Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3305
| * | | | | Refactor: Allow cmInstallGenerator::Compute() to return an errorKyle Edwards2019-05-1316-17/+28
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | This is preparation for an upcoming merge request, which will add a new cmInstallGenerator that returns false if there are errors in the Compute() step.
* | | | | CMake Nightly Date StampKitware Robot2019-05-141-1/+1
| |/ / / |/| | |
* | | | Merge topic 'autorcc_timestamp'Brad King2019-05-133-59/+69
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 15004e4319 AutoRcc: Simplify error logging with utility lambda bd6c3f8609 AutoRcc: Rebuild if the rcc executable is newer than its output 54903af84b AutoRcc: Don't read the info file time again 081104fb00 AutoRcc: Write re-generation reason and rcc command as one string eff6e622d6 Autogen: A missing info file is a critical error Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3311
| * | | | AutoRcc: Simplify error logging with utility lambdaSebastian Holtermann2019-05-111-20/+18
| | | | |
| * | | | AutoRcc: Rebuild if the rcc executable is newer than its outputSebastian Holtermann2019-05-112-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | In AUTORCC add a test if the rcc executable is newer that the rcc output. If the rcc executable is newer, rebuild the output.
| * | | | AutoRcc: Don't read the info file time againSebastian Holtermann2019-05-111-12/+1
| | | | | | | | | | | | | | | | | | | | | | | | | In `AUTORCC` use the info file time that's available already instead of reading it again.
| * | | | AutoRcc: Write re-generation reason and rcc command as one stringSebastian Holtermann2019-05-112-29/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In AUTORCC with verbose output write the rcc re-generation reason and the rcc command as on single string to avoid message chopping in concurrent builds.
| * | | | Autogen: A missing info file is a critical errorSebastian Holtermann2019-05-111-1/+2
| |/ / /
* | | | Merge topic 'cmuvprocesschain'Brad King2019-05-135-8/+502
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 26025d6e10 cmUVProcessChain: Add cmUVProcessChain 6b04d1cdc2 cmUVStreambuf: Initialize all members on construction Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3275
| * | | | cmUVProcessChain: Add cmUVProcessChainKyle Edwards2019-05-075-5/+499
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This class is ultimately intended as a replacement for cmsys::Process. It spawns a series of processes using libuv, piping the output of each command into the next. Note: input support has not yet been implemented because write support has not yet been implemented on cmUVStreambuf.
| * | | | cmUVStreambuf: Initialize all members on constructionBrad King2019-05-071-3/+3
| | |_|/ | |/| | | | | | | | | | | | | | | | | | Avoid leaving any members uninitialized after construction even if they are later initialized before use by methods. This helps convince static analysis tools that the members are not used uninitialized.
* | | | Merge topic 'windows-signing'Brad King2019-05-131-0/+51
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9a34031081 Utilities/Release: Enable signing of Windows release binaries 29f4f70b41 Add undocumented option to sign CMake's own binaries on Windows 1069a3f02b Configure CMake itself with policies through CMake 3.14 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3296
| * | | | Add undocumented option to sign CMake's own binaries on WindowsBrad King2019-05-081-0/+51
| | | | |
* | | | | CMake Nightly Date StampKitware Robot2019-05-131-1/+1
| | | | |