summaryrefslogtreecommitdiffstats
path: root/Source/cmMakefile.h
Commit message (Collapse)AuthorAgeFilesLines
* cmMakefile: support "after generator target" generator actionsBen Boeckel2024-08-271-5/+23
| | | | | These actions may require additional information gathered during generation. Run them at the appropriate time.
* iOS: Add support for Mac CatalystRaul Metsma2024-07-031-0/+3
| | | | | Issue: #20132 Signed-off-by: Raul Metsma <raul@metsma.ee>
* cmMakefile: Reduce GetModulesFile caller allocationsBrad King2024-03-221-3/+3
|
* install(EXPORT): Export find_dependency() callsKyle Edwards2023-11-131-0/+18
| | | | | | Issue: #20511 Co-Authored-by: Brad King <brad.king@kitware.com> Co-Authored-by: Robert Maynard <rmaynard@nvidia.com>
* .xcframework: Check SupportedPlatformVariantKyle Edwards2023-08-151-0/+3
|
* IWYU: Update for Debian 12 CI jobBrad King2023-07-281-3/+5
| | | | | | `include-what-you-use` diagnostics, in practice, are specific to the environment's compiler and standard library. Update includes to satisfy IWYU for our CI job under Debian 12.
* apple: add preliminary visionOS supportGregor Jasny2023-07-111-0/+2
|
* AddCacheEntry: Suppress raw pointer usageMarc Chevrier2023-05-301-4/+13
|
* SetProperty: suppress raw pointer usageMarc Chevrier2023-05-261-2/+5
|
* CMake code rely on cmList class for CMake lists management (part. 2)Marc Chevrier2023-04-291-2/+0
|
* cmMakefile: Factor out helper to get recursion depth limitBrad King2023-03-131-0/+2
|
* cmMakefile: Store recursion depth limit as size_tBrad King2023-03-131-3/+3
|
* Apple: Handle generation and comsuption of text-based stubs (.tbd files)Marc Chevrier2023-03-011-0/+4
| | | | Fixes: #24123
* find_package: Use <PACKAGENAME>_ROOT variables as search prefixesBrad King2023-02-231-0/+3
| | | | | | | | | Extend commit eb35d8884b (find_package: Use PackageName_ROOT variables as search prefixes, 2018-03-15, v3.12.0-rc1~349^2) to also check upper-case `<PACKAGENAME>_ROOT` variables. Add policy `CMP0144` to enable the behavior in a compatible way. Fixes: #24403
* cmFindPackageCommand: Refactor CMP0074 logic to de-duplicate lookupsBrad King2023-02-231-1/+2
|
* cmMakefile: add support for a "synthesized" targetBen Boeckel2023-02-141-1/+4
| | | | | | 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.
* Merge topic 'add_subdirectory_system'Brad King2022-09-271-1/+1
|\ | | | | | | | | | | | | 2eb30a7036 add_subdirectory: Add SYSTEM option Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7399
| * add_subdirectory: Add SYSTEM optionDa Quexian2022-09-261-1/+1
| | | | | | | | | | Fixes: #22401 Signed-off-by: Da Quexian <daquexian566@gmail.com>
* | Merge topic 'check-library-properties-fix-performances-regression'Brad King2022-09-091-1/+0
|\ \ | | | | | | | | | | | | | | | | | | | | | 985b4c82a6 Check link libraries properties: fix performances regression a47eef32a3 renames method FinalizeTargetCompileInfo() in FinalizeTargetConfiguration(). Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7651
| * | Check link libraries properties: fix performances regressionMarc Chevrier2022-09-071-1/+0
| |/ | | | | | | Fixes: #23939
* | cmMakefile: add RaiseScope for list of variablesMarc Chevrier2022-09-031-0/+1
| |
* | cmMakefile::VariablePushPop: helper class to manage variable scopesMarc Chevrier2022-08-221-0/+14
| |
* | cmMakefile::RaiseScope: Add support for cmValue argumentMarc Chevrier2022-08-221-0/+4
| |
* | Add cmake_language(GET_MESSAGE_LOG_LEVEL) sub commandAlexandru Croitor2022-06-281-0/+1
|/ | | | | | | | | | | | | | | | | The new sub-command writes a string representation of the current log level to the output variable given to the sub-command. Given that the log-level might be set either via the --log-level command line option or via the CMAKE_MESSAGE_LOG_LEVEL cache / regular variables, the priority for each of the log level sources is as follows, with the first one being the highest: 1) --log-level 2) CMAKE_MESSAGE_LOG_LEVEL regular variable 3) CMAKE_MESSAGE_LOG_LEVEL cache variable 4) default log level (STATUS) Fixes: #23572
* clang-tidy: address `modernize-use-default-member-init` lintsBen Boeckel2022-05-241-2/+2
|
* Trace: process else and elseif commands correctlyBraulio Valdivielso Martinez2022-03-251-2/+9
| | | | | | | | | | | | | | | | | There have been two bugs reported about the `else` and `elseif` commands in the context of the tracing functionality and the json-v1 format (#23191 #22315). In essence, the reported traces referred to the layer of the stacktrace immediately on top of the expected ones. This MR fixes both issues. My solution adds a new parameter to the `PrintCommandTrace` function, `commandMissingFromStack`, that callers can specify if the command they want to report a trace for is not a regular part of the stack maintained in `cmMakefile`. This is only the case for `else` and `elseif`. The other bug is fixed by having the caller pass a `cmListFileBacktrace`, which helps in getting the right lines, file names... for the reported command. Fixes: #23191 #22315
* cmMakefile: Add missing initializer for recently added memberBrad King2022-03-151-1/+1
| | | | | | | In commit 2f1ffa003c (find_package: Add support for default GLOBAL imported targets, 2022-03-10) we added a field without an initializer. This was exposed by a few failures in nightly testing. Previously it worked only by chance that the member's memory had suitable values.
* find_package: Add support for default GLOBAL imported targetsJohn Parent2022-03-101-0/+39
| | | | | | | | | Allow find package to promote scope of imported targets by specifying an argument to `find_package` or by specifying a CMake variable. * Add support for CMAKE_GLOBAL_IMPORT_SCOPE variable * Add support for GLOBAL argument to find_package Additionally add testing for above features.
* Merge topic 'debug-find'Brad King2022-02-111-0/+14
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | 38de1bef2d find_package: Improve --debug-find-pkg= when using a find module d634d20397 find_package: Avoid printing debug output header multiple times df3e29450a find_package: Mention package name in Config mode debug output 636ca7f25c find_package: Fix find module name in --debug-find output 596e185409 find_package: Improve formatting of --debug-find output 2f43527574 Tests: Improve order of RunCMake.find_package cases a690523fcf cmFindPackageCommand: Drop ComputeIfDebugModeWanted overload Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !6973
| * find_package: Improve --debug-find-pkg= when using a find moduleBrad King2022-02-101-0/+14
| | | | | | | | | | | | | | | | | | Extend the feature added by commit d7b18895bc (cmake: Add filtered debug-find options, 2021-12-07, v3.23.0-rc1~217^2) to enable debug output for `find_*` calls within a find module or cmake package configuration file. Fixes: #23211
* | Genex: Add $<LINK_LIBRARY:...>Marc Chevrier2022-02-071-0/+1
|/ | | | | | | | This generator expression offers the capability, for the link step, to decorate libraries with prefix/suffix flags and/or adding any specific flag for each library. Fixes: #22812, #18751, #20078, #22703
* cmCustomCommand: Track main dependency explicitlyNAKAMURA Takumi2021-12-141-1/+1
| | | | | | | Store the main dependency as the first entry in the dependency list plus a boolean member indicating its existence. Note that this slightly changes existing behavior: the main dependency was previously the last entry of the dependency list.
* cmMakefile: Simplify Add*Command and adopt to cmAddCustom*CommandNAKAMURA Takumi2021-11-181-36/+8
|
* cmMakefile: Simplify detail:::Add{Custom,Utility}CommandNAKAMURA Takumi2021-11-181-1/+14
| | | | | | | | | Note 1: `detail::AddCustomCommandToTarget()` resets cc, since cc is not moved away. Note 2: In `detail::AddUtilityCommand()`, a few vars are preserved before using. Their refs will be alive in most cases, but cc might be destroyed in the future.
* cmMakefile: Introduce GeneratorAction as the class.NAKAMURA Takumi2021-11-181-3/+24
|
* cmMakefile: Move CMP0116 lookup into Add{Custom,Utility}CommandNAKAMURA Takumi2021-11-181-18/+16
| | | | Avoid repeating it at every call site.
* Rename cmProp in cmValueMarc Chevrier2021-09-211-7/+7
|
* cmProp: cm::string_view cast operator must be explicitMarc Chevrier2021-09-141-0/+4
| | | | | | | To avoid ambiguity on std::string assigment between the following two cmProp cast operators: * operator const std::string&() const noexcept * operator cm::string_view() const noexcept
* Refactor: Convert parallel string/backtrace vectors to BT vectorsKyle Edwards2021-09-031-11/+5
|
* Enhancement: SetProperty accept cmProp or std::stringMarc Chevrier2021-08-251-0/+5
| | | | | Methods SetProperty of classes cmPropertyMap, cmStateDirectory and cmMakefile accept now cmProp or std::string as argument.
* Refactor: reduce cmToCStr usageMarc Chevrier2021-08-191-4/+4
|
* cmMakefile: Split out CreateNewTarget from AddNewTargetNAKAMURA Takumi2021-07-081-0/+5
| | | | `CreateNewTarget` tells whether the target is inserted or not.
* cmMakefile: Add helper to initialize CMAKE_CONFIGURATION_TYPESBrad King2021-06-301-0/+2
| | | | | Factor out duplicate code from the Ninja Multi-Config, Visual Studio, and Xcode generators.
* Source: Fix typos and spelling in commentsJosef Angstenberger2021-05-071-1/+1
|
* foreach(): loop variables are only available in the loop scopeMarc Chevrier2021-04-281-0/+1
| | | | Fixes: #20553
* cmCustomCommand: Record value of CMP0116 at time of creationKyle Edwards2021-02-231-16/+18
|
* file(GENERATE): Support new line styleAsit Dhal2021-02-011-1/+2
| | | | Fixes: #19198
* Code style: add missed explicit 'this->'Oleksandr Koval2021-01-051-1/+1
| | | | | CMake uses explicit 'this->' style. Using custom clang-tidy check we can detect and fix places where 'this->' was missed.
* file(GENERATE): Support options to manipulate file permissionsAsit Dhal2020-12-211-1/+1
| | | | Fixes: #15653
* cmLocalGenerator: Adopt custom target 'force' output name generationBrad King2020-12-151-5/+0
|