summaryrefslogtreecommitdiffstats
path: root/Source
Commit message (Collapse)AuthorAgeFilesLines
* cmFindPackageCommand: Refactor CMP0074 logic to de-duplicate lookupsBrad King2023-02-233-25/+34
|
* cmFindPackageCommand: Factor out methods for package root stack managementBrad King2023-02-232-31/+41
|
* cmSystemTools: Add helpers for reading and parsing PATH env varsBrad King2023-02-232-0/+29
|
* Merge topic 'qt-sizetype'Brad King2023-02-218-20/+45
|\ | | | | | | | | | | | | | | 5cda8a3993 cmake-gui: Fix conversion warnings about Qt indexing types Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8233
| * cmake-gui: Fix conversion warnings about Qt indexing typesBrad King2023-02-208-20/+45
| | | | | | | | | | Qt 5 uses `int` for indexing, and Qt 6 uses `qsizetype`. Add helper types and casts to the appropriate type to avoid conversion warnings.
* | Merge topic 'unlimited-version-compare'Brad King2023-02-211-7/+28
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | aa86e8ddfd Remove component size limit for version comparisons 7e730d8f7f Tests: Add cases for cmSystemTools::VersionCompare Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: scivision <michael@scivision.dev> Merge-request: !8231
| * | Remove component size limit for version comparisonsDavid Gobbi2023-02-201-7/+28
| |/ | | | | | | | | | | | | | | | | The VersionCompare() function converted version components to 'unsigned long' prior to comparing them. Any version components too large for 'unsigned long' were treated as equal to ULONG_MAX. This impacted operators like VERSION_GREATER, VERSION_LESS, and VERSION_EQUAL. The new code does not limit the length of the version components for valid comparisons.
* | Merge topic 'KateNinjaImprovements'Brad King2023-02-212-27/+42
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 2b713b0f95 Kate: mention Ninja Multiconfig in the docs f6f8f89e6c Kate: support for the targets of multi config ninja 0429a37e48 Kate: enable the ninja multiconfig generator for kate Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8226
| * | Kate: mention Ninja Multiconfig in the docsAlexander Neundorf2023-02-201-0/+1
| | |
| * | Kate: support for the targets of multi config ninjaAlexander Neundorf2023-02-182-25/+34
| | | | | | | | | | | | | | | | | | With this patch, cmake now generates the targets once for each config into the kate project file, so users can build the targets for all configs with this generator.
| * | Kate: enable the ninja multiconfig generator for kateAlexander Neundorf2023-02-181-4/+9
| | | | | | | | | | | | | | | Kate can work as well with the multi-config version of ninja. Additionally, add the "/fast" targets only for make, not for ninja.
* | | Merge topic 'add_lang_expressions_ghs'Brad King2023-02-211-4/+8
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 780b279cc6 GHS: Enable language-dependent generator expressions Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8224
| * | | GHS: Enable language-dependent generator expressionsNeal Venditto2023-02-181-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add `Green Hills MULTI` to the list of generators checked for the `COMPILE_LANGUAGE`, `COMPILE_LANG_AND_ID`, `LINK_LANGUAGE`, and `LINK_LANG_AND_ID` generator expressions, since these are supported by the generator. Fixes: #24262
* | | | CMake Nightly Date StampKitware Robot2023-02-211-1/+1
| |_|/ |/| |
* | | Merge topic 'ninja-custom-command-depends'Brad King2023-02-201-1/+2
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | ea2a05f402 Add variable CMAKE_ADD_CUSTOM_COMMAND_DEPENDS_EXPLICIT_ONLY Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8220
| * | | Add variable CMAKE_ADD_CUSTOM_COMMAND_DEPENDS_EXPLICIT_ONLYAbdelmaged Khalifa2023-02-171-1/+2
| | |/ | |/| | | | | | | | | | | | | | | | Add CMake variable `CMAKE_ADD_CUSTOM_COMMAND_DEPENDS_EXPLICIT_ONLY` to enable option `DEPENDS_EXPLICIT_ONLY` on all uses of `add_custom_command`. Fixes: #17097
* | | Merge topic 'xcode-revert-header-map'Brad King2023-02-201-0/+1
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 841272eb35 Xcode: Restore suppression of header maps Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8218
| * | | Xcode: Restore suppression of header mapsBrad King2023-02-171-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit 8527f42b96 (Xcode: Explicitly disable deprecated user include path feature, 2023-01-31, v3.26.0-rc1~7^2) we dropped the Xcode build setting `USE_HEADERMAP = NO` because Xcode 14's "Build Documentation" feature (`xcodebuild RUN_DOCUMENTATION_COMPILER=YES`) fails in some cases without header maps. However, enabling header maps causes Xcode to add `-iquote .../foo.hmap` and `-I .../bar.hmap` flags that can change the intended header file search order based on the contents of the header maps. This can break existing projects. Restore the `USE_HEADERMAP = NO` setting to fix the header file search order. Further investigation will be needed to resolve the problematic cases with the Xcode 14 "Build Documentation" feature. Meanwhile projects encountering such cases can set the `XCODE_ATTRIBUTE_USE_HEADERMAP` target property to `YES` themselves. Fixes: #24418 Issue: #24379
* | | | Merge topic 'cxx-module-mapper-clang'Brad King2023-02-201-1/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 195ee13710 cmCxxModuleMapper: Specify clang's BMI dependency with new form Acked-by: Kitware Robot <kwrobot@kitware.com> Reviewed-by: Ben Boeckel <ben.boeckel@kitware.com> Acked-by: Alex <leha-bot@yandex.ru> Merge-request: !8219
| * | | | cmCxxModuleMapper: Specify clang's BMI dependency with new formChuanqi Xu2023-02-171-1/+1
| |/ / /
| * | | CMake 3.26.0-rc3v3.26.0-rc3Brad King2023-02-151-1/+1
| | | |
| * | | CMake 3.26.0-rc2v3.26.0-rc2Brad King2023-02-091-1/+1
| | | |
| * | | Merge topic 'stop_parsing_after_first_script_arg' into release-3.26Brad King2023-02-091-5/+7
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f9e8a067c2 cmake: Stop parsing after `--` when detecting script mode Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8186
* | | | | CMake Nightly Date StampKitware Robot2023-02-201-1/+1
| | | | |
* | | | | CMake Nightly Date StampKitware Robot2023-02-191-1/+1
| | | | |
* | | | | CMake Nightly Date StampKitware Robot2023-02-181-1/+1
| |_|_|/ |/| | |
* | | | Merge topic 'sergio-nsk/24416/1'Brad King2023-02-172-10/+17
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 74e0b5d9f5 VS: Fix wrong appxManifest if OUTPUT_NAME != target name Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8216
| * | | | VS: Fix wrong appxManifest if OUTPUT_NAME != target nameSergey Markelov2023-02-162-10/+17
| | | | | | | | | | | | | | | | | | | | Fixes #24416
* | | | | CMake Nightly Date StampKitware Robot2023-02-171-1/+1
| |_|_|/ |/| | |
* | | | Merge topic 'deprecate-extra-generators'Brad King2023-02-166-5/+17
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ef5a4d964b Deprecate "extra" generators in favor of cmake-file-api(7) Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8211
| * | | | Deprecate "extra" generators in favor of cmake-file-api(7)Brad King2023-02-156-5/+17
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The "extra" generators were created in CMake's early years to provide support for users of specific IDEs by directly generating their project files alongside make or ninja files. Nowadays the file-api provides a more generic, maintainable, well-tested, and robust way for IDEs to view CMake project build trees. Deprecate the legacy "extra" generators to encourage the corresponding IDEs to use the file-api. Fixes: #19090
* | | | Merge topic 'synthetic-targets'Brad King2023-02-168-25/+109
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dadaa28638 cmGeneratorTarget: synthetic targets don't have output either bde9d4ad01 cmCommonTargetGenerator: also consider synthetic targets c97de1047f cmMakefile: add support for a "synthesized" target 1d0426f642 cmTarget: make Visibility an `enum class` 5b58695321 cmTarget: store visibility as an `enum` rather than bools Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !8203
| * | | | cmGeneratorTarget: synthetic targets don't have output eitherBen Boeckel2023-02-141-0/+5
| | | | |
| * | | | cmCommonTargetGenerator: also consider synthetic targetsBen Boeckel2023-02-141-1/+3
| | | | |
| * | | | cmMakefile: add support for a "synthesized" targetBen Boeckel2023-02-146-4/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It is a normal target, but will end up copying its internals from another target. Keep track of this state so that such copying can only occur when intended.
| * | | | cmTarget: make Visibility an `enum class`Ben Boeckel2023-02-144-18/+18
| | | | |
| * | | | cmTarget: store visibility as an `enum` rather than boolsBen Boeckel2023-02-144-13/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | C++ modules are going to introduce a third concept of "synthesized" targets, so update logic where needed to avoid assuming "not imported? must be normal". Also add an accessor method to perform queries against the visibility.
* | | | | Merge topic 'cmake-E-time-chrono'Brad King2023-02-161-19/+5
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bf5512ef51 Help:cmake -E time: note overhead included 848f7b0a81 cmake -E time: use C++11 chrono and better format output Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8209
| * | | | | cmake -E time: use C++11 chrono and better format outputscivision2023-02-151-19/+5
| | |/ / / | |/| | | | | | | | | | | | | fixes #24415
* | | | | CMake Nightly Date StampKitware Robot2023-02-161-1/+1
|/ / / /
* | | | Merge topic 'AutoExport-vftable'Brad King2023-02-151-1/+3
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f513781bc5 WINDOWS_EXPORT_ALL_SYMBOLS: Export vftable symbol Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8201
| * | | | WINDOWS_EXPORT_ALL_SYMBOLS: Export vftable symbolMalcolm Bechard2023-02-141-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `pybind11` requires access to this symbol to link in some cases. Include this symbol when generating automatic exports via `CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS`. Fixes: #24406
* | | | | Merge topic 'ninja-custom-command-depends'Brad King2023-02-154-26/+50
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 082ccd7530 add_custom_command: Add DEPENDS_EXPLICIT_ONLY option for Ninja Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8198
| * | | | | add_custom_command: Add DEPENDS_EXPLICIT_ONLY option for NinjaAbdelmaged Khalifa2023-02-144-26/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add option `DEPENDS_EXPLICIT_ONLY` to `add_custom_command` to indicate that implicit dependencies coming from users of the output are not needed, and only consider dependencies explicitly specified in the custom command. Fixes: #17097
* | | | | | Merge topic 'nullptr'Brad King2023-02-1510-49/+51
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7b0a629693 Source: use C++11 nullptr Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8207
| * | | | | | Source: use C++11 nullptrscivision2023-02-1410-49/+51
| | |_|/ / / | |/| | | |
* | | | | | CMake Nightly Date StampKitware Robot2023-02-151-1/+1
|/ / / / /
* | | | | Merge topic 'ninja-collation-dependencies'Brad King2023-02-142-31/+46
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b6a5382217 Ninja: depend on language module information files directly 0ace6053e8 Ninja: track modmap dependencies properly b215cbc07d Ninja: remove the modmap as an output of the scanner Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !8197
| * | | | | Ninja: depend on language module information files directlyBen Boeckel2023-02-101-11/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now that `GetLinkedTargetDirectories` can get the exact dependencies, use them to simplify the collation dependency graph.
| * | | | | Ninja: track modmap dependencies properlyBen Boeckel2023-02-102-9/+33
| | | | | | | | | | | | | | | | | | | | | | | | Mark modmaps as outputs of the collation step.