summaryrefslogtreecommitdiff
path: root/Modules/CPack.cmake
Commit message (Collapse)AuthorAgeFilesLines
* CPack: Add Inno Setup generatorJannik Alber2023-04-281-7/+17
|
* Help: Use role `:program:`Alex Turbov2022-11-061-1/+1
| | | | | When mention execitable names use Sphinx semantic role `:program` instead of ``executable`` or **executable**.
* CPack/NSIS: Document BOM mark for UTF-8 encoded LICENSE fileMojca Miklavec2022-10-241-1/+2
| | | | | Previously this requirement was only mentioned in the 3.20 release notes.
* CPack: re-use paths of tools discovered by CMakeFindBinUtilsMatteo Martelli2022-09-061-0/+37
| | | | | | | | `CMakeFindBinUtils.cmake` sets `CMAKE_<TOOL>` variables that in cross-compilation environments point to the toolchain specific executables: e.g. `CMAKE_OBJCOPY` might point to `<path_to_toolchain>/arm-poky-linux-gnueabi-objcopy`. Pass this information to CPack.
* Help: Replace mentions of ``-G`` option with :option:`-G` roleAlex Turbov2022-08-041-7/+8
|
* CPack: Remove the deprecated PackageMaker generatorCraig Scott2022-05-051-3/+0
| | | | | | This CPack generator has been deprecated since commit 7bf187499f (CPack: Deprecate PackageMaker generator, 2020-01-31). Fixes: #23344
* CPack/DMG: Do not use CPACK_RESOURCE_FILE_LICENSE for SLA by defaultBrad King2022-04-141-2/+14
| | | | | | | | Since macOS 12.0 deprecated the tools needed to attach a SLA to a `.dmg`, we should no longer do this by default. Add a policy to change the default to off. Fixes: #22978
* CPack: Add parallel zstd compressionRussell Greene2022-02-231-0/+6
|
* CPack: Format CPACK_THREADS compression methods as a definition listBrad King2022-02-221-6/+11
| | | | Prepare to add more entries beyond `xz`.
* CPack/DMG: Add explicit option to use CPACK_RESOURCE_FILE_LICENSE for SLABrad King2022-01-181-0/+5
| | | | | | | | | | | | | | | | | Since macOS 12.0, the ``hdiutil udifrez`` and ``hdiutil udifderez`` commands to embed and extract resources in a disk image are deprecated. The CPack DragNDrop Generator uses these to attach the SLA specified by the `CPACK_RESOURCE_FILE_LICENSE` option. Since that option is shared by multiple CPack generators, we cannot deprecate it. Instead, add an explicit option to control the behavior. This will give projects a way to package on future macOS versions that remove the commands. In order to provide a long-term transition away from attaching SLAs to disk images, update `cpack` to default this behavior to OFF. To retain compatibility for CMake projects, teach the CPack module to default the option to ON. Later a policy can be added to change the default. Issue: #22978
* CPack: Remove undocumented deprecated OSXX11 generatorBrad King2021-11-051-4/+1
| | | | | | | | This CPack generator was never documented, and has been deprecated since commit 2ed00e8ef8 (CPack: Deprecate OSXX11 generator, 2020-01-31, v3.17.0-rc1~45^2). Issue: #20235
* cmArchiveWrite: Consolidate multiple ways to set thread countNils Gladitz2021-04-221-5/+13
| | | | | | | | | | | | | Merge use of SetFilterOption() into more abstract thread count in cmArchiveWrite constructor. libarchive defaulting of threads for threads == 0 seems to be configuration dependent. Preemptively default thread count via std::thread::hardware_concurrency(). Also allow negative values for the thread count in which case the detected hardware concurrency is also used but the given absolute thread count is used as an upper limit.
* liblzma: Enable multi threaded stream encoding supportNils Gladitz2021-04-221-3/+4
|
* CPack: add CPACK_THREADS variable to control compression threadsRodolfo Lima2021-01-261-0/+23
| | | | | | | This allows setting how many threads the compressor will use. Currently only implemented for XZ when using system's lzma library. Fixes: #21715
* Help: Add `.. versionadded` directives to module docsNikita Nemkin2020-12-021-0/+12
| | | | Issue: #19715
* Help: Clarify variables specifying scripts to execute during packagingCraig Scott2020-11-031-16/+28
| | | Relates: #19077
* Fix typos identified using codespellJean-Christophe Fillion-Robin2020-07-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | See https://github.com/codespell-project/codespell#readme The following command was used: ``` codespell -q6 --skip="\ .git,\ *.json,\ ./Copyright.txt,\ ./Help/command/foreach.rst,\ ./Help/prop_test/REQUIRED_FILES.rst,\ ./Help/variable/CTEST_COVERAGE_COMMAND.rst,\ ./Modules/CMakeCheckCompilerFlagCommonPatterns.cmake,\ ./Modules/CMakeRCInformation.cmake,\ ./Modules/Internal/CPack/NSIS.template.in,\ ./Modules/FindMatlab.cmake,\ ./Modules/MatlabTestsRedirect.cmake,\ ./Modules/Platform/Windows-Clang.cmake,\ ./Modules/Platform/Windows-Intel-Fortran.cmake,\ ./Modules/Platform/Windows-MSVC.cmake,\ ./Source/CMakeVersion.cmake,\ ./Source/cmConvertMSBuildXMLToJSON.py,\ ./Source/cmCreateTestSourceList.cxx,\ ./Source/cmGlobalVisualStudio10Generator.cxx,\ ./Source/cmExportBuildFileGenerator.cxx,\ ./Source/cmExportInstallAndroidMKGenerator.cxx,\ ./Source/cmExportInstallFileGenerator.cxx,\ ./Source/cmExportSet.cxx,\ ./Source/cmExportTryCompileFileGenerator.cxx,\ ./Source/cmFindPackageCommand.cxx,\ ./Source/cmInstallCommand.cxx,\ ./Source/cmGeneratorExpressionLexer.cxx,\ ./Source/cmLocalVisualStudio7Generator.cxx,\ ./Source/cmOrderDirectories.cxx,\ ./Source/cmTarget.cxx,\ ./Source/kwsys/*,\ ./Source/QtDialog/CMakeSetupDialog.ui,\ ./Source/CPack/WiX/cmWIXRichTextFormatWriter.cxx,\ ./Source/CTest/cmParseCoberturaCoverage.h,\ ./Tests/CMakeTests/ImplicitLinkInfoTest.cmake.in,\ ./Tests/RunCMake/CPack/tests/DMG_SLA/English.license.rtf,\ ./Tests/RunCMake/CPack/tests/DMG_SLA/German.license.txt,\ ./Tests/RunCMake/CPack/tests/DMG_SLA/German.menu.txt,\ ./Tests/RunCMake/GoogleTest/xml_output.cpp,\ ./Tests/RunCMake/Make/TargetMessages*,\ ./Utilities/*,\ " \ -L "\ dependees,\ endwhile,\ fo,\ filetest,\ helpfull,\ nd,\ objext,\ stoll,\ supercedes,\ superceded,\ vas,\ varn,\ " ```
* Merge topic 'cpack2'Brad King2020-07-091-3/+7
|\ | | | | | | | | | | | | ca9bd43f2d Help: Duplicate essential information on install paths in CPack. Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4987
| * Help: Duplicate essential information on install paths in CPack.Joachim Wuttke (h)2020-07-081-3/+7
| |
* | Merge topic 'doc-CPack-source-package'Brad King2020-07-091-1/+1
|\ \ | |/ |/| | | | | | | | | f8b7acaf90 Help: Fix CPack module docs on config file for source package Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4985
| * Help: Fix CPack module docs on config file for source packageJoachim Wuttke (h)2020-07-081-1/+1
| |
* | CPack: Introduce pre- and post- build actionsAlex Turbov2020-06-151-0/+15
|/ | | | | | | | | | | | | | | 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
* Help: module CPack: improve summary and IntroductionJoachim Wuttke (o)2020-02-141-12/+12
| | | | | | | | | | | | * In summary: * we configure generators, not the generated installers * we generate installers or source packages, not source package installers * In Introduction: * Make paragraph on binary installers more concise * Remove example that refered to CMake source tree * Add paragraph on source packages * omit the parenthesis on graphical installers
* Help: module CPack: Make internal hyperlink target more uniqueBrad King2020-02-121-3/+3
| | | | We already have a `.. _targets:` in `Help/command/install.rst`.
* Help: module CPack: New section on targets.Joachim Wuttke (o)2020-02-121-7/+21
| | | | | To explain in full detail to what extent the targets package and package_source are supported by different generators.
* Help: module CPack: add cross-reference to cpack-generators(7).Joachim Wuttke (o)2020-02-121-0/+2
|
* Help: module CPack. Explain usage of the build targets.Joachim Wuttke (o)2020-02-121-7/+11
| | | | | Explain the usage of the two new build targets, package and package_source.
* Help: module CPack: correction: 2 config files are generated, not just 1Joachim Wuttke (o)2020-02-121-3/+4
| | | | Besides CPackConfig.cmake, the module also generates CPackSourceConfig.cmake.
* Help: CPack module: Correct the summary (configure, not build)Joachim Wuttke (o)2020-02-121-1/+1
| | | | | Including CPack does not "build" installers. It just *configures* them.
* CPack: Deprecate OSXX11 generatorBrad King2020-01-311-1/+1
| | | | | | | | | | The CPack OSXX11 generator has not had any updates since 2011 except as part of sweeping maintenance changes. It also creates packages with a OSXScriptLauncher binary that has only ppc and i386 architectures which are not supported by Apple anymore. Furthermore, the generator is not even mentioned in our documentation. Add a deprecation warning. Fixes: #20235
* CPack: Deprecate PackageMaker generatorBrad King2020-01-311-1/+1
| | | | | | | Xcode no longer distributes the PackageMaker tools. Add a deprecation warning when the generator is used. Issue: #20235
* Merge topic 'cpack-deb-fix-description'Brad King2020-01-271-1/+2
|\ | | | | | | | | | | | | baec299ecd CPack: Fix regression in Deb description Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4271
| * CPack: Fix regression in Deb descriptionKyle Edwards2020-01-241-1/+2
| | | | | | | | Fixes: #20254
* | CPack: mark options as advanced only if definedBen Boeckel2020-01-141-32/+39
| |
* | Merge topic 'fix-cpack-deb-description-file'Brad King2020-01-131-1/+3
|\ \ | |/ | | | | | | | | | | 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-1/+3
| | | | | | | | Fixes: #20102
* | Merge topic 'remove-CPACK_INSTALL_CMAKE_CONFIGURATIONS'Craig Scott2019-11-121-7/+0
|\ \ | |/ | | | | | | | | | | | | 1d1fa5d3e4 Tests: Add RunCMake.CPackCommandLine case for multi-config package 108207cc84 CPack: Remove CPACK_INSTALL_CMAKE_CONFIGURATIONS Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4025
| * CPack: Remove CPACK_INSTALL_CMAKE_CONFIGURATIONSAlex Turbov2019-11-111-7/+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
* | CPack/NSIS: Add option for custom Uninstall filenameJohnny Jazeix2019-10-251-0/+2
|/ | | | Fixes: #10728
* cpack: Add `CPACK_INSTALL_CMAKE_CONFIGURATIONS` variableAlex Turbov2019-08-301-0/+7
| | | | | | | | | 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.
* CPack: Introduce CPACK_INSTALL_SCRIPTS variableAlex Turbov2019-07-221-1/+15
| | | | | | | | | | 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>
* Help: Explain interaction of cpack(1) and CPack.Joachim Wuttke (l)2018-11-151-9/+18
| | | | | | | In particular, make clear that package/installer generators are not the makefile generators of the cmake command. Also insert sections in CPack doc, and capitalize section titles.
* Help: Insert section headers in CPack moduleJoachim Wuttke (h)2018-11-121-2/+8
| | | | | The one extant section header was confusing at least: Not all the doc page is on Variables.
* Help: Replace occurrences of "Mac OS X" with "macOS"Bartosz Kosiorek2018-09-051-1/+1
| | | | | | | | Apple's main Operating system changed their name from OS X to macOS: https://www.engadget.com/2016/06/13/os-x-is-now-macos/ Revise documentation accordingly.
* CPack: Restore support for 0-valued version componentsBrad King2018-07-271-12/+15
| | | | | | | | | | | | | | In commit v3.12.0-rc1~136^2 (CPack: Use project version as default for `CPACK_PACKAGE_VERSION`, 2018-04-29) we did not account for the value of `CMAKE_PROJECT_VERSION_{MAJOR,MINOR,PATCH}` having `0`. Fix the logic to distinguish between unprovided version components and `0` components. While at it, add a test case covering the behavior described in the documentation by the original commit. The number of version components in the package name should match those provided to the `project()` command `VERSION` option. Fixes: #18199
* CPack: Add NuGet supportAlex Turbov2018-05-111-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* CPack: Add more markup to module documentationAlex Turbov2018-05-081-174/+174
| | | | Also indent variable docs consistently.
* CPack: Document `CPACK_PACKAGE_DESCRIPTION` variableAlex Turbov2018-05-081-3/+11
|
* CPack: Move CPACK_BINARY_<GENNAME> with rest of docsAlex Turbov2018-05-081-10/+10
|
* CPack: Convert documentation to long-bracket comment syntaxAlex Turbov2018-05-081-320/+321
| | | | Use `#[===...==[.rst:` comments for docs.