summaryrefslogtreecommitdiffstats
path: root/Source/CPack/cmCPackGenerator.cxx
Commit message (Collapse)AuthorAgeFilesLines
* Fix Clang -Wbitwise-instead-of-logical warningsBrad King2021-10-131-1/+1
|
* Rename cmProp in cmValueMarc Chevrier2021-09-211-48/+48
|
* Use new SetOption signaturesMarc Chevrier2021-09-151-25/+20
|
* cmCPackGenerator::SetOption accepts cmProp or std::stringMarc Chevrier2021-09-151-4/+25
|
* cmProp: cm::string_view cast operator must be explicitMarc Chevrier2021-09-141-2/+2
| | | | | | | 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
* cmCPackGenerator::GetOption returns cmPropMarc Chevrier2021-09-131-83/+70
|
* CPack: Implement new variable CPACK_CUSTOM_INSTALL_VARIABLESNils Gladitz2021-05-231-0/+17
| | | | | | The new variable allows projects to define custom key=value pairs of variables to be set in CPack cmake_install.cmake script invocations. This allows install(SCRIPT|CODE) to be parameterized at runtime.
* cmGlobalGenerator: Add parallel parameter to GenerateCMakeBuildCommandfriendlyanon2021-05-011-1/+1
|
* CPack: Fix symbolic link detection for directoriesOlivier Iffrig2021-03-051-1/+2
| | | | | | | | In the case where the current path is a symlink to a directory, a trailing slash causes the link to be dereferenced, which means that any subsequent `FileIsSymlink` on it will return false. Fixes: #21886
* Code style: add missed explicit 'this->'Oleksandr Koval2021-01-051-31/+34
| | | | | CMake uses explicit 'this->' style. Using custom clang-tidy check we can detect and fix places where 'this->' was missed.
* configure_file: Add option for user defined permissionsAsit Dhal2020-10-241-1/+1
| | | | | | | User defined permissions and options to copy permissions are implemented. Fixes: #20866
* cmMakefile::GetDefinition: return cmPropVitaly Stakhovsky2020-09-021-14/+17
|
* Source: use cmNonempty()Vitaly Stakhovsky2020-07-281-20/+20
|
* Clean a few string conversionsVitaly Stakhovsky2020-07-091-1/+1
|
* configure_file: Add option to control file permissions transfer to copyRahul Gottipati2020-06-301-1/+1
| | | | Issue: #20866
* CPack: Introduce pre- and post- build actionsAlex Turbov2020-06-151-6/+44
| | | | | | | | | | | | | | | CPack learned the `CPACK_PRE_BUILD_SCRIPTS`, `CPACK_POST_BUILD_SCRIPTS`, and `CPACK_PACKAGE_FILES` variables. The first two are lists of scripts to perform - after pre-install files into a staging directory and before producing the resulting packages - after produsing the packages The post-build script(s) also get the list of actually produced packages in the `CPACK_PACKAGE_FILES`. Issue: #19077
* GetDefinition: avoid duplicate callsVitaly Stakhovsky2020-05-291-4/+3
|
* Merge topic 'cpack-symlinks'Brad King2020-04-221-0/+2
|\ | | | | | | | | | | | | bcc5cd44ed CPack: Do not recurse through directory symlinks Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4637
| * CPack: Do not recurse through directory symlinksBrad King2020-04-211-0/+2
| | | | | | | | | | | | | | | | Extend the fix from commit 7b8dcdd173 (CPack: Do not recurse through directory symlinks (#12284), 2011-08-27, v2.8.6~55^2) to more places in CPack. Issue: #12284
* | cmWorkingDirectory: Add GetOldDirectory methodBrad King2020-04-031-2/+2
|/
* Merge topic 'fix-cpack-deb-description-file'Brad King2020-01-131-2/+7
|\ | | | | | | | | | | | | d491f34a5e CPack: Fix regression in DEB generator description Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4204
| * CPack: Fix regression in DEB generator descriptionKyle Edwards2020-01-101-2/+7
| | | | | | | | Fixes: #20102
| * Merge topic 'cpack-custom-templates' into release-3.16Brad King2019-11-181-0/+11
| |\ | | | | | | | | | | | | | | | | | | | | | 7d6ab5dc5b CPack: Restore support for custom package configuration templates Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Kyle Edwards <kyle.edwards@kitware.com> Merge-request: !4054
* | | GlobalGenerator family: modernize memory managementMarc Chevrier2020-01-071-2/+2
| | |
* | | Merge topic 'cpack-custom-templates'Brad King2019-11-181-0/+11
|\ \ \ | |/ / |/| / | |/ | | | | | | | | 7d6ab5dc5b CPack: Restore support for custom package configuration templates Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Kyle Edwards <kyle.edwards@kitware.com> Merge-request: !4054
| * CPack: Restore support for custom package configuration templatesBrad King2019-11-151-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | Refactoring in commit 98617f1be0 (Refactor: Move CPack internal files to `Internal/CPack/` directory, 2019-07-09, v3.16.0-rc1~449^2) accidentally changed the public-facing names of the templates. The name passed to `FindTemplate` is searched in `CMAKE_MODULE_PATH` and should not change. Remove the `Internal/CPack/` prefix on the names added by that commit. Teach `FindTemplate` to use our builtin default directly when the public-facing name is not found in `CMAKE_MODULE_PATH`. Fixes: #19979
* | CPack: Remove CPACK_INSTALL_CMAKE_CONFIGURATIONSAlex Turbov2019-11-111-8/+0
|/ | | | | | | | | | | In commit da5ac4bb60 (cpack: Add `CPACK_INSTALL_CMAKE_CONFIGURATIONS` variable, 2019-07-10, v3.16.0-rc1~165^2) we added both the variable and support for `cpack -C` with multiple configurations. Drop the variable because the `package` target cannot ensure that all of the configurations are built. Keep the command-line interface so that it can be used manually in scripts. Fixes: #19918
* Revise include order using clang-format-6.0Kitware Robot2019-10-011-3/+4
| | | | | Run the `clang-format.bash` script to update our C and C++ code to a new include order `.clang-format`. Use `clang-format` version 6.0.
* Merge topic 'cpack-install-multiple-configurations'Brad King2019-09-031-21/+49
|\ | | | | | | | | | | | | | | da5ac4bb60 cpack: Add `CPACK_INSTALL_CMAKE_CONFIGURATIONS` variable d4e6b2ae25 Refactor: Use `unique_ptr` instead of raw pointer Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3533
| * cpack: Add `CPACK_INSTALL_CMAKE_CONFIGURATIONS` variableAlex Turbov2019-08-301-17/+47
| | | | | | | | | | | | | | | | | | For the multi-configuration generators one can specify the list of configurations to include in the package. E.g. having a project, where debug libraries have a suffix to distinct them from the release builds, one can build the package containing both `Debug` and `Release` binaries.
| * Refactor: Use `unique_ptr` instead of raw pointerAlex Turbov2019-08-191-5/+3
| |
* | Source sweep: Replace cmExpandList with the shorter cmExpandedListSebastian Holtermann2019-08-231-18/+16
| | | | | | | | | | | | | | | | | | | | | | | | This replaces the code pattern ``` std::vector<std::string> args; cmExpandList(valueStr, args, ...) ``` with ``` std::vector<std::string> args = cmExpandedList(valueStr, ...) ```
* | Source sweep: Use cmStrCat for string concatenationSebastian Holtermann2019-08-221-24/+17
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch is generated by a python script that uses regular expressions to search for string concatenation patterns of the kind ``` std::string str = <ARG0>; str += <ARG1>; str += <ARG2>; ... ``` and replaces them with a single `cmStrCat` call ``` std::string str = cmStrCat(<ARG0>, <ARG1>, <ARG2>, ...); ``` If any `<ARGX>` is itself a concatenated string of the kind ``` a + b + c + ...; ``` then `<ARGX>` is split into multiple arguments for the `cmStrCat` call. If there's a sequence of literals in the `<ARGX>`, then all literals in the sequence are concatenated and merged into a single literal argument for the `cmStrCat` call. Single character strings are converted to single char arguments for the `cmStrCat` call. `std::to_string(...)` wrappings are removed from `cmStrCat` arguments, because it supports numeric types as well as string types. `arg.substr(x)` arguments to `cmStrCat` are replaced with `cm::string_view(arg).substr(x)`
* Source sweep: Use cmIsOn instead of cmSystemTools::IsOnSebastian Holtermann2019-08-171-11/+9
| | | | | | | | | This replaces invocations of - `cmSystemTools::IsInternallyOn` with `cmIsInternallyOn` - `cmSystemTools::IsNOTFOUND` with `cmIsNOTFOUND` - `cmSystemTools::IsOn` with `cmIsOn` - `cmSystemTools::IsOff` with `cmIsOff`
* Source code: Use cmExpandList instead of cmSystemTools::ExpandListArgumentSebastian Holtermann2019-08-141-12/+10
|
* Cleanups: Use cmHas{Prefix,Suffix} instead of String{Starts,Ends}WithSebastian Holtermann2019-08-011-1/+2
|
* cmMakefile: Let AddDefinition accept a value as cm::string_viewSebastian Holtermann2019-07-241-7/+6
| | | | | | | | | | | | | | | | 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.
* Merge topic 'cpack-install-scripts'Craig Scott2019-07-221-2/+14
|\ | | | | | | | | | | | | 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-211-2/+14
| | | | | | | | | | | | | | | | | | | | 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>
* | IWYU: Fix handling of <memory> standard headerBrad King2019-07-101-1/+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.
* Use cmFileTimes instead of cmSystemToolsFileTime interfaceSebastian Holtermann2019-05-221-1/+2
|
* cmSystemTools: More functions accept `std::string` paramsVitaly Stakhovsky2019-02-201-2/+1
|
* cmMakefile::ConfigureFile: Accept `std::string` parametersVitaly Stakhovsky2019-02-191-1/+2
|
* Merge topic 'systools-stdstring2'Brad King2019-02-131-2/+1
|\ | | | | | | | | | | | | 080a79ca4a cmSystemTools: More methods accept `std::string` params Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2952
| * cmSystemTools: More methods accept `std::string` paramsVitaly Stakhovsky2019-02-111-2/+1
| |
* | cmake: Progress functions use `std::string` paramVitaly Stakhovsky2019-02-111-2/+3
|/
* cmSystemTools::RunSingleCommand: Accept std::string argumentVitaly Stakhovsky2019-02-061-3/+3
|
* Merge topic 'functional-callbacks'Brad King2019-01-301-7/+3
|\ | | | | | | | | | | | | | | | | | | 8c92db829b MessageCallback: Remove unused bool& argument bcee24aecc Use `std::function` for callbacks Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: vvs31415 <vstakhovsky@fastmail.com> Acked-by: Daniel Pfeifer <daniel@pfeifer-mail.de> Merge-request: !2872
| * Use `std::function` for callbacksRegina Pfeifer2019-01-291-7/+3
| |
* | cmSystemTools: copy file member functions accept std::string paramsVitaly Stakhovsky2019-01-291-4/+2
|/ | | | | Cleaned up `c_str()`s. `cmSystemTools::CopyFileIfDifferent()` removed as redundant.