summaryrefslogtreecommitdiffstats
path: root/Source/CPack
Commit message (Collapse)AuthorAgeFilesLines
* CPackExt: Add CPACK_EXT_ENABLE_STAGING and CPACK_EXT_PACKAGE_SCRIPTNils Gladitz2018-08-143-21/+52
| | | | | | | | | CPACK_EXT_ENABLE_STAGING enables optional staging and CPACK_EXT_PACKAGE_SCRIPT allows to specify an optional script file that can package staged files via an external packaging tool. Issue: #18236
* Merge topic 'cleanup-find-cstr'Brad King2018-08-091-1/+1
|\ | | | | | | | | | | | | 69ca85cc7f Remove unnecessary c_str() in RegularExpression::find calls Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2271
| * Remove unnecessary c_str() in RegularExpression::find callsVitaly Stakhovsky2018-08-071-1/+1
| |
* | cmGeneratedFileStream: clang-tidy applied to remove redundant ``c_str`` callsSebastian Holtermann2018-08-078-21/+21
|/ | | | | | | | | | | | | | | After changing the ``cmGeneratedFileStream`` methods to accept ``std::string const&`` instead of ``const char*`` we don't need to call ``std::string::c_str`` anymore when passing a ``std::string`` to a ``cmGeneratedFileStream`` method. This patch removes all redundant ``std::string::c_str`` calls when passing a string to a ``cmGeneratedFileStream`` method. It was generated by building CMake with clang-tidy enabled using the following options: -DCMAKE_CXX_CLANG_TIDY=/usr/bin/clang-tidy-4.0;-checks=-*,readability-redundant-string-cstr;-fix;-fix-errors
* productbuild: Capture stderr too in CPackProductBuild logsMuhammad Ismail Soboute2018-08-061-2/+2
| | | | | Stdout and stderr will be merged. Fixes: #18234
* CPack: Fix log typos (spaces in the wrong places)Sylvain Joubert2018-07-181-5/+5
|
* WiX: Add the build directory to IncludeSearchPaths for candle.exeLars Schmertmann2018-07-121-0/+4
| | | | | | | | | | CPack creates cpack_variables.wxi in the build directory. In the WiX template it can be used by <?include "cpack_variables.wxi"?> because the template is configured into main.wxs in the build directory. Because the extra source files are in the source directory it was necessary to use <?include "$(sys.CURRENTDIR)_CPack_Packages\win32\WIX\cpack_variables.wxi"?>. This requires knowledge about the build directory structure and is avoided by this change by adding the build directory to the IncludeSearchPaths.
* Merge topic 'cpack-external'Brad King2018-07-036-276/+720
|\ | | | | | | | | | | | | | | | | | | | | | | 4c71548766 Help: Add release notes for CPack External generator 47c87cdd1f Help: Add documentation for CPack External generator 2ef966bc77 Testing: Add test for CPack External generator 80914d88da CPack: Add "CPack External" generator 3ced881db6 cmCPackGenerator: Store CPACK_INSTALL_CMAKE_PROJECTS in an internal field 4938abb600 cmCPackGenerator: Refactor InstallProjectViaInstallCMakeProjects() Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2142
| * CPack: Add "CPack External" generatorKyle Edwards2018-07-023-0/+382
| | | | | | | | | | | | | | | | This generator doesn't actually package the files. Instead, it provides a metadata JSON file that can be used by external packaging software to do its own packaging. This JSON file provides information about the components, component groups, installation types, and CMake projects.
| * cmCPackGenerator: Store CPACK_INSTALL_CMAKE_PROJECTS in an internal fieldKyle Edwards2018-07-023-11/+45
| | | | | | | | | | By storing this information in an internal field in the class, it can be used later on by generators that need it.
| * cmCPackGenerator: Refactor InstallProjectViaInstallCMakeProjects()Kyle Edwards2018-07-022-268/+296
| | | | | | | | | | | | | | This refactoring will allow cmCPackExtGenerator to skip the install step while still gathering up information about the CPack components and groups. Besides, this function was too long, and needed to be broken up anyway.
* | Merge topic 'cpack-fix-deb-packaging'Brad King2018-07-031-0/+6
|\ \ | |/ |/| | | | | | | | | 2774259100 CPack/Deb: Restore setting of root as the owner of files Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2178
| * CPack/Deb: Restore setting of root as the owner of filesAndrew Fuller2018-07-021-0/+6
| | | | | | | | | | | | Refactoring in commit v3.10.0-rc1~220^2 (cmCPackDebGenerator: Use libarchive to create .deb file) accidentally broke this for the top-level archive.
* | CPack: Move internal implementation modules into Internal/CPack directoryKyle Edwards2018-06-216-8/+8
|/ | | | | | | | | | | | | | | These modules are not meant to be included by user code, they are only an internal implementation detail for CPack. Having them live in the main Modules directory with documentation was misleading, so they have been moved into Modules/Internal/CPack, and their documentation has been stripped following its move into the new "CPack Generators" section. No-op modules which contained only documentation have been removed entirely. The only module that hasn't been moved is CPackIFW, because it contains user-facing macros which would be lost if it were moved. So, the CPackIFW module has been updated with a note explaining what needs to (eventually) happen.
* Fix misc. typosluz.paz2018-06-042-5/+5
| | | | Found via `codespell` and `grep`
* Revise C++ coding style using clang-format-6.0Kitware Robot2018-06-0125-361/+472
| | | | | | | | | | | | Run the `clang-format.bash` script to update all our C and C++ code to a new style defined by `.clang-format`. Use `clang-format` version 6.0. * If you reached this commit for a line in `git blame`, re-run the blame operation starting at the parent of this commit to see older history for the content. * See the parent commit for instructions to rebase a change across this style transition commit.
* CPack: Add NuGet supportAlex Turbov2018-05-113-0/+182
| | | | | | | | | | | | | | | | | | | | | | | | | | | Create a CPack generator that uses `nuget.exe` to create packages: https://docs.microsoft.com/en-us/nuget/what-is-nuget NuGet packages could be easily produced from a `*.nuspec` file (running `nuget pack` in the directory w/ the spec file). The spec filename does not affect the result `*.nupkg` name -- only `id` and `version` elements of the spec are used (by NuGet). Some implementation details: * Minimize C++ code -- use CMake script do to the job. It just let the base class (`cmCPackGenerator`) to preinstall everything to a temp directory, render the spec file and run `nuget pack` in it, harvesting `*.nupkg` files...; * Ignore package name (and use default paths) prepared by the base class (only `CPACK_TEMPORARY_DIRECTORY` is important) -- final package filename is a responsibility of NuGet, so after generation just scan the temp directory for the result `*.nupkg` file(s) and update `packageFileNames` data-member of the generator; * The generator supports _all-in-one_ (default), _one-group-per-package_ and _one-component-per-package_ modes.
* Help: Improve accuracy, readability and cross-referencing of cpack docsCraig Scott2018-04-271-9/+11
| | | | | | This is primarily a cleanup of the cpack(1) page. The cpack.cxx file and CPack module were also updated to make the docs relating to the generator specification and option names consistent in all three places.
* Merge topic 'cpack-trace-nullptr'Brad King2018-04-111-4/+4
|\ | | | | | | | | | | | | 6f2701abf6 CPack: Fix crash on invalid generator name Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1950
| * CPack: Fix crash on invalid generator nameBrad King2018-04-101-4/+4
| | | | | | | | | | | | | | | | In commit v3.11.0-rc1~68^2 (CPack: accept --trace and --trace-expand, 2017-12-09) a nullptr dereference was added that occurs when `cpack -G NotAGenerator` is invoked. Add the needed condition. Fixes: #17900
* | cmake_minimum_required: Optionally set policies with version rangeBrad King2018-03-211-1/+2
| | | | | | | | | | | | | | | | Teach `cmake_minimum_required` and `cmake_policy(VERSION)` to support a version range of the form `<min>[...<max>]`. Define this to mean that version `<min>` is required, but known policies up to those introduced by `<max>` will be set to `NEW`. This will allow projects to easily specify a range of versions for which they have been updated.
* | cmWorkingDirectory: Check success of current dir changesCraig Scott2018-03-082-0/+24
|/
* Reduce raw string pointers usage.Pavel Solodovnikov2018-01-314-18/+13
| | | | | | | | | | * Change some functions to take `std::string` instead of `const char*` in the following classes: `cmMakeFile`, `cmake`, `cmCoreTryCompile`, `cmSystemTools`, `cmState`, `cmLocalGenerator` and a few others. * Greatly reduce using of `const char*` overloads for `cmSystemTools::MakeDirectory` and `cmSystemTools::RelativePath`. * Remove many redundant `c_str()` conversions throughout the code.
* Merge topic 'reduce-temporaries'Brad King2018-01-296-12/+12
|\ | | | | | | | | | | | | c85bb007 Reduce allocation of temporary values on heap. Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1698
| * Reduce allocation of temporary values on heap.Pavel Solodovnikov2018-01-266-12/+12
| | | | | | | | | | - Use `std::move` while inserting temporary results into vectors. - Change `push_back` to `emplace_back` where appropriate.
* | Merge topic 'ctest-chrono'Brad King2018-01-267-32/+41
|\ \ | |/ |/| | | | | | | | | | | | | e6a80ccf Make use of std::chrono throughout every component ff62b005 CTest: add safe conversion from cmDuration to integer types 695951bc CTest: introduce cmDuration Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1592
| * Make use of std::chrono throughout every componentWouter Klouwen2018-01-237-32/+41
| | | | | | | | | | | | | | | | This commit continues the changes made in CTest to support std::chrono by applying it throughout every component where a duration was used. No functional change intended.
* | Merge topic 'cpack_trace'Brad King2018-01-243-0/+34
|\ \ | | | | | | | | | | | | | | | | | | 93bc5848 CPack: accept --trace and --trace-expand Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1583
| * | CPack: accept --trace and --trace-expandIsaiah Norton2018-01-233-0/+34
| |/
* | Extend libuv file translate mode workaround to all executablesBrad King2018-01-231-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since libuv commit v1.14.1~7 (win: add uv__once_init() calls, 2017-08-30) the libuv initialization of the file translate mode may take place even if we do not use a uv loop. This change was included in our libuv update commit f4a26c748b (libuv 2018-01-19). Therefore use of libuv even through `cmSystemTools::GetRealPath` in any executable may trigger its file translate mode setting. Factor out the logic added to `cmake.exe` by commit v3.9.0-rc4~10^2 (cmake: Fix default file translate mode when using libuv, 2017-06-13) and re-use to initialize all executables. Issue: #16962
* | cpack: Enable MSVC debug hook earlierBrad King2018-01-231-2/+1
|/ | | | | All other executables do this just after console and command-line encoding conversion. Do the same in CPack.
* Various typo fixesLuz Paz2018-01-031-1/+1
| | | | Some are user-facing. Others are source comments.
* CPack/IFW: Add option to control deletion of the install directoryJean-Philippe Lebel2017-12-152-0/+17
| | | | | | Added support for QT IFW "RemoveTargetDir" boolean option. QTIFW supports an option to prevent, or not, deletion of the installation directory. This is a direct pass-through to that variable.
* CPack: enable all CMake policies for generator scriptsDomen Vrankar2017-12-091-4/+11
|
* Merge topic 'cpack-pkg-fix'Brad King2017-12-041-1/+1
|\ | | | | | | | | | | | | f25d87db CPack: Fix macOS PKG component dependency information Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1547
| * CPack: Fix macOS PKG component dependency informationAlexander Wittig2017-12-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Refactoring in commit v3.7.0-rc1~523^2 (CPack/PackageMaker: port to cmXMLWriter, 2016-06-08) accidentally broke `distribution.dist` generation when there are dependencies between components and the pkg (or the derived productbuild) generator are used. The resulting package cannot be installed and instead the Apple Installer app shows a "Javascript error" message. The problem is that a `std::ostringstream` is constructed with some content, but the stream pointer still points to the beginning of the stream, so subsequent writes overwrite the initial content instead of appending.
* | CPack: enable setting default dir creation permissionsDomen Vrankar2017-11-082-12/+49
| | | | | | | | | | | | | | | | | | | | | | Introduces CPACK_DEFAULT_DIRECTORY_INSTALL_PERMISSIONS variable which adds support for functionality introduced by CMAKE_DEFAULT_DIRECTORY_INSTALL_PERMISSIONS variable. Fixes #17333 # Conflicts: # Help/release/dev/cmake-default-dir-install-permissions.rst
* | Fix trivial typos in textluzpaz2017-11-032-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some are user facing. Found using codespell -q 3 --skip="./Utilities" -I .cmake-whitelist.txt` whereby the whitelist contained: ans dum helpfull emmited emmitted buil iff isnt nto ot pathes substract te todays upto whitespaces
* | Merge topic 'cpack-wix-cygwin'Brad King2017-10-166-14/+95
|\ \ | | | | | | | | | | | | | | | | | | | | | e1409101 cpack wix: support WiX generator on Cygwin e258fe03 cpack wix: fix path error on cygwin Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1367
| * | cpack wix: support WiX generator on CygwinStephen Sorley2017-10-136-14/+95
| |/ | | | | | | | | | | | | | | | | | | | | | | Cygwin-built CMake now converts paths from Cygwin to Windows form (using cygpath -w) before they're passed to WiX. The Wix generator on Cygwin requires the libuuid-dev package when building CMake. However, the DLL it links to is installed by default as part of Cygwin's core libs, so it does not need to be distributed. If libuuid-dev isn't available, CMake is simply built without Wix support on Cygwin.
* | cmCPackDragNDropGenerator: Improve error reportingClinton Stimpson2017-10-121-6/+14
|/ | | | When running hdiutil and other commands, capture errors and log them.
* CPack: Fix PackageMaker .dmg HFS+ creation on macOS APFS hostsBrad King2017-10-051-2/+2
| | | | | | | | | | | | When running `hdiutil create`, specify the HFS+ filesystem explicitly. Otherwise `hdiutil` may choose a filesystem based on the host. We do not want to create APFS images for `.dmg` packages because they may not mount on macOS versions prior to 10.12. This was missed in commit 39b50975d9 (CPack: Fix .dmg HFS+ creation on macOS APFS hosts, 2017-10-02). Reported-by: Alan Garny
* CPack: Fix .dmg HFS+ creation on macOS APFS hostsBrad King2017-10-022-2/+3
| | | | | | | When running `hdiutil create`, specify the HFS+ filesystem explicitly. Otherwise `hdiutil` may choose a filesystem based on the host. We do not want to create APFS images for `.dmg` packages because they may not mount on macOS versions prior to 10.12.
* CPack: put local variable on the stackRolf Eike Beer2017-09-291-4/+3
|
* Merge topic 'clang-tidy'Brad King2017-09-296-30/+32
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 77f674be Fix some occurrences of readability-braces-around-statements f0bab294 Convert some leftover loops to C++11 range-based loop b5d7f5b0 Fix occurrences of readability-non-const-parameter 9a2da339 Fix some occurrences of readability-avoid-const-params-in-decls 870dd06d Fix left-over occurrences of else-after-return 2033abff Fix minor clang-tidy findings 79b8c380 Improve several occurrences of vector::push_back in loops a45928cd Fix some occurrences of missing override keywords ... Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1292
| * Fix some occurrences of readability-braces-around-statementsMatthias Maennich2017-09-282-2/+4
| | | | | | | | | | | | Fix issues diagnosed by clang-tidy [readability-braces-around-statements] Signed-off-by: Matthias Maennich <matthias@maennich.net>
| * Convert some leftover loops to C++11 range-based loopMatthias Maennich2017-09-282-15/+14
| | | | | | | | | | | | Fix issues diagnosed by clang-tidy [modern-loop-convert] Signed-off-by: Matthias Maennich <matthias@maennich.net>
| * Fix left-over occurrences of else-after-returnMatthias Maennich2017-09-282-8/+8
| | | | | | | | | | | | | | | | Fix issues diagnosed by clang-tidy [readability-else-after-return] These were mostly only showing up on OSX. Signed-off-by: Matthias Maennich <matthias@maennich.net>
| * Fix minor clang-tidy findingsMatthias Maennich2017-09-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | Fix issues diagnosed by clang-tidy - modernize-use-bool-literals - misc-string-integer-assignment - performance-faster-string-find - readability-redundant-string-cstr - readability-delete-null-pointer Signed-off-by: Matthias Maennich <matthias@maennich.net>
| * Clean up some C-Style castsMatthias Maennich2017-09-281-1/+1
| | | | | | | | | | | | Fix issues diagnosed by clang-tidy [google-readability-casting] Signed-off-by: Matthias Maennich <matthias@maennich.net>