summaryrefslogtreecommitdiffstats
path: root/Source/cmStateDirectory.cxx
Commit message (Collapse)AuthorAgeFilesLines
* Rename cmProp in cmValueMarc Chevrier2021-09-211-19/+21
|
* Refactor: Convert parallel string/backtrace vectors to BT vectorsKyle Edwards2021-09-031-139/+47
|
* Enhancement: SetProperty accept cmProp or std::stringMarc Chevrier2021-08-251-2/+14
| | | | | Methods SetProperty of classes cmPropertyMap, cmStateDirectory and cmMakefile accept now cmProp or std::string as argument.
* cmProp: refactoring: transform alias in classMarc Chevrier2021-08-081-15/+15
| | | | | | To handle safely the values used by CMake variables and properties, introduce the class cmProp as a replacement from the simple pointer to std::string instance.
* Add directory property to list imported targetsBrad King2021-06-101-0/+6
| | | | | | | Model the change after commit cbca65826c (Add directory property to list buildsystem targets, 2016-09-19, v3.7.0-rc1~79^2~1). Fixes: #22291
* cmState: Record imported target names in each directoryBrad King2021-06-101-0/+5
| | | | | Model the change after commit 089868a244 (cmState: Record buildsystem target names in each directory, 2016-09-16, v3.7.0-rc1~79^2~3).
* cmOutputConverter: Adopt relative path conversion helpersBrad King2021-05-171-89/+0
| | | | Move them up from cmLocalGenerator and out of cmStateDirectory.
* cmStateDirectory: Clarify relative path top selection logicBrad King2021-05-171-38/+18
| | | | | Re-implement the same algorithm using direct iteration without collecting a vector first.
* cmStateDirectory: Remove network path logic from relative path top selectionBrad King2021-05-171-12/+1
| | | | | | | | | | | | The logic skipping relative paths for build trees on network paths came from commit b5035770bc (BUG: On Windows network paths do not really work..., 2003-12-24, v2.4.0~3517). However, since commit ad4055f3e2 (ENH: Set RelativePathTopSource and RelativePathTopBinary independently ..., 2007-03-07, v2.6.0~2061) we effectively ignore this logic if the build tree is inside the source tree on a network path. Also, it is not clear that logic using `RelativePathTopBinary` is prepared for it to be empty. Remove the logic for now. If a problem comes up, we can choose a new approach.
* cmStateDirectory: Fix comment on relative path top directory selectionBrad King2021-05-171-4/+2
| | | | | | Fix the comment added by commit f6d4fa63f8 (cmStateDirectory: Comment relative path top directory selection approach, 2021-05-13) to describe the actual behavior.
* cmStateDirectory: Comment relative path top directory selection approachBrad King2021-05-131-0/+6
|
* cmStateDirectory: Rename ConvertToRelPathIf{Not => }ContainedBrad King2021-05-121-1/+1
| | | | The "Not" in the method name is backward from its logic.
* Code style: add missed explicit 'this->'Oleksandr Koval2021-01-051-4/+6
| | | | | CMake uses explicit 'this->' style. Using custom clang-tidy check we can detect and fix places where 'this->' was missed.
* cmIsOn: add overload accepting const std::string*Vitaly Stakhovsky2020-07-141-2/+1
|
* cmStateDirectory::GetProperty: return cmPropVitaly Stakhovsky2020-03-271-20/+20
|
* cmState::GetGlobalProperty: return cmPropVitaly Stakhovsky2020-03-251-1/+1
|
* cmPropertyMap: Introduce cmProp as return type for GetProperty() functionsVitaly Stakhovsky2020-03-131-2/+2
| | | | | | | Currently properties are usually stored internally as `std::string`. However, family of GetProperty() functions return them as `const char *` using `c_str()`. The proposed `cmProp`, typedef'ed as `const std::string *` will expose properties more naturally.
* AppendProperty: convert value param to std::stringVitaly Stakhovsky2020-01-251-1/+1
|
* Refactoring: use append functions from cmext/algorithmMarc Chevrier2019-12-171-1/+2
|
* cmstd: Modernize CMake system headersMarc Chevrier2019-09-201-5/+6
| | | | | | | | | | | | | | Provide a standardized way to handle the C++ "standard" headers customized to be used with current CMake C++ standard constraints. Offer under directory `cm` headers which can be used as direct replacements of the standard ones. For example: #include <cm/string_view> can be used safely for CMake development in place of the `<string_view>` standard header. Fixes: #19491
* clang-tidy: modernize-deprecated-headersRegina Pfeifer2019-09-161-1/+1
|
* clang-tidy: modernize-use-autoRegina Pfeifer2019-09-101-33/+18
| | | | | | Set the MinTypeNameLength option to an impossibly high value in order to limit the diagnostics to iterators. Leave new expressions and cast expressions for later.
* Source sweep: Use cmIsOn instead of cmSystemTools::IsOnSebastian Holtermann2019-08-171-1/+1
| | | | | | | | | This replaces invocations of - `cmSystemTools::IsInternallyOn` with `cmIsInternallyOn` - `cmSystemTools::IsNOTFOUND` with `cmIsNOTFOUND` - `cmSystemTools::IsOn` with `cmIsOn` - `cmSystemTools::IsOff` with `cmIsOff`
* IWYU: Fix handling of <memory> standard headerBrad King2019-07-101-0/+1
| | | | | | | | An old workaround for `std::allocator_traits<>::value_type` lints from IWYU on `std::vector<>` usage breaks IWYU's handling of `<memory>`. Convert the workaround to use the same approach we already use for a workaround of `std::__decay_and_strip<>::::__type` lints. Then update the `<memory>` inclusions to follow the now-correct IWYU lints.
* cmPropertyMap: Rename GetPropertyList method to GetKeysSebastian Holtermann2019-06-081-7/+1
|
* Use cmAppend to append ranges to std::vector instancesSebastian Holtermann2019-05-231-3/+1
|
* cmRange: Move to dedicated header fileRegina Pfeifer2019-02-211-0/+1
|
* Modernize: Use ranged for-loops when possibleArtur Ryt2019-02-071-6/+5
| | | | | | | Replaced most manual `const_iterator`-based loops and some reverse-iterator loops with range loops. Fixes: #18858
* cmOutputConverter: move ConvertToRelativePath to cmStateDirectory.Bruno Manganelli2019-01-271-0/+9
|
* cmOutputConverter: Moved ContainedInDirectory to cmStateDirectoryBruno Manganelli2018-12-081-0/+17
|
* link_directories(): enhance capabilitiesMarc Chevrier2018-09-251-0/+27
|
* LINK_DIRECTORIES: Add new properties and commandsMarc Chevrier2018-09-251-0/+53
| | | | | | | | | | | | These new capabilities enable to manage link directories Two new properties: * target properties: LINK_DIRECTORIES and INTERFACE_LINK_DIRECTORIES One new command * target_link_directories(): to populate target properties Fixes: #17215
* cmStateDirectory: use const std::string& for return valuesVitaly Stakhovsky2018-08-121-9/+9
|
* LINK_OPTIONS: Add new family of propertiesMarc Chevrier2018-06-061-0/+52
| | | | | | | | | | | | | | This family enable to manage link flags Three new properties: * directory property: LINK_OPTIONS * target properties: LINK_OPTIONS and INTERFACE_LINK_OPTIONS Two new commands * add_link_options(): to populate directory property * target_link_options(): to populate target properties Fixes: #16543
* Improve several occurrences of vector::push_back in loopsMatthias Maennich2017-09-281-0/+1
| | | | | | | Fix issues diagnosed by clang-tidy by pre-allocating the vector capacity before the loop [performance-inefficient-vector-operation]. Signed-off-by: Matthias Maennich <matthias@maennich.net>
* Meta: replace empty-string assignments with `clear()`.Pavel Solodovnikov2017-09-151-2/+2
|
* Meta: modernize old-fashioned loops to range-based `for`.Pavel Solodovnikov2017-09-121-8/+4
| | | | | | Changes done via `clang-tidy` with some manual fine-tuning for the variable naming and `auto` type deduction where appropriate.
* Fix several include-what-you-use findingsDaniel Pfeifer2016-11-081-0/+10
|
* cmState: Split auxiliary classes into separate filesStephen Kelly2016-10-191-0/+518
Port dependents to the new locations as needed. Leave behind a cmState.h include in cmListFileCache to reduce noise. It is removed in a following commit.