diff options
author | Brad King <brad.king@kitware.com> | 2023-02-08 16:29:35 (GMT) |
---|---|---|
committer | Kitware Robot <kwrobot@kitware.com> | 2023-02-08 16:29:52 (GMT) |
commit | d8f574f35d2fc5dc4c385be14365fcb2e322ef4e (patch) | |
tree | e87bdbb2cc9734806925d6383117727b4440ae48 | |
parent | ec949bfbe1590d15afd0f78c460d7ca9415aa6ff (diff) | |
parent | 4cc4be14147ea8dd5b5d1cbbde9812f5eeca0157 (diff) | |
download | CMake-d8f574f35d2fc5dc4c385be14365fcb2e322ef4e.zip CMake-d8f574f35d2fc5dc4c385be14365fcb2e322ef4e.tar.gz CMake-d8f574f35d2fc5dc4c385be14365fcb2e322ef4e.tar.bz2 |
Merge topic 'doc-cpack-generator-fields'
4cc4be1414 Help: CPack FreeBSD Generator page use field lists
083a57550b Help: CPack DragNDrop Generator page use field lists
2c46fe7c96 Help: CPack Archive Generator page use field lists
5defbf7430 Help: CPack RPM Generator page use field lists
27d45be75d Help: CPack NuGet Generator page use field lists
fbb5ac4735 Help: CPack DEB Generator page use field lists
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8134
-rw-r--r-- | Help/cpack_gen/archive.rst | 56 | ||||
-rw-r--r-- | Help/cpack_gen/deb.rst | 212 | ||||
-rw-r--r-- | Help/cpack_gen/dmg.rst | 32 | ||||
-rw-r--r-- | Help/cpack_gen/freebsd.rst | 56 | ||||
-rw-r--r-- | Help/cpack_gen/nuget.rst | 113 | ||||
-rw-r--r-- | Help/cpack_gen/rpm.rst | 445 |
6 files changed, 491 insertions, 423 deletions
diff --git a/Help/cpack_gen/archive.rst b/Help/cpack_gen/archive.rst index 9df3cc4..7f7921d 100644 --- a/Help/cpack_gen/archive.rst +++ b/Help/cpack_gen/archive.rst @@ -4,19 +4,19 @@ CPack Archive Generator CPack generator for packaging files into an archive, which can have any of the following formats: - - 7Z - 7zip - (.7z) - - TBZ2 (.tar.bz2) - - TGZ (.tar.gz) - - TXZ (.tar.xz) - - TZ (.tar.Z) - - TZST (.tar.zst) - - ZIP (.zip) + - 7Z - 7zip - (``.7z``) + - TBZ2 (``.tar.bz2``) + - TGZ (``.tar.gz``) + - TXZ (``.tar.xz``) + - TZ (``.tar.Z``) + - TZST (``.tar.zst``) + - ZIP (``.zip``) .. versionadded:: 3.1 - ``7Z`` and ``TXZ`` formats support. + 7Z and TXZ formats support. .. versionadded:: 3.16 - ``TZST`` format support. + TZST format support. When this generator is called from ``CPackSourceConfig.cmake`` (or through the ``package_source`` target), then the generated archive will contain all @@ -47,27 +47,34 @@ Variables specific to CPack Archive generator .. variable:: CPACK_ARCHIVE_FILE_NAME CPACK_ARCHIVE_<component>_FILE_NAME - Package file name without extension. The extension is determined from the - archive format (see list above) and automatically appended to the file name. - Note that ``<component>`` is all uppercase in the variable name. + Package file name without extension. - The default is ``<CPACK_PACKAGE_FILE_NAME>[-<component>]``, with spaces - replaced by '-'. + :Default: The default is ``<CPACK_PACKAGE_FILE_NAME>[-<component>]``, with spaces + replaced by '-'. + + The extension is determined from the archive format (see list above) and + automatically appended to the file name. Note that ``<component>`` is all + uppercase in the variable name. .. versionadded:: 3.9 - Per-component ``CPACK_ARCHIVE_<component>_FILE_NAME`` variables. + Per-component :variable:`!CPACK_ARCHIVE_<component>_FILE_NAME` variables. .. variable:: CPACK_ARCHIVE_FILE_EXTENSION .. versionadded:: 3.25 - Package file extension. Default values are given in the list above. + Package file extension. + + :Default: Default values are given in the list above. .. variable:: CPACK_ARCHIVE_COMPONENT_INSTALL - Enable component packaging. If enabled (ON), then the archive generator - creates multiple packages. The default is OFF, which means that a single - package containing files of all components is generated. + Enable component packaging. + + :Default: ``OFF`` + + If enabled (``ON``) multiple packages are generated. By default a single package + containing files of all components is generated. Variables used by CPack Archive generator ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -75,15 +82,18 @@ Variables used by CPack Archive generator These variables are used by the Archive generator, but are also available to CPack generators which are essentially archives at their core. These include: - - :cpack_gen:`CPack Cygwin Generator` - - :cpack_gen:`CPack FreeBSD Generator` +- :cpack_gen:`CPack Cygwin Generator` +- :cpack_gen:`CPack FreeBSD Generator` .. variable:: CPACK_ARCHIVE_THREADS + The number of threads to use when performing the compression. + .. versionadded:: 3.18 - The number of threads to use when performing the compression. If set to - ``0``, the number of available cores on the machine will be used instead. + :Default: ``1`` + + If set to ``0``, the number of available cores on the machine will be used instead. The default is ``1`` which limits compression to a single thread. Note that not all compression modes support threading in all environments. Currently, only the XZ compression may support it. diff --git a/Help/cpack_gen/deb.rst b/Help/cpack_gen/deb.rst index 1514dbc..705ec9c 100644 --- a/Help/cpack_gen/deb.rst +++ b/Help/cpack_gen/deb.rst @@ -8,16 +8,16 @@ Variables specific to CPack Debian (DEB) generator The CPack DEB generator may be used to create DEB package using :module:`CPack`. The CPack DEB generator is a :module:`CPack` generator thus it uses the -``CPACK_XXX`` variables used by :module:`CPack`. +:variable:`!CPACK_XXX` variables used by :module:`CPack`. The CPack DEB generator should work on any Linux host but it will produce better deb package when Debian specific tools ``dpkg-xxx`` are usable on the build system. The CPack DEB generator has specific features which are controlled by the -specifics ``CPACK_DEBIAN_XXX`` variables. +specifics :variable:`!CPACK_DEBIAN_XXX` variables. -``CPACK_DEBIAN_<COMPONENT>_XXXX`` variables may be used in order to have +:variable:`!CPACK_DEBIAN_<COMPONENT>_XXXX` variables may be used in order to have **component** specific values. Note however that ``<COMPONENT>`` refers to the **grouping name** written in upper case. It may be either a component name or a component GROUP name. @@ -34,10 +34,10 @@ List of CPack DEB generator specific variables: Enable component packaging for CPackDEB - * Mandatory : NO - * Default : OFF + :Mandatory: No + :Default: ``OFF`` - If enabled (ON) multiple packages are generated. By default a single package + If enabled (``ON``) multiple packages are generated. By default a single package containing files of all components is generated. .. variable:: CPACK_DEBIAN_PACKAGE_NAME @@ -46,16 +46,16 @@ List of CPack DEB generator specific variables: Set Package control field (variable is automatically transformed to lower case). - * Mandatory : YES - * Default : + :Mandatory: Yes + :Default: - :variable:`CPACK_PACKAGE_NAME` for non-component based installations - - :variable:`CPACK_DEBIAN_PACKAGE_NAME` suffixed with -<COMPONENT> + - :variable:`CPACK_DEBIAN_PACKAGE_NAME` suffixed with ``-<COMPONENT>`` for component-based installations. .. versionadded:: 3.5 - Per-component ``CPACK_DEBIAN_<COMPONENT>_PACKAGE_NAME`` variables. + Per-component :variable:`!CPACK_DEBIAN_<COMPONENT>_PACKAGE_NAME` variables. See https://www.debian.org/doc/debian-policy/ch-controlfields.html#s-f-source @@ -66,8 +66,8 @@ List of CPack DEB generator specific variables: Package file name. - * Mandatory : YES - * Default : ``<CPACK_PACKAGE_FILE_NAME>[-<component>].deb`` + :Mandatory: Yes + :Default: ``<CPACK_PACKAGE_FILE_NAME>[-<component>].deb`` This may be set to ``DEB-DEFAULT`` to allow the CPack DEB generator to generate package file name by itself in deb format:: @@ -98,8 +98,8 @@ List of CPack DEB generator specific variables: The Debian package epoch - * Mandatory : No - * Default : - + :Mandatory: No + :Default: None Optional number that should be incremented when changing versioning schemas or fixing mistakes in the version numbers of older packages. @@ -108,8 +108,8 @@ List of CPack DEB generator specific variables: The Debian package version - * Mandatory : YES - * Default : :variable:`CPACK_PACKAGE_VERSION` + :Mandatory: Yes + :Default: :variable:`CPACK_PACKAGE_VERSION` This variable may contain only alphanumerics (A-Za-z0-9) and the characters . + - ~ (full stop, plus, hyphen, tilde) and should start with a digit. If @@ -130,8 +130,8 @@ List of CPack DEB generator specific variables: The Debian package release - Debian revision number. - * Mandatory : No - * Default : - + :Mandatory: No + :Default: None This is the numbering of the DEB package itself, i.e. the version of the packaging and not the version of the content (see @@ -144,20 +144,20 @@ List of CPack DEB generator specific variables: The Debian package architecture - * Mandatory : YES - * Default : Output of ``dpkg --print-architecture`` (or ``i386`` + :Mandatory: Yes + :Default: Output of ``dpkg --print-architecture`` (or ``i386`` if ``dpkg`` is not found) .. versionadded:: 3.6 - Per-component ``CPACK_DEBIAN_<COMPONENT>_PACKAGE_ARCHITECTURE`` variables. + Per-component :variable:`!CPACK_DEBIAN_<COMPONENT>_PACKAGE_ARCHITECTURE` variables. .. variable:: CPACK_DEBIAN_PACKAGE_DEPENDS CPACK_DEBIAN_<COMPONENT>_PACKAGE_DEPENDS Sets the Debian dependencies of this package. - * Mandatory : NO - * Default : + :Mandatory: No + :Default: - An empty string for non-component based installations - :variable:`CPACK_DEBIAN_PACKAGE_DEPENDS` for component-based @@ -165,7 +165,7 @@ List of CPack DEB generator specific variables: .. versionadded:: 3.3 - Per-component ``CPACK_DEBIAN_<COMPONENT>_PACKAGE_DEPENDS`` variables. + Per-component :variable:`!CPACK_DEBIAN_<COMPONENT>_PACKAGE_DEPENDS` variables. .. note:: @@ -178,7 +178,9 @@ List of CPack DEB generator specific variables: only the automatically discovered dependencies will be set for this component. - Example:: + Example: + + .. code-block:: cmake set(CPACK_DEBIAN_PACKAGE_DEPENDS "libc6 (>= 2.3.1-6), libc6 (< 2.4)") @@ -189,23 +191,23 @@ List of CPack DEB generator specific variables: Sets inter-component dependencies if listed with :variable:`CPACK_COMPONENT_<compName>_DEPENDS` variables. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: None .. variable:: CPACK_DEBIAN_PACKAGE_MAINTAINER The Debian package maintainer - * Mandatory : YES - * Default : ``CPACK_PACKAGE_CONTACT`` + :Mandatory: Yes + :Default: :variable:`!CPACK_PACKAGE_CONTACT` .. variable:: CPACK_DEBIAN_PACKAGE_DESCRIPTION CPACK_DEBIAN_<COMPONENT>_DESCRIPTION The Debian package description - * Mandatory : YES - * Default : + :Mandatory: Yes + :Default: - :variable:`CPACK_DEBIAN_<COMPONENT>_DESCRIPTION` (component based installers only) if set, or :variable:`CPACK_DEBIAN_PACKAGE_DESCRIPTION` if set, or @@ -218,13 +220,13 @@ List of CPack DEB generator specific variables: line of description as defined in `Debian Policy Manual`_. .. versionadded:: 3.3 - Per-component ``CPACK_COMPONENT_<compName>_DESCRIPTION`` variables. + Per-component :variable:`!CPACK_COMPONENT_<compName>_DESCRIPTION` variables. .. versionadded:: 3.16 - Per-component ``CPACK_DEBIAN_<COMPONENT>_DESCRIPTION`` variables. + Per-component :variable:`!CPACK_DEBIAN_<COMPONENT>_DESCRIPTION` variables. .. versionadded:: 3.16 - The ``CPACK_PACKAGE_DESCRIPTION_FILE`` variable. + The :variable:`!CPACK_PACKAGE_DESCRIPTION_FILE` variable. .. _Debian Policy Manual: https://www.debian.org/doc/debian-policy/ch-controlfields.html#description @@ -233,11 +235,11 @@ List of CPack DEB generator specific variables: Set Section control field e.g. admin, devel, doc, ... - * Mandatory : YES - * Default : "devel" + :Mandatory: Yes + :Default: ``devel`` .. versionadded:: 3.5 - Per-component ``CPACK_DEBIAN_<COMPONENT>_PACKAGE_SECTION`` variables. + Per-component :variable:`!CPACK_DEBIAN_<COMPONENT>_PACKAGE_SECTION` variables. See https://www.debian.org/doc/debian-policy/ch-archive.html#s-subsections @@ -249,12 +251,10 @@ List of CPack DEB generator specific variables: The archive format used for creating the Debian package. - * Mandatory : YES - * Default : "gnutar" - - Possible value is: + :Mandatory: Yes + :Default: ``gnutar`` - - gnutar + Possible value is: ``gnutar`` .. note:: @@ -269,8 +269,8 @@ List of CPack DEB generator specific variables: The compression used for creating the Debian package. - * Mandatory : YES - * Default : "gzip" + :Mandatory: Yes + :Default: ``gzip`` Possible values are: @@ -298,11 +298,11 @@ List of CPack DEB generator specific variables: Set Priority control field e.g. required, important, standard, optional, extra - * Mandatory : YES - * Default : "optional" + :Mandatory: Yes + :Default: ``optional`` .. versionadded:: 3.5 - Per-component ``CPACK_DEBIAN_<COMPONENT>_PACKAGE_PRIORITY`` variables. + Per-component :variable:`!CPACK_DEBIAN_<COMPONENT>_PACKAGE_PRIORITY` variables. See https://www.debian.org/doc/debian-policy/ch-archive.html#s-priorities @@ -312,11 +312,11 @@ List of CPack DEB generator specific variables: site from which the original source can be obtained and any additional upstream documentation or information may be found. - * Mandatory : NO - * Default : :variable:`CMAKE_PROJECT_HOMEPAGE_URL` + :Mandatory: No + :Default: :variable:`CMAKE_PROJECT_HOMEPAGE_URL` .. versionadded:: 3.12 - The ``CMAKE_PROJECT_HOMEPAGE_URL`` variable. + The :variable:`!CMAKE_PROJECT_HOMEPAGE_URL` variable. .. note:: @@ -329,11 +329,11 @@ List of CPack DEB generator specific variables: May be set to ON in order to use ``dpkg-shlibdeps`` to generate better package dependency list. - * Mandatory : NO - * Default : + :Mandatory: No + :Default: - :variable:`CPACK_DEBIAN_PACKAGE_SHLIBDEPS` if set or - - OFF + - ``OFF`` .. note:: @@ -350,7 +350,7 @@ List of CPack DEB generator specific variables: shared libraries that could not get resolved otherwise. .. versionadded:: 3.3 - Per-component ``CPACK_DEBIAN_<COMPONENT>_PACKAGE_SHLIBDEPS`` variables. + Per-component :variable:`!CPACK_DEBIAN_<COMPONENT>_PACKAGE_SHLIBDEPS` variables. .. versionadded:: 3.6 Correct handling of ``$ORIGIN`` in :variable:`CMAKE_INSTALL_RPATH`. @@ -363,8 +363,8 @@ List of CPack DEB generator specific variables: via its ``-l`` option. These will be searched by ``dpkg-shlibdeps`` in order to find private shared library dependencies. - * Mandatory : NO - * Default : + :Mandatory: No + :Default: None .. note:: @@ -377,8 +377,8 @@ List of CPack DEB generator specific variables: May be set when invoking cpack in order to trace debug information during the CPack DEB generator run. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: None .. variable:: CPACK_DEBIAN_PACKAGE_PREDEPENDS CPACK_DEBIAN_<COMPONENT>_PACKAGE_PREDEPENDS @@ -389,58 +389,58 @@ List of CPack DEB generator specific variables: before even starting the installation of the package which declares the pre-dependency. - * Mandatory : NO - * Default : + :Mandatory: No + :Default: - An empty string for non-component based installations - :variable:`CPACK_DEBIAN_PACKAGE_PREDEPENDS` for component-based installations. .. versionadded:: 3.4 - Per-component ``CPACK_DEBIAN_<COMPONENT>_PACKAGE_PREDEPENDS`` variables. + Per-component :variable:`!CPACK_DEBIAN_<COMPONENT>_PACKAGE_PREDEPENDS` variables. See https://www.debian.org/doc/debian-policy/ch-relationships.html#s-binarydeps .. variable:: CPACK_DEBIAN_PACKAGE_ENHANCES CPACK_DEBIAN_<COMPONENT>_PACKAGE_ENHANCES - Sets the `Enhances` field of the Debian package. + Sets the ``Enhances`` field of the Debian package. Similar to :variable:`Suggests <CPACK_DEBIAN_PACKAGE_SUGGESTS>` but works in the opposite direction: declares that a package can enhance the functionality of another package. - * Mandatory : NO - * Default : + :Mandatory: No + :Default: - An empty string for non-component based installations - :variable:`CPACK_DEBIAN_PACKAGE_ENHANCES` for component-based installations. .. versionadded:: 3.4 - Per-component ``CPACK_DEBIAN_<COMPONENT>_PACKAGE_ENHANCES`` variables. + Per-component :variable:`!CPACK_DEBIAN_<COMPONENT>_PACKAGE_ENHANCES` variables. See https://www.debian.org/doc/debian-policy/ch-relationships.html#s-binarydeps .. variable:: CPACK_DEBIAN_PACKAGE_BREAKS CPACK_DEBIAN_<COMPONENT>_PACKAGE_BREAKS - Sets the `Breaks` field of the Debian package. + Sets the ``Breaks`` field of the Debian package. When a binary package (P) declares that it breaks other packages (B), - ``dpkg`` will not allow the package (P) which declares `Breaks` be + ``dpkg`` will not allow the package (P) which declares ``Breaks`` be **unpacked** unless the packages that will be broken (B) are deconfigured first. As long as the package (P) is configured, the previously deconfigured packages (B) cannot be reconfigured again. - * Mandatory : NO - * Default : + :Mandatory: No + :Default: - An empty string for non-component based installations - :variable:`CPACK_DEBIAN_PACKAGE_BREAKS` for component-based installations. .. versionadded:: 3.4 - Per-component ``CPACK_DEBIAN_<COMPONENT>_PACKAGE_BREAKS`` variables. + Per-component :variable:`!CPACK_DEBIAN_<COMPONENT>_PACKAGE_BREAKS` variables. See https://www.debian.org/doc/debian-policy/ch-relationships.html#s-breaks @@ -452,15 +452,15 @@ List of CPack DEB generator specific variables: field, ``dpkg`` will not allow them to be unpacked on the system at the same time. - * Mandatory : NO - * Default : + :Mandatory: No + :Default: - An empty string for non-component based installations - :variable:`CPACK_DEBIAN_PACKAGE_CONFLICTS` for component-based installations. .. versionadded:: 3.4 - Per-component ``CPACK_DEBIAN_<COMPONENT>_PACKAGE_CONFLICTS`` variables. + Per-component :variable:`!CPACK_DEBIAN_<COMPONENT>_PACKAGE_CONFLICTS` variables. See https://www.debian.org/doc/debian-policy/ch-relationships.html#s-conflicts @@ -479,15 +479,15 @@ List of CPack DEB generator specific variables: A virtual package is one which appears in the `Provides` control field of another package. - * Mandatory : NO - * Default : + :Mandatory: No + :Default: - An empty string for non-component based installations - :variable:`CPACK_DEBIAN_PACKAGE_PROVIDES` for component-based installations. .. versionadded:: 3.4 - Per-component ``CPACK_DEBIAN_<COMPONENT>_PACKAGE_PROVIDES`` variables. + Per-component :variable:`!CPACK_DEBIAN_<COMPONENT>_PACKAGE_PROVIDES` variables. See https://www.debian.org/doc/debian-policy/ch-relationships.html#s-virtual @@ -498,34 +498,34 @@ List of CPack DEB generator specific variables: Packages can declare in their control file that they should overwrite files in certain other packages, or completely replace other packages. - * Mandatory : NO - * Default : + :Mandatory: No + :Default: - An empty string for non-component based installations - :variable:`CPACK_DEBIAN_PACKAGE_REPLACES` for component-based installations. .. versionadded:: 3.4 - Per-component ``CPACK_DEBIAN_<COMPONENT>_PACKAGE_REPLACES`` variables. + Per-component :variable:`!CPACK_DEBIAN_<COMPONENT>_PACKAGE_REPLACES` variables. See https://www.debian.org/doc/debian-policy/ch-relationships.html#s-binarydeps .. variable:: CPACK_DEBIAN_PACKAGE_RECOMMENDS CPACK_DEBIAN_<COMPONENT>_PACKAGE_RECOMMENDS - Sets the `Recommends` field of the Debian package. + Sets the ``Recommends`` field of the Debian package. Allows packages to declare a strong, but not absolute, dependency on other packages. - * Mandatory : NO - * Default : + :Mandatory: No + :Default: - An empty string for non-component based installations - :variable:`CPACK_DEBIAN_PACKAGE_RECOMMENDS` for component-based installations. .. versionadded:: 3.4 - Per-component ``CPACK_DEBIAN_<COMPONENT>_PACKAGE_RECOMMENDS`` variables. + Per-component :variable:`!CPACK_DEBIAN_<COMPONENT>_PACKAGE_RECOMMENDS` variables. See https://www.debian.org/doc/debian-policy/ch-relationships.html#s-binarydeps @@ -535,15 +535,15 @@ List of CPack DEB generator specific variables: Sets the `Suggests` field of the Debian package. Allows packages to declare a suggested package install grouping. - * Mandatory : NO - * Default : + :Mandatory: No + :Default: - An empty string for non-component based installations - :variable:`CPACK_DEBIAN_PACKAGE_SUGGESTS` for component-based installations. .. versionadded:: 3.4 - Per-component ``CPACK_DEBIAN_<COMPONENT>_PACKAGE_SUGGESTS`` variables. + Per-component :variable:`!CPACK_DEBIAN_<COMPONENT>_PACKAGE_SUGGESTS` variables. See https://www.debian.org/doc/debian-policy/ch-relationships.html#s-binarydeps @@ -551,8 +551,8 @@ List of CPack DEB generator specific variables: .. versionadded:: 3.6 - * Mandatory : NO - * Default : OFF + :Mandatory: No + :Default: ``OFF`` Allows to generate shlibs control file automatically. Compatibility is defined by :variable:`CPACK_DEBIAN_PACKAGE_GENERATE_SHLIBS_POLICY` variable value. @@ -569,11 +569,11 @@ List of CPack DEB generator specific variables: Compatibility policy for auto-generated shlibs control file. - * Mandatory : NO - * Default : "=" + :Mandatory: No + :Default: ``=`` Defines compatibility policy for auto-generated shlibs control file. - Possible values: "=", ">=" + Possible values: ``=``, ``>=`` See https://www.debian.org/doc/debian-policy/ch-sharedlibs.html#s-sharedlibs-shlibdeps @@ -584,16 +584,18 @@ List of CPack DEB generator specific variables: control.tar.gz. Typical usage is for conffiles, postinst, postrm, prerm. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: None - Usage:: + Usage: + + .. code-block:: cmake set(CPACK_DEBIAN_PACKAGE_CONTROL_EXTRA "${CMAKE_CURRENT_SOURCE_DIR}/prerm;${CMAKE_CURRENT_SOURCE_DIR}/postrm") .. versionadded:: 3.4 - Per-component ``CPACK_DEBIAN_<COMPONENT>_PACKAGE_CONTROL_EXTRA`` variables. + Per-component :variable:`!CPACK_DEBIAN_<COMPONENT>_PACKAGE_CONTROL_EXTRA` variables. .. variable:: CPACK_DEBIAN_PACKAGE_CONTROL_STRICT_PERMISSION CPACK_DEBIAN_<COMPONENT>_PACKAGE_CONTROL_STRICT_PERMISSION @@ -603,10 +605,12 @@ List of CPack DEB generator specific variables: This variable indicates if the Debian policy on control files should be strictly followed. - * Mandatory : NO - * Default : FALSE + :Mandatory: No + :Default: ``FALSE`` + + Usage: - Usage:: + .. code-block:: cmake set(CPACK_DEBIAN_PACKAGE_CONTROL_STRICT_PERMISSION TRUE) @@ -632,8 +636,8 @@ List of CPack DEB generator specific variables: source) the source from which the binary has been generated should be indicated with the field ``Source``. - * Mandatory : NO - * Default : + :Mandatory: No + :Default: - An empty string for non-component based installations - :variable:`CPACK_DEBIAN_PACKAGE_SOURCE` for component-based @@ -660,8 +664,8 @@ Dbgsym packaging has its own set of variables: Enable generation of dbgsym .ddeb package(s). - * Mandatory : NO - * Default : OFF + :Mandatory: No + :Default: ``OFF`` .. note:: @@ -683,7 +687,7 @@ Building Debian packages on Windows .. versionadded:: 3.10 To communicate UNIX file permissions from the install stage -to the CPack DEB generator the "cmake_mode_t" NTFS +to the CPack DEB generator the ``cmake_mode_t`` NTFS alternate data stream (ADT) is used. When a filesystem without ADT support is used only owner read/write @@ -694,7 +698,7 @@ Reproducible packages .. versionadded:: 3.13 -The environment variable ``SOURCE_DATE_EPOCH`` may be set to a UNIX +The environment variable :envvar:`!SOURCE_DATE_EPOCH` may be set to a UNIX timestamp, defined as the number of seconds, excluding leap seconds, since 01 Jan 1970 00:00:00 UTC. If set, the CPack DEB generator will use its value for timestamps in the package. diff --git a/Help/cpack_gen/dmg.rst b/Help/cpack_gen/dmg.rst index cba7a00..0bd52ec 100644 --- a/Help/cpack_gen/dmg.rst +++ b/Help/cpack_gen/dmg.rst @@ -11,14 +11,19 @@ on macOS: .. variable:: CPACK_DMG_VOLUME_NAME - The volume name of the generated disk image. Defaults to - CPACK_PACKAGE_FILE_NAME. + The volume name of the generated disk image. + + :Default: :variable:`CPACK_PACKAGE_FILE_NAME` .. variable:: CPACK_DMG_FORMAT - The disk image format. Common values are ``UDRO`` (UDIF read-only), ``UDZO`` (UDIF + The disk image format. + + :Default: ``UDZO`` + + Common values are ``UDRO`` (UDIF read-only), ``UDZO`` (UDIF zlib-compressed) or ``UDBZ`` (UDIF bzip2-compressed). Refer to ``hdiutil(1)`` for - more information on other available formats. Defaults to ``UDZO``. + more information on other available formats. .. variable:: CPACK_DMG_DS_STORE @@ -41,6 +46,8 @@ on macOS: .. variable:: CPACK_DMG_BACKGROUND_IMAGE + :Default: + Path to an image file to be used as the background. This file will be copied to ``.background``/``background.<ext>``, where ``<ext>`` is the original image file extension. The background image is installed into the image before @@ -58,13 +65,15 @@ on macOS: .. versionadded:: 3.23 + :Default: ``OFF`` + Control whether :variable:`CPACK_RESOURCE_FILE_LICENSE`, if set to a non-default value, is used as the license agreement provided when - mounting the DMG. If ``CPACK_DMG_SLA_USE_RESOURCE_FILE_LICENSE`` is + mounting the DMG. If :variable:`!CPACK_DMG_SLA_USE_RESOURCE_FILE_LICENSE` is not set, :manual:`cpack(1)` defaults to off. In a CMake project that uses the :module:`CPack` module to generate - ``CPackConfig.cmake``, ``CPACK_DMG_SLA_USE_RESOURCE_FILE_LICENSE`` + ``CPackConfig.cmake``, :variable:`!CPACK_DMG_SLA_USE_RESOURCE_FILE_LICENSE` must be explicitly enabled by the project to activate the SLA. See policy :policy:`CMP0133`. @@ -82,8 +91,8 @@ on macOS: Directory where license and menu files for different languages are stored. Setting this causes CPack to look for a ``<language>.menu.txt`` and ``<language>.license.txt`` or ``<language>.license.rtf`` file for every - language defined in ``CPACK_DMG_SLA_LANGUAGES``. If both this variable and - ``CPACK_RESOURCE_FILE_LICENSE`` are set, CPack will only look for the menu + language defined in :variable:`CPACK_DMG_SLA_LANGUAGES`. If both this variable and + :variable:`CPACK_RESOURCE_FILE_LICENSE` are set, CPack will only look for the menu files and use the same license file for all languages. If both ``<language>.license.txt`` and ``<language>.license.rtf`` exist, the ``.txt`` file will be used. @@ -120,17 +129,18 @@ on macOS: .. versionadded:: 3.17 File name when packaging ``<component>`` as its own DMG - (``CPACK_COMPONENTS_GROUPING`` set to IGNORE). + (:variable:`CPACK_COMPONENTS_GROUPING` set to ``IGNORE``). - - Default: ``CPACK_PACKAGE_FILE_NAME-<component>`` + :Default: ``CPACK_PACKAGE_FILE_NAME-<component>`` .. variable:: CPACK_DMG_FILESYSTEM .. versionadded:: 3.21 + :Default: ``HFS+`` + The filesystem format. Common values are ``APFS`` and ``HFS+``. See ``man hdiutil`` for a full list of supported formats. - Defaults to ``HFS+``. .. variable:: CPACK_COMMAND_HDIUTIL diff --git a/Help/cpack_gen/freebsd.rst b/Help/cpack_gen/freebsd.rst index faf8c74..e97ba49 100644 --- a/Help/cpack_gen/freebsd.rst +++ b/Help/cpack_gen/freebsd.rst @@ -19,7 +19,7 @@ be used on FreeBSD, DragonflyBSD, NetBSD, OpenBSD, but also on Linux or OSX, depending on the installed package-management tools -- using :module:`CPack`. The CPack FreeBSD generator is a :module:`CPack` generator and uses the -``CPACK_XXX`` variables used by :module:`CPack`. It tries to re-use packaging +:variable:`!CPACK_XXX` variables used by :module:`CPack`. It tries to re-use packaging information that may already be specified for Debian packages for the :cpack_gen:`CPack DEB Generator`. It also tries to re-use RPM packaging information when Debian does not specify. @@ -28,14 +28,14 @@ The CPack FreeBSD generator should work on any host with libpkg installed. The packages it produces are specific to the host architecture and ABI. The CPack FreeBSD generator sets package-metadata through -``CPACK_FREEBSD_XXX`` variables. The CPack FreeBSD generator, unlike the +:variable:`!CPACK_FREEBSD_XXX` variables. The CPack FreeBSD generator, unlike the CPack Deb generator, does not specially support componentized packages; a single package is created from all the software artifacts created through CMake. All of the variables can be set specifically for FreeBSD packaging in the CPackConfig file or in CMakeLists.txt, but most of them have defaults -that use general settings (e.g. CMAKE_PROJECT_NAME) or Debian-specific +that use general settings (e.g. :variable:`CMAKE_PROJECT_NAME`) or Debian-specific variables when those make sense (e.g. the homepage of an upstream project is usually unchanged by the flavor of packaging). When there is no Debian information to fall back on, but the RPM packaging has it, fall back to @@ -46,8 +46,8 @@ the RPM information (e.g. package license). Sets the package name (in the package manifest, but also affects the output filename). - * Mandatory: YES - * Default: + :Mandatory: Yes + :Default: - :variable:`CPACK_PACKAGE_NAME` (this is always set by CPack itself, based on CMAKE_PROJECT_NAME). @@ -57,8 +57,8 @@ the RPM information (e.g. package license). Sets the package comment. This is the short description displayed by pkg(8) in standard "pkg info" output. - * Mandatory: YES - * Default: + :Mandatory: Yes + :Default: - :variable:`CPACK_PACKAGE_DESCRIPTION_SUMMARY` (this is always set by CPack itself, if nothing else sets it explicitly). @@ -68,14 +68,14 @@ the RPM information (e.g. package license). Sets the package description. This is the long description of the package, given by "pkg info" with a specific package as argument. - * Mandatory: YES - * Default: + :Mandatory: Yes + :Default: - :variable:`CPACK_DEBIAN_PACKAGE_DESCRIPTION` (this may be set already for Debian packaging, so it is used as a fallback). - :variable:`CPACK_PACKAGE_DESCRIPTION_SUMMARY` (this is always set by CPack itself, if nothing else sets it explicitly). - - :variable:`PROJECT_DESCRIPTION` (this can be set with the DESCRIPTION + - :variable:`PROJECT_DESCRIPTION` (this can be set with the ``DESCRIPTION`` parameter for :command:`project`). .. variable:: CPACK_FREEBSD_PACKAGE_WWW @@ -84,15 +84,15 @@ the RPM information (e.g. package license). site from which the original source can be obtained and any additional upstream documentation or information may be found. - * Mandatory: YES - * Default: + :Mandatory: Yes + :Default: - :variable:`CPACK_PACKAGE_HOMEPAGE_URL`, or if that is not set, - :variable:`CPACK_DEBIAN_PACKAGE_HOMEPAGE` (this may be set already for Debian packaging, so it is used as a fallback). .. versionadded:: 3.12 - The ``CPACK_PACKAGE_HOMEPAGE_URL`` variable. + The :variable:`!CPACK_PACKAGE_HOMEPAGE_URL` variable. .. variable:: CPACK_FREEBSD_PACKAGE_LICENSE @@ -100,8 +100,8 @@ the RPM information (e.g. package license). be one or more license-identifiers that pkg recognizes as acceptable license identifiers (e.g. "GPLv2"). - * Mandatory: YES - * Default: + :Mandatory: Yes + :Default: - :variable:`CPACK_RPM_PACKAGE_LICENSE` @@ -112,24 +112,24 @@ the RPM information (e.g. package license). Other acceptable values are determined by pkg -- those are "dual" or "multi" -- meaning choice (OR) or simultaneous (AND) application of the licenses. - * Mandatory: NO - * Default: single + :Mandatory: No + :Default: single .. variable:: CPACK_FREEBSD_PACKAGE_MAINTAINER - The FreeBSD maintainer (e.g. kde@freebsd.org) of this package. + The FreeBSD maintainer (e.g. ``kde@freebsd.org``) of this package. - * Mandatory: YES - * Default: none + :Mandatory: Yes + :Default: none .. variable:: CPACK_FREEBSD_PACKAGE_ORIGIN The origin (ports label) of this package; for packages built by CPack outside of the ports system this is of less importance. The default - puts the package somewhere under misc/, as a stopgap. + puts the package somewhere under ``misc/``, as a stopgap. - * Mandatory: YES - * Default: misc/<package name> + :Mandatory: Yes + :Default: ``misc/<package name>`` .. variable:: CPACK_FREEBSD_PACKAGE_CATEGORIES @@ -137,15 +137,15 @@ the RPM information (e.g. package license). from ports). If none is set a single category is determined based on the package origin. - * Mandatory: YES - * Default: derived from ORIGIN + :Mandatory: Yes + :Default: derived from ``ORIGIN`` .. variable:: CPACK_FREEBSD_PACKAGE_DEPS A list of package origins that should be added as package dependencies. - These are in the form <category>/<packagename>, e.g. x11/libkonq. + These are in the form ``<category>/<packagename>``, e.g. ``x11/libkonq``. No version information needs to be provided (this is not included in the manifest). - * Mandatory: NO - * Default: empty + :Mandatory: No + :Default: empty diff --git a/Help/cpack_gen/nuget.rst b/Help/cpack_gen/nuget.rst index 3bf7f84..1f2e762 100644 --- a/Help/cpack_gen/nuget.rst +++ b/Help/cpack_gen/nuget.rst @@ -5,11 +5,11 @@ CPack NuGet Generator When build a NuGet package there is no direct way to control an output filename due a lack of the corresponding CLI option of NuGet, so there -is no ``CPACK_NUGET_PACKAGE_FILE_NAME`` variable. To form the output filename +is no :variable:`!CPACK_NUGET_PACKAGE_FILE_NAME` variable. To form the output filename NuGet uses the package name and the version according to its built-in rules. Also, be aware that including a top level directory -(``CPACK_INCLUDE_TOPLEVEL_DIRECTORY``) is ignored by this generator. +(:variable:`CPACK_INCLUDE_TOPLEVEL_DIRECTORY`) is ignored by this generator. Variables specific to CPack NuGet generator @@ -17,10 +17,10 @@ Variables specific to CPack NuGet generator The CPack NuGet generator may be used to create NuGet packages using :module:`CPack`. The CPack NuGet generator is a :module:`CPack` generator thus -it uses the ``CPACK_XXX`` variables used by :module:`CPack`. +it uses the :variable:`!CPACK_XXX` variables used by :module:`CPack`. The CPack NuGet generator has specific features which are controlled by the -specifics ``CPACK_NUGET_XXX`` variables. In the "one per group" mode +specifics :variable:`!CPACK_NUGET_XXX` variables. In the "one per group" mode (see :variable:`CPACK_COMPONENTS_GROUPING`), ``<compName>`` placeholder in the variables below would contain a group name (uppercased and turned into a "C" identifier). @@ -31,8 +31,8 @@ List of CPack NuGet generator specific variables: Enable component packaging for CPack NuGet generator - * Mandatory : NO - * Default : OFF + :Mandatory: No + :Default: ``OFF`` .. variable:: CPACK_NUGET_PACKAGE_NAME CPACK_NUGET_<compName>_PACKAGE_NAME @@ -40,26 +40,27 @@ List of CPack NuGet generator specific variables: The NUGET package name. ``CPACK_NUGET_PACKAGE_NAME`` is used as the package ``id`` on nuget.org_ - * Mandatory : YES - * Default : :variable:`CPACK_PACKAGE_NAME` + :Mandatory: Yes + :Default: :variable:`CPACK_PACKAGE_NAME` .. variable:: CPACK_NUGET_PACKAGE_VERSION CPACK_NUGET_<compName>_PACKAGE_VERSION The NuGet package version. - * Mandatory : YES - * Default : :variable:`CPACK_PACKAGE_VERSION` + :Mandatory: Yes + :Default: :variable:`CPACK_PACKAGE_VERSION` .. variable:: CPACK_NUGET_PACKAGE_DESCRIPTION CPACK_NUGET_<compName>_PACKAGE_DESCRIPTION A long description of the package for UI display. - * Mandatory : YES - * Default : + :Mandatory: Yes + :Default: + - :variable:`CPACK_COMPONENT_<compName>_DESCRIPTION`, - - ``CPACK_COMPONENT_GROUP_<groupName>_DESCRIPTION``, + - :variable:`!CPACK_COMPONENT_GROUP_<groupName>_DESCRIPTION`, - :variable:`CPACK_PACKAGE_DESCRIPTION` .. variable:: CPACK_NUGET_PACKAGE_AUTHORS @@ -70,8 +71,8 @@ List of CPack NuGet generator specific variables: nuget.org_ and are used to cross-reference packages by the same authors. - * Mandatory : YES - * Default : :variable:`CPACK_PACKAGE_VENDOR` + :Mandatory: Yes + :Default: :variable:`CPACK_PACKAGE_VENDOR` .. variable:: CPACK_NUGET_PACKAGE_TITLE CPACK_NUGET_<compName>_PACKAGE_TITLE @@ -80,10 +81,11 @@ List of CPack NuGet generator specific variables: as on nuget.org_ and the Package Manager in Visual Studio. If not specified, the package ID is used. - * Mandatory : NO - * Default : + :Mandatory: No + :Default: + - :variable:`CPACK_COMPONENT_<compName>_DISPLAY_NAME`, - - ``CPACK_COMPONENT_GROUP_<groupName>_DISPLAY_NAME`` + - :variable:`!CPACK_COMPONENT_GROUP_<groupName>_DISPLAY_NAME` .. variable:: CPACK_NUGET_PACKAGE_OWNERS CPACK_NUGET_<compName>_PACKAGE_OWNERS @@ -92,8 +94,8 @@ List of CPack NuGet generator specific variables: on nuget.org_. This is often the same list as in authors, and is ignored when uploading the package to nuget.org_. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: None .. variable:: CPACK_NUGET_PACKAGE_HOMEPAGE_URL CPACK_NUGET_<compName>_PACKAGE_HOMEPAGE_URL @@ -101,8 +103,8 @@ List of CPack NuGet generator specific variables: An URL for the package's home page, often shown in UI displays as well as nuget.org_. - * Mandatory : NO - * Default : :variable:`CPACK_PACKAGE_HOMEPAGE_URL` + :Mandatory: No + :Default: :variable:`CPACK_PACKAGE_HOMEPAGE_URL` .. variable:: CPACK_NUGET_PACKAGE_LICENSEURL CPACK_NUGET_<compName>_PACKAGE_LICENSEURL @@ -116,8 +118,8 @@ List of CPack NuGet generator specific variables: An URL for the package's license, often shown in UI displays as well as on nuget.org_. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: None .. variable:: CPACK_NUGET_PACKAGE_LICENSE_EXPRESSION CPACK_NUGET_<compName>_PACKAGE_LICENSE_EXPRESSION @@ -131,24 +133,24 @@ List of CPack NuGet generator specific variables: ``MIT OR BSD-3-Clause``. See the `SPDX specification`_ for guidance on forming complex license expressions. - If ``CPACK_NUGET_PACKAGE_LICENSE_FILE_NAME`` is specified, - ``CPACK_NUGET_PACKAGE_LICENSE_EXPRESSION`` is ignored. + If :variable:`CPACK_NUGET_PACKAGE_LICENSE_FILE_NAME` is specified, + :variable:`!CPACK_NUGET_PACKAGE_LICENSE_EXPRESSION` is ignored. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: None .. variable:: CPACK_NUGET_PACKAGE_LICENSE_FILE_NAME CPACK_NUGET_<compName>_PACKAGE_LICENSE_FILE_NAME The package's license file in :file:`.txt` or :file:`.md` format. - If ``CPACK_NUGET_PACKAGE_LICENSE_FILE_NAME`` is specified, - ``CPACK_NUGET_PACKAGE_LICENSE_EXPRESSION`` is ignored. + If :variable:`!CPACK_NUGET_PACKAGE_LICENSE_FILE_NAME` is specified, + :variable:`!CPACK_NUGET_PACKAGE_LICENSE_EXPRESSION` is ignored. .. versionadded:: 3.20 - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: None .. variable:: CPACK_NUGET_PACKAGE_ICONURL CPACK_NUGET_<compName>_PACKAGE_ICONURL @@ -159,16 +161,16 @@ List of CPack NuGet generator specific variables: An URL for a 64x64 image with transparency background to use as the icon for the package in UI display. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: None .. variable:: CPACK_NUGET_PACKAGE_REQUIRE_LICENSE_ACCEPTANCE When set to a true value, the user will be prompted to accept the license before installing the package. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: None .. variable:: CPACK_NUGET_PACKAGE_ICON CPACK_NUGET_<compName>_PACKAGE_ICON @@ -178,8 +180,8 @@ List of CPack NuGet generator specific variables: The filename of a 64x64 image with transparency background to use as the icon for the package in UI display. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: None .. variable:: CPACK_NUGET_PACKAGE_DESCRIPTION_SUMMARY CPACK_NUGET_<compName>_PACKAGE_DESCRIPTION_SUMMARY @@ -187,8 +189,8 @@ List of CPack NuGet generator specific variables: A short description of the package for UI display. If omitted, a truncated version of description is used. - * Mandatory : NO - * Default : :variable:`CPACK_PACKAGE_DESCRIPTION_SUMMARY` + :Mandatory: No + :Default: :variable:`CPACK_PACKAGE_DESCRIPTION_SUMMARY` .. variable:: CPACK_NUGET_PACKAGE_RELEASE_NOTES CPACK_NUGET_<compName>_PACKAGE_RELEASE_NOTES @@ -197,16 +199,16 @@ List of CPack NuGet generator specific variables: often used in UI like the Updates tab of the Visual Studio Package Manager in place of the package description. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: None .. variable:: CPACK_NUGET_PACKAGE_COPYRIGHT CPACK_NUGET_<compName>_PACKAGE_COPYRIGHT Copyright details for the package. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: None .. variable:: CPACK_NUGET_PACKAGE_LANGUAGE CPACK_NUGET_<compName>_PACKAGE_LANGUAGE @@ -215,8 +217,8 @@ List of CPack NuGet generator specific variables: Locale specifier for the package, for example ``en_CA``. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: None .. variable:: CPACK_NUGET_PACKAGE_TAGS CPACK_NUGET_<compName>_PACKAGE_TAGS @@ -225,34 +227,33 @@ List of CPack NuGet generator specific variables: package and aid discoverability of packages through search and filtering. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: None .. variable:: CPACK_NUGET_PACKAGE_DEPENDENCIES CPACK_NUGET_<compName>_PACKAGE_DEPENDENCIES A list of package dependencies. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: None .. variable:: CPACK_NUGET_PACKAGE_DEPENDENCIES_<dependency>_VERSION CPACK_NUGET_<compName>_PACKAGE_DEPENDENCIES_<dependency>_VERSION A `version specification`_ for the particular dependency, where ``<dependency>`` is an item of the dependency list (see above) - transformed with ``MAKE_C_IDENTIFIER`` function of :command:`string` - command. + transformed with :command:`string(MAKE_C_IDENTIFIER)` command. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: None .. variable:: CPACK_NUGET_PACKAGE_DEBUG Enable debug messages while executing CPack NuGet generator. - * Mandatory : NO - * Default : OFF + :Mandatory: No + :Default: ``OFF`` .. _nuget.org: https://www.nuget.org diff --git a/Help/cpack_gen/rpm.rst b/Help/cpack_gen/rpm.rst index b1e0077..7b91261 100644 --- a/Help/cpack_gen/rpm.rst +++ b/Help/cpack_gen/rpm.rst @@ -8,27 +8,27 @@ Variables specific to CPack RPM generator The CPack RPM generator may be used to create RPM packages using :module:`CPack`. The CPack RPM generator is a :module:`CPack` generator thus it uses the -``CPACK_XXX`` variables used by :module:`CPack`. +:variable:`!CPACK_XXX` variables used by :module:`CPack`. The CPack RPM generator has specific features which are controlled by the specifics -``CPACK_RPM_XXX`` variables. +:variable:`!CPACK_RPM_XXX` variables. -``CPACK_RPM_<COMPONENT>_XXXX`` variables may be used in order to have -**component** specific values. Note however that ``<COMPONENT>`` refers to the +:variable:`!CPACK_RPM_<COMPONENT>_XXXX` variables may be used in order to have +**component-specific** values. Note however that ``<COMPONENT>`` refers to the **grouping name** written in upper case. It may be either a component name or -a component GROUP name. Usually those variables correspond to RPM spec file +a component GROUP name. Usually, those variables correspond to RPM spec file entities. One may find information about spec files here -https://rpm.org/documentation +https://rpm.org/documentation. .. versionchanged:: 3.6 `<COMPONENT>` part of variables is preferred to be in upper case (e.g. if - component is named ``foo`` then use ``CPACK_RPM_FOO_XXXX`` variable name format) - as is with other ``CPACK_<COMPONENT>_XXXX`` variables. + component is named ``foo`` then use :variable:`!CPACK_RPM_FOO_XXXX` variable + name format) as is with other :variable:`!CPACK_<COMPONENT>_XXXX` variables. For the purposes of back compatibility (CMake/CPack version 3.5 and lower) support for same cased component (e.g. ``fOo`` would be used as - ``CPACK_RPM_fOo_XXXX``) is still supported for variables defined in older - versions of CMake/CPack but is not guaranteed for variables that + :variable:`!CPACK_RPM_fOo_XXXX`) is still supported for variables defined in + older versions of CMake/CPack but is not guaranteed for variables that will be added in the future. For the sake of back compatibility same cased component variables also override upper cased versions where both are present. @@ -45,8 +45,8 @@ List of CPack RPM generator specific variables: Enable component packaging for CPack RPM generator - * Mandatory : NO - * Default : OFF + :Mandatory: No + :Default: ``OFF`` If enabled (``ON``) multiple packages are generated. By default a single package containing files of all components is generated. @@ -56,22 +56,22 @@ List of CPack RPM generator specific variables: The RPM package summary. - * Mandatory : YES - * Default : :variable:`CPACK_PACKAGE_DESCRIPTION_SUMMARY` + :Mandatory: Yes + :Default: :variable:`CPACK_PACKAGE_DESCRIPTION_SUMMARY` .. versionadded:: 3.2 - Per-component ``CPACK_RPM_<component>_PACKAGE_SUMMARY`` variables. + Per-component :variable:`!CPACK_RPM_<component>_PACKAGE_SUMMARY` variables. .. variable:: CPACK_RPM_PACKAGE_NAME CPACK_RPM_<component>_PACKAGE_NAME The RPM package name. - * Mandatory : YES - * Default : :variable:`CPACK_PACKAGE_NAME` + :Mandatory: Yes + :Default: :variable:`CPACK_PACKAGE_NAME` .. versionadded:: 3.5 - Per-component ``CPACK_RPM_<component>_PACKAGE_NAME`` variables. + Per-component :variable:`!CPACK_RPM_<component>_PACKAGE_NAME` variables. .. variable:: CPACK_RPM_FILE_NAME CPACK_RPM_<component>_FILE_NAME @@ -80,8 +80,8 @@ List of CPack RPM generator specific variables: Package file name. - * Mandatory : YES - * Default : ``<CPACK_PACKAGE_FILE_NAME>[-<component>].rpm`` with spaces + :Mandatory: Yes + :Default: ``<CPACK_PACKAGE_FILE_NAME>[-<component>].rpm`` with spaces replaced by '-' This may be set to ``RPM-DEFAULT`` to allow ``rpmbuild`` tool to generate package @@ -105,8 +105,8 @@ List of CPack RPM generator specific variables: Main component that is packaged without component suffix. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: This variable can be set to any component or group name so that component or group rpm package is generated without component suffix in filename and @@ -118,8 +118,8 @@ List of CPack RPM generator specific variables: The RPM package epoch - * Mandatory : No - * Default : - + :Mandatory: No + :Default: Optional number that should be incremented when changing versioning schemas or fixing mistakes in the version numbers of older packages. @@ -128,28 +128,28 @@ List of CPack RPM generator specific variables: The RPM package version. - * Mandatory : YES - * Default : :variable:`CPACK_PACKAGE_VERSION` + :Mandatory: Yes + :Default: :variable:`CPACK_PACKAGE_VERSION` .. variable:: CPACK_RPM_PACKAGE_ARCHITECTURE CPACK_RPM_<component>_PACKAGE_ARCHITECTURE The RPM package architecture. - * Mandatory : YES - * Default : Native architecture output by ``uname -m`` + :Mandatory: Yes + :Default: Native architecture output by ``uname -m`` This may be set to ``noarch`` if you know you are building a ``noarch`` package. .. versionadded:: 3.3 - Per-component ``CPACK_RPM_<component>_PACKAGE_ARCHITECTURE`` variables. + Per-component :variable:`!CPACK_RPM_<component>_PACKAGE_ARCHITECTURE` variables. .. variable:: CPACK_RPM_PACKAGE_RELEASE The RPM package release. - * Mandatory : YES - * Default : 1 + :Mandatory: Yes + :Default: 1 This is the numbering of the RPM package itself, i.e. the version of the packaging and not the version of the content (see @@ -169,8 +169,8 @@ List of CPack RPM generator specific variables: The dist tag that is added RPM ``Release:`` field. - * Mandatory : NO - * Default : OFF + :Mandatory: No + :Default: ``OFF`` This is the reported ``%{dist}`` tag from the current distribution or empty ``%{dist}`` if RPM macro is not set. If this variable is set then RPM @@ -180,57 +180,61 @@ List of CPack RPM generator specific variables: The RPM package license policy. - * Mandatory : YES - * Default : "unknown" + :Mandatory: Yes + :Default: "unknown" .. variable:: CPACK_RPM_PACKAGE_GROUP CPACK_RPM_<component>_PACKAGE_GROUP The RPM package group. - * Mandatory : YES - * Default : "unknown" + :Mandatory: Yes + :Default: "unknown" .. versionadded:: 3.5 - Per-component ``CPACK_RPM_<component>_PACKAGE_GROUP`` variables. + Per-component :variable:`!CPACK_RPM_<component>_PACKAGE_GROUP` variables. .. variable:: CPACK_RPM_PACKAGE_VENDOR The RPM package vendor. - * Mandatory : YES - * Default : CPACK_PACKAGE_VENDOR if set or "unknown" + :Mandatory: Yes + :Default: CPACK_PACKAGE_VENDOR if set or "unknown" .. variable:: CPACK_RPM_PACKAGE_URL CPACK_RPM_<component>_PACKAGE_URL The projects URL. - * Mandatory : NO - * Default : :variable:`CMAKE_PROJECT_HOMEPAGE_URL` + :Mandatory: No + :Default: :variable:`CMAKE_PROJECT_HOMEPAGE_URL` .. versionadded:: 3.12 - The ``CMAKE_PROJECT_HOMEPAGE_URL`` variable. + The :variable:`!CMAKE_PROJECT_HOMEPAGE_URL` variable. .. variable:: CPACK_RPM_PACKAGE_DESCRIPTION CPACK_RPM_<component>_PACKAGE_DESCRIPTION RPM package description. - * Mandatory : YES - * Default : :variable:`CPACK_COMPONENT_<compName>_DESCRIPTION` (component - based installers only) if set, :variable:`CPACK_PACKAGE_DESCRIPTION_FILE` - if set or "no package description available" + :Mandatory: Yes + :Default: + + - :variable:`CPACK_COMPONENT_<compName>_DESCRIPTION` + (component based installers only) if set, + - :variable:`CPACK_PACKAGE_DESCRIPTION_FILE` + if set, or + - ``no package description available`` .. versionadded:: 3.2 - Per-component ``CPACK_RPM_<component>_PACKAGE_DESCRIPTION`` variables. + Per-component :variable:`!CPACK_RPM_<component>_PACKAGE_DESCRIPTION` variables. .. variable:: CPACK_RPM_COMPRESSION_TYPE RPM compression type. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: (system default) May be used to override RPM compression type to be used to build the RPM. For example some Linux distribution now default to ``lzma`` or ``xz`` @@ -239,18 +243,25 @@ List of CPack RPM generator specific variables: Possible values are: - - lzma - - xz - - bzip2 - - gzip + ``lzma`` + Lempel–Ziv–Markov chain algorithm + + ``xz`` + XZ Utils compression + + ``bzip2`` + bzip2 Burrows–Wheeler algorithm + + ``gzip`` + GNU Gzip compression .. variable:: CPACK_RPM_PACKAGE_AUTOREQ CPACK_RPM_<component>_PACKAGE_AUTOREQ RPM spec autoreq field. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: May be used to enable (``1``, ``yes``) or disable (``0``, ``no``) automatic shared libraries dependency detection. Dependencies are added to requires list. @@ -264,8 +275,8 @@ List of CPack RPM generator specific variables: RPM spec autoprov field. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: May be used to enable (``1``, ``yes``) or disable (``0``, ``no``) automatic listing of shared libraries that are provided by the package. @@ -280,8 +291,8 @@ List of CPack RPM generator specific variables: RPM spec autoreqprov field. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: Variable enables/disables autoreq and autoprov at the same time. See :variable:`CPACK_RPM_PACKAGE_AUTOREQ` and @@ -296,11 +307,13 @@ List of CPack RPM generator specific variables: RPM spec requires field. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: May be used to set RPM dependencies (requires). Note that you must enclose - the complete requires string between quotes, for example:: + the complete requires string between quotes, for example: + + .. code-block:: cmake set(CPACK_RPM_PACKAGE_REQUIRES "python >= 2.5.0, cmake >= 2.8") @@ -313,11 +326,13 @@ List of CPack RPM generator specific variables: RPM spec conflicts field. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: May be used to set negative RPM dependencies (conflicts). Note that you must - enclose the complete requires string between quotes, for example:: + enclose the complete requires string between quotes, for example: + + .. code-block:: cmake set(CPACK_RPM_PACKAGE_CONFLICTS "libxml2") @@ -332,11 +347,13 @@ List of CPack RPM generator specific variables: RPM spec requires(pre) field. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: May be used to set RPM preinstall dependencies (requires(pre)). Note that - you must enclose the complete requires string between quotes, for example:: + you must enclose the complete requires string between quotes, for example: + + .. code-block:: cmake set(CPACK_RPM_PACKAGE_REQUIRES_PRE "shadow-utils, initscripts") @@ -347,11 +364,13 @@ List of CPack RPM generator specific variables: RPM spec requires(post) field. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: May be used to set RPM postinstall dependencies (requires(post)). Note that - you must enclose the complete requires string between quotes, for example:: + you must enclose the complete requires string between quotes, for example: + + .. code-block:: cmake set(CPACK_RPM_PACKAGE_REQUIRES_POST "shadow-utils, initscripts") @@ -362,12 +381,14 @@ List of CPack RPM generator specific variables: RPM spec requires(postun) field. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: May be used to set RPM postuninstall dependencies (requires(postun)). Note that you must enclose the complete requires string between quotes, for - example:: + example: + + .. code-block:: cmake set(CPACK_RPM_PACKAGE_REQUIRES_POSTUN "shadow-utils, initscripts") @@ -378,11 +399,13 @@ List of CPack RPM generator specific variables: RPM spec requires(preun) field. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: May be used to set RPM preuninstall dependencies (requires(preun)). Note that - you must enclose the complete requires string between quotes, for example:: + you must enclose the complete requires string between quotes, for example: + + .. code-block:: cmake set(CPACK_RPM_PACKAGE_REQUIRES_PREUN "shadow-utils, initscripts") @@ -391,8 +414,8 @@ List of CPack RPM generator specific variables: RPM spec suggest field. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: May be used to set weak RPM dependencies (suggests). If ``rpmbuild`` doesn't support the ``Suggests`` tag, CPack will emit a warning and ignore this @@ -404,8 +427,8 @@ List of CPack RPM generator specific variables: RPM spec provides field. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: May be used to set RPM dependencies (provides). The provided package list of an RPM file could be printed with:: @@ -417,8 +440,8 @@ List of CPack RPM generator specific variables: RPM spec obsoletes field. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: May be used to set RPM packages that are obsoleted by this one. @@ -426,8 +449,8 @@ List of CPack RPM generator specific variables: build a relocatable RPM. - * Mandatory : NO - * Default : CPACK_PACKAGE_RELOCATABLE + :Mandatory: No + :Default: CPACK_PACKAGE_RELOCATABLE If this variable is set to TRUE or ON, the CPack RPM generator will try to build a relocatable RPM package. A relocatable RPM may @@ -442,11 +465,10 @@ List of CPack RPM generator specific variables: .. variable:: CPACK_RPM_SPEC_INSTALL_POST - Deprecated - use :variable:`CPACK_RPM_SPEC_MORE_DEFINE` instead. + .. deprecated:: 2.8.12 Use :variable:`CPACK_RPM_SPEC_MORE_DEFINE` instead. - * Mandatory : NO - * Default : - - * Deprecated: YES + :Mandatory: No + :Default: May be used to override the ``__spec_install_post`` section within the generated spec file. This affects the install step during package creation, @@ -458,12 +480,14 @@ List of CPack RPM generator specific variables: RPM extended spec definitions lines. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: May be used to add any ``%define`` lines to the generated spec file. An example of its use is to prevent stripping of executables (but note that - this may also disable other default post install processing):: + this may also disable other default post install processing): + + .. code-block:: cmake set(CPACK_RPM_SPEC_MORE_DEFINE "%define __spec_install_post /bin/true") @@ -471,8 +495,8 @@ List of CPack RPM generator specific variables: Toggle CPack RPM generator debug output. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: May be set when invoking cpack in order to trace debug information during CPack RPM run. For example you may launch CPack like this:: @@ -484,8 +508,8 @@ List of CPack RPM generator specific variables: A user provided spec file. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: May be set by the user in order to specify a USER binary spec file to be used by the CPack RPM generator instead of generating the file. @@ -495,8 +519,8 @@ List of CPack RPM generator specific variables: Spec file template. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: If set CPack will generate a template for USER specified binary spec file and stop with an error. For example launch CPack like this:: @@ -513,23 +537,23 @@ List of CPack RPM generator specific variables: Path to file containing pre install/uninstall/transaction script. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: May be used to embed a pre installation/uninstallation/transaction script in the spec file. The referred script file (or both) will be read and directly put after the ``%pre`` or ``%preun`` section If :variable:`CPACK_RPM_COMPONENT_INSTALL` is set to ON the install/uninstall/transaction script for each component can be overridden with - ``CPACK_RPM_<COMPONENT>_PRE_INSTALL_SCRIPT_FILE``, - ``CPACK_RPM_<COMPONENT>_PRE_UNINSTALL_SCRIPT_FILE``, and - ``CPACK_RPM_<COMPONENT>_PRE_TRANS_SCRIPT_FILE`` + :variable:`!CPACK_RPM_<COMPONENT>_PRE_INSTALL_SCRIPT_FILE`, + :variable:`!CPACK_RPM_<COMPONENT>_PRE_UNINSTALL_SCRIPT_FILE`, and + :variable:`!CPACK_RPM_<COMPONENT>_PRE_TRANS_SCRIPT_FILE` One may verify which scriptlet has been included with:: rpm -qp --scripts package.rpm .. versionadded:: 3.18 - The ``CPACK_RPM_PRE_TRANS_SCRIPT_FILE`` variable. + The :variable:`!CPACK_RPM_PRE_TRANS_SCRIPT_FILE` variable. .. variable:: CPACK_RPM_POST_INSTALL_SCRIPT_FILE CPACK_RPM_POST_UNINSTALL_SCRIPT_FILE @@ -537,35 +561,35 @@ List of CPack RPM generator specific variables: Path to file containing post install/uninstall/transaction script. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: May be used to embed a post installation/uninstallation/transaction script in the spec file. The referred script file (or both) will be read and directly put after the ``%post`` or ``%postun`` section. If :variable:`CPACK_RPM_COMPONENT_INSTALL` is set to ON the install/uninstall/transaction script for each component can be overridden with - ``CPACK_RPM_<COMPONENT>_POST_INSTALL_SCRIPT_FILE``, - ``CPACK_RPM_<COMPONENT>_POST_UNINSTALL_SCRIPT_FILE``, and - ``CPACK_RPM_<COMPONENT>_POST_TRANS_SCRIPT_FILE`` + :variable:`!CPACK_RPM_<COMPONENT>_POST_INSTALL_SCRIPT_FILE`, + :variable:`!CPACK_RPM_<COMPONENT>_POST_UNINSTALL_SCRIPT_FILE`, and + :variable:`!CPACK_RPM_<COMPONENT>_POST_TRANS_SCRIPT_FILE` One may verify which scriptlet has been included with:: rpm -qp --scripts package.rpm .. versionadded:: 3.18 - The ``CPACK_RPM_POST_TRANS_SCRIPT_FILE`` variable. + The :variable:`!CPACK_RPM_POST_TRANS_SCRIPT_FILE` variable. .. variable:: CPACK_RPM_USER_FILELIST CPACK_RPM_<COMPONENT>_USER_FILELIST - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: May be used to explicitly specify ``%(<directive>)`` file line in the spec file. Like ``%config(noreplace)`` or any other directive that be found in the ``%files`` section. Since the CPack RPM generator is generating the list of files (and directories) the - user specified files of the ``CPACK_RPM_<COMPONENT>_USER_FILELIST`` list will + user specified files of the :variable:`!CPACK_RPM_<COMPONENT>_USER_FILELIST` list will be removed from the generated list. If referring to directories do not add a trailing slash. @@ -577,8 +601,8 @@ List of CPack RPM generator specific variables: RPM changelog file. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: May be used to embed a changelog in the spec file. The referred file will be read and directly put after the ``%changelog`` @@ -588,10 +612,20 @@ List of CPack RPM generator specific variables: list of path to be excluded. - * Mandatory : NO - * Default : /etc /etc/init.d /usr /usr/bin /usr/include /usr/lib - /usr/libx32 /usr/lib64 /usr/share /usr/share/aclocal - /usr/share/doc + :Mandatory: No + :Default: + The following paths are excluded by default: + - ``/etc`` + - ``/etc/init.d`` + - ``/usr`` + - ``/usr/bin`` + - ``/usr/include`` + - ``/usr/lib`` + - ``/usr/libx32`` + - ``/usr/lib64`` + - ``/usr/share`` + - ``/usr/share/aclocal`` + - ``/usr/share/doc`` May be used to exclude path (directories or files) from the auto-generated list of paths discovered by CPack RPM. The default value contains a @@ -607,8 +641,8 @@ List of CPack RPM generator specific variables: additional list of path to be excluded. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: May be used to add more exclude path (directories or files) from the initial default list of excluded paths. See @@ -620,8 +654,8 @@ List of CPack RPM generator specific variables: Packages relocation paths list. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: May be used to specify more than one relocation path per relocatable RPM. Variable contains a list of relocation paths that if relative are prefixed @@ -637,7 +671,7 @@ List of CPack RPM generator specific variables: no files/directories/symbolic links on any of the provided prefix locations. Packages that either do not contain any relocation paths or contain files/directories/symbolic links that are outside relocation paths print - out an ``AUTHOR_WARNING`` that RPM will be partially relocatable. + out an :command:`AUTHOR_WARNING <message>` that RPM will be partially relocatable. .. variable:: CPACK_RPM_<COMPONENT>_PACKAGE_PREFIX @@ -645,8 +679,8 @@ List of CPack RPM generator specific variables: Per component relocation path install prefix. - * Mandatory : NO - * Default : CPACK_PACKAGING_INSTALL_PREFIX + :Mandatory: No + :Default: :variable:`CPACK_PACKAGING_INSTALL_PREFIX` May be used to set per component :variable:`CPACK_PACKAGING_INSTALL_PREFIX` for relocatable RPM packages. @@ -658,19 +692,33 @@ List of CPack RPM generator specific variables: Removal of default install prefix from relocation paths list. - * Mandatory : NO - * Default : CPACK_PACKAGING_INSTALL_PREFIX or CPACK_RPM_<COMPONENT>_PACKAGE_PREFIX - are treated as one of relocation paths + :Mandatory: No + :Default: :variable:`CPACK_PACKAGING_INSTALL_PREFIX` or + :variable:`CPACK_RPM_<COMPONENT>_PACKAGE_PREFIX` + are treated as one of relocation paths - May be used to remove CPACK_PACKAGING_INSTALL_PREFIX and CPACK_RPM_<COMPONENT>_PACKAGE_PREFIX + May be used to remove :variable:`CPACK_PACKAGING_INSTALL_PREFIX` and + :variable:`CPACK_RPM_<COMPONENT>_PACKAGE_PREFIX` from relocatable RPM prefix paths. .. variable:: CPACK_RPM_ADDITIONAL_MAN_DIRS .. versionadded:: 3.3 - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: + Regular expressions that are added by default were taken from ``brp-compress`` RPM macro: + - ``/usr/man/man.*`` + - ``/usr/man/.*/man.*`` + - ``/usr/info.*`` + - ``/usr/share/man/man.*`` + - ``/usr/share/man/.*/man.*`` + - ``/usr/share/info.*`` + - ``/usr/kerberos/man.*`` + - ``/usr/X11R6/man/man.*`` + - ``/usr/lib/perl5/man/man.*`` + - ``/usr/share/doc/.*/man/man.*`` + - ``/usr/lib/.*/man/man.*`` May be used to set additional man dirs that could potentially be compressed by brp-compress RPM macro. Variable content must be a list of regular @@ -679,21 +727,6 @@ List of CPack RPM generator specific variables: present in brp-compress RPM script and that brp-compress script must be added to RPM configuration by the operating system. - Regular expressions that are added by default were taken from brp-compress - RPM macro: - - - /usr/man/man.* - - /usr/man/.*/man.* - - /usr/info.* - - /usr/share/man/man.* - - /usr/share/man/.*/man.* - - /usr/share/info.* - - /usr/kerberos/man.* - - /usr/X11R6/man/man.* - - /usr/lib/perl5/man/man.* - - /usr/share/doc/.*/man/man.* - - /usr/lib/.*/man/man.* - .. variable:: CPACK_RPM_DEFAULT_USER CPACK_RPM_<compName>_DEFAULT_USER @@ -701,11 +734,11 @@ List of CPack RPM generator specific variables: default user ownership of RPM content - * Mandatory : NO - * Default : root + :Mandatory: No + :Default: ``root`` Value should be user name and not UID. - Note that <compName> must be in upper-case. + Note that ``<compName>`` must be in upper-case. .. variable:: CPACK_RPM_DEFAULT_GROUP CPACK_RPM_<compName>_DEFAULT_GROUP @@ -714,11 +747,11 @@ List of CPack RPM generator specific variables: default group ownership of RPM content - * Mandatory : NO - * Default : root + :Mandatory: No + :Default: root Value should be group name and not GID. - Note that <compName> must be in upper-case. + Note that ``<compName>`` must be in upper-case. .. variable:: CPACK_RPM_DEFAULT_FILE_PERMISSIONS CPACK_RPM_<compName>_DEFAULT_FILE_PERMISSIONS @@ -727,23 +760,23 @@ List of CPack RPM generator specific variables: default permissions used for packaged files - * Mandatory : NO - * Default : - (system default) + :Mandatory: No + :Default: (system default) - Accepted values are lists with ``PERMISSIONS``. Valid permissions + Accepted values are lists with PERMISSIONS. Valid permissions are: - - OWNER_READ - - OWNER_WRITE - - OWNER_EXECUTE - - GROUP_READ - - GROUP_WRITE - - GROUP_EXECUTE - - WORLD_READ - - WORLD_WRITE - - WORLD_EXECUTE + - ``OWNER_READ`` + - ``OWNER_WRITE`` + - ``OWNER_EXECUTE`` + - ``GROUP_READ`` + - ``GROUP_WRITE`` + - ``GROUP_EXECUTE`` + - ``WORLD_READ`` + - ``WORLD_WRITE`` + - ``WORLD_EXECUTE`` - Note that <compName> must be in upper-case. + Note that ``<compName>`` must be in upper-case. .. variable:: CPACK_RPM_DEFAULT_DIR_PERMISSIONS CPACK_RPM_<compName>_DEFAULT_DIR_PERMISSIONS @@ -752,12 +785,12 @@ List of CPack RPM generator specific variables: default permissions used for packaged directories - * Mandatory : NO - * Default : - (system default) + :Mandatory: No + :Default: (system default) Accepted values are lists with PERMISSIONS. Valid permissions are the same as for :variable:`CPACK_RPM_DEFAULT_FILE_PERMISSIONS`. - Note that <compName> must be in upper-case. + Note that ``<compName>`` must be in upper-case. .. variable:: CPACK_RPM_INSTALL_WITH_EXEC @@ -765,8 +798,8 @@ List of CPack RPM generator specific variables: force execute permissions on programs and shared libraries - * Mandatory : NO - * Default : - (system default) + :Mandatory: No + :Default: (system default) Force set owner, group and world execute permissions on programs and shared libraries. This can be used for creating valid rpm packages on systems such @@ -782,7 +815,9 @@ Packaging of Symbolic Links .. versionadded:: 3.3 -The CPack RPM generator supports packaging of symbolic links:: +The CPack RPM generator supports packaging of symbolic links: + +.. code-block:: cmake execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink <relative_path_location> <symlink_name>) @@ -832,8 +867,8 @@ Debuginfo RPM packaging has its own set of variables: Enable generation of debuginfo RPM package(s). - * Mandatory : NO - * Default : OFF + :Mandatory: No + :Default: ``OFF`` .. note:: @@ -855,8 +890,8 @@ Debuginfo RPM packaging has its own set of variables: Provides locations of root directories of source files from which binaries were built. - * Mandatory : YES if :variable:`CPACK_RPM_DEBUGINFO_PACKAGE` is set - * Default : - + :Mandatory: Yes if :variable:`CPACK_RPM_DEBUGINFO_PACKAGE` is set + :Default: .. note:: @@ -873,15 +908,15 @@ Debuginfo RPM packaging has its own set of variables: Prefix of location where sources will be placed during package installation. - * Mandatory : YES if :variable:`CPACK_RPM_DEBUGINFO_PACKAGE` is set - * Default : "/usr/src/debug/<CPACK_PACKAGE_FILE_NAME>" and - for component packaging "/usr/src/debug/<CPACK_PACKAGE_FILE_NAME>-<component>" + :Mandatory: Yes if :variable:`CPACK_RPM_DEBUGINFO_PACKAGE` is set + :Default: ``/usr/src/debug/${CPACK_PACKAGE_FILE_NAME}`` and + for component packaging ``/usr/src/debug/${CPACK_PACKAGE_FILE_NAME}-<component>`` .. note:: Each source path prefix is additionally suffixed by ``src_<index>`` where index is index of the path used from :variable:`CPACK_BUILD_SOURCE_DIRS` - variable. This produces ``<CPACK_RPM_BUILD_SOURCE_DIRS_PREFIX>/src_<index>`` + variable. This produces ``${CPACK_RPM_BUILD_SOURCE_DIRS_PREFIX}/src_<index>`` replacement path. Limitation is that replaced path part must be shorter or of equal length than the length of its replacement. If that is not the case either @@ -892,8 +927,12 @@ Debuginfo RPM packaging has its own set of variables: Directories containing sources that should be excluded from debuginfo packages. - * Mandatory : NO - * Default : "/usr /usr/src /usr/src/debug" + :Mandatory: No + :Default: + The following paths are excluded by default: + - ``/usr`` + - ``/usr/src`` + - ``/usr/src/debug`` Listed paths are owned by other RPM packages and should therefore not be deleted on debuginfo package uninstallation. @@ -903,8 +942,8 @@ Debuginfo RPM packaging has its own set of variables: Paths that should be appended to :variable:`CPACK_RPM_DEBUGINFO_EXCLUDE_DIRS` for exclusion. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: .. variable:: CPACK_RPM_DEBUGINFO_SINGLE_PACKAGE @@ -912,8 +951,8 @@ Debuginfo RPM packaging has its own set of variables: Create a single debuginfo package even if components packaging is set. - * Mandatory : NO - * Default : OFF + :Mandatory: No + :Default: ``OFF`` When this variable is enabled it produces a single debuginfo package even if component packaging is enabled. @@ -935,8 +974,8 @@ Debuginfo RPM packaging has its own set of variables: Debuginfo package file name. - * Mandatory : NO - * Default : rpmbuild tool generated package file name + :Mandatory: No + :Default: rpmbuild tool generated package file name Alternatively provided debuginfo package file name must end with ``.rpm`` suffix and should differ from file names of other generated packages. @@ -1003,8 +1042,8 @@ Source RPM packaging has its own set of variables: Should the content be packaged as a source rpm (default is binary rpm). - * Mandatory : NO - * Default : OFF + :Mandatory: No + :Default: ``OFF`` .. note:: @@ -1016,27 +1055,29 @@ Source RPM packaging has its own set of variables: Additional command-line parameters provided to :manual:`cmake(1)` executable. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: .. variable:: CPACK_RPM_SOURCE_PKG_PACKAGING_INSTALL_PREFIX Packaging install prefix that would be provided in :variable:`CPACK_PACKAGING_INSTALL_PREFIX` variable for producing binary RPM packages. - * Mandatory : YES - * Default : "/" + :Mandatory: Yes + :Default: ``/`` .. variable:: CPACK_RPM_BUILDREQUIRES List of source rpm build dependencies. - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: May be used to set source RPM build dependencies (BuildRequires). Note that you must enclose the complete build requirements string between quotes, for - example:: + example: + + .. code-block:: cmake set(CPACK_RPM_BUILDREQUIRES "python >= 2.5.0, cmake >= 2.8") @@ -1044,11 +1085,13 @@ Source RPM packaging has its own set of variables: .. versionadded:: 3.22 - * Mandatory : NO - * Default : - + :Mandatory: No + :Default: May be used to keep the dependency generator from scanning specific files or directories for dependencies. Note that you can use a regular - expression that matches all of the directories or files, for example:: + expression that matches all of the directories or files, for example: + + .. code-block:: cmake set(CPACK_RPM_REQUIRES_EXCLUDE_FROM "bin/libqsqloci.*\\.so.*") |