diff options
Diffstat (limited to 'Help')
32 files changed, 166 insertions, 90 deletions
diff --git a/Help/cpack_gen/deb.rst b/Help/cpack_gen/deb.rst index 26021cc..fdde654 100644 --- a/Help/cpack_gen/deb.rst +++ b/Help/cpack_gen/deb.rst @@ -1,20 +1,20 @@ -CPack Deb Generator +CPack DEB Generator ------------------- -The built in (binary) CPack Deb generator (Unix only) +The built in (binary) CPack DEB generator (Unix only) 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 +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`. -The CPack Deb generator should work on any Linux host but it will produce +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 +The CPack DEB generator has specific features which are controlled by the specifics :code:`CPACK_DEBIAN_XXX` variables. :code:`CPACK_DEBIAN_<COMPONENT>_XXXX` variables may be used in order to have @@ -22,13 +22,13 @@ specifics :code:`CPACK_DEBIAN_XXX` variables. the **grouping name** written in upper case. It may be either a component name or a component GROUP name. -Here are some CPack Deb generator wiki resources that are here for historic +Here are some CPack DEB generator wiki resources that are here for historic reasons and are no longer maintained but may still prove useful: - https://gitlab.kitware.com/cmake/community/wikis/doc/cpack/Configuration - https://gitlab.kitware.com/cmake/community/wikis/doc/cpack/PackageGenerators#deb-unix-only -List of CPack Deb generator specific variables: +List of CPack DEB generator specific variables: .. variable:: CPACK_DEB_COMPONENT_INSTALL @@ -64,7 +64,7 @@ List of CPack Deb generator specific variables: * Mandatory : YES * Default : ``<CPACK_PACKAGE_FILE_NAME>[-<component>].deb`` - This may be set to ``DEB-DEFAULT`` to allow the CPack Deb generator to generate + This may be set to ``DEB-DEFAULT`` to allow the CPack DEB generator to generate package file name by itself in deb format:: <PackageName>_<VersionNumber>-<DebianRevisionNumber>_<DebianArchitecture>.deb @@ -75,7 +75,7 @@ List of CPack Deb generator specific variables: .. note:: Preferred setting of this variable is ``DEB-DEFAULT`` but for backward - compatibility with the CPack Deb generator in CMake prior to version 3.6 this + compatibility with the CPack DEB generator in CMake prior to version 3.6 this feature is disabled by default. .. note:: @@ -279,7 +279,7 @@ List of CPack Deb generator specific variables: .. variable:: CPACK_DEBIAN_PACKAGE_DEBUG May be set when invoking cpack in order to trace debug information - during the CPack Deb generator run. + during the CPack DEB generator run. * Mandatory : NO * Default : - @@ -553,5 +553,5 @@ Reproducible packages The environment variable ``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 +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 b7b3a0a..1e37889 100644 --- a/Help/cpack_gen/dmg.rst +++ b/Help/cpack_gen/dmg.rst @@ -1,7 +1,7 @@ -CPack DMG Generator -------------------- +CPack DragNDrop Generator +------------------------- -DragNDrop CPack generator (macOS). +The DragNDrop CPack generator (macOS) creates a DMG image. Variables specific to CPack DragNDrop generator ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ diff --git a/Help/cpack_gen/external.rst b/Help/cpack_gen/external.rst index f98e1c9..e4912a4 100644 --- a/Help/cpack_gen/external.rst +++ b/Help/cpack_gen/external.rst @@ -21,11 +21,11 @@ install and package files as required. Alternatively CPack can invoke an external packaging software through an optional custom CMake script in -:variable:`CPACK_EXT_PACKAGE_SCRIPT` instead. +:variable:`CPACK_EXTERNAL_PACKAGE_SCRIPT` instead. Staging of installation files may also optionally be taken care of by the generator when enabled through the -:variable:`CPACK_EXT_ENABLE_STAGING` variable. +:variable:`CPACK_EXTERNAL_ENABLE_STAGING` variable. JSON Format ^^^^^^^^^^^ @@ -46,10 +46,10 @@ always of the format ``major.minor``. In other words, it always has exactly two parts, separated by a period. You can request one or more specific versions of the output format as described -below with :variable:`CPACK_EXT_REQUESTED_VERSIONS`. The output format will +below with :variable:`CPACK_EXTERNAL_REQUESTED_VERSIONS`. The output format will have a major version that exactly matches the requested major version, and a minor version that is greater than or equal to the requested minor version. If -no version is requested with :variable:`CPACK_EXT_REQUESTED_VERSIONS`, the +no version is requested with :variable:`CPACK_EXTERNAL_REQUESTED_VERSIONS`, the latest known major version is used by default. Currently, the only supported format is 1.0, which is described below. @@ -234,7 +234,7 @@ following fields in the root: Variables specific to CPack External generator ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -.. variable:: CPACK_EXT_REQUESTED_VERSIONS +.. variable:: CPACK_EXTERNAL_REQUESTED_VERSIONS This variable is used to request a specific version of the CPack External generator. It is a list of ``major.minor`` values, separated by semicolons. @@ -248,7 +248,7 @@ Variables specific to CPack External generator The generator knows how to generate the version if it has a versioned generator whose major version exactly matches the requested major version, and whose minor version is greater than or equal to the requested minor - version. For example, if ``CPACK_EXT_REQUESTED_VERSIONS`` contains 1.0, and + version. For example, if ``CPACK_EXTERNAL_REQUESTED_VERSIONS`` contains 1.0, and the CPack External generator knows how to generate 1.1, it will generate 1.1. If the generator doesn't know how to generate a version in the list, it skips the version and looks at the next one. If it doesn't know how to generate any @@ -257,11 +257,11 @@ Variables specific to CPack External generator If this variable is not set, or is empty, the CPack External generator will generate the highest major and minor version that it knows how to generate. - If an invalid version is encountered in ``CPACK_EXT_REQUESTED_VERSIONS`` (one + If an invalid version is encountered in ``CPACK_EXTERNAL_REQUESTED_VERSIONS`` (one that doesn't match ``major.minor``, where ``major`` and ``minor`` are integers), it is ignored. -.. variable:: CPACK_EXT_ENABLE_STAGING +.. variable:: CPACK_EXTERNAL_ENABLE_STAGING This variable can be set to true to enable optional installation into a temporary staging area which can then be picked up @@ -274,7 +274,7 @@ Variables specific to CPack External generator It also contains the staging area ``CPACK_TEMPORARY_DIRECTORY`` into which CPack performs the installation when staging is enabled. -.. variable:: CPACK_EXT_PACKAGE_SCRIPT +.. variable:: CPACK_EXTERNAL_PACKAGE_SCRIPT This variable can optionally specify the full path to a CMake script file to be run as part of the CPack invocation. diff --git a/Help/cpack_gen/freebsd.rst b/Help/cpack_gen/freebsd.rst index 2419057..b22ea9a 100644 --- a/Help/cpack_gen/freebsd.rst +++ b/Help/cpack_gen/freebsd.rst @@ -13,7 +13,7 @@ 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 information that may already be specified for Debian packages for the -:cpack_gen:`CPack Deb Generator`. It also tries to re-use RPM packaging +:cpack_gen:`CPack DEB Generator`. It also tries to re-use RPM packaging information when Debian does not specify. The CPack FreeBSD generator should work on any host with libpkg installed. The diff --git a/Help/cpack_gen/wix.rst b/Help/cpack_gen/wix.rst index fc8a098..dde4943 100644 --- a/Help/cpack_gen/wix.rst +++ b/Help/cpack_gen/wix.rst @@ -1,9 +1,9 @@ -CPack WiX Generator +CPack WIX Generator ------------------- -CPack WiX generator specific options +CPack WIX generator specific options -Variables specific to CPack WiX generator +Variables specific to CPack WIX generator ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ The following variables are specific to the installers built on @@ -50,11 +50,11 @@ Windows using WiX. If CPACK_RESOURCE_FILE_LICENSE has an .rtf extension it is used as-is. If CPACK_RESOURCE_FILE_LICENSE has an .txt extension it is implicitly - converted to RTF by the WiX Generator. + converted to RTF by the WIX Generator. The expected encoding of the .txt file is UTF-8. With CPACK_WIX_LICENSE_RTF you can override the license file used by the - WiX Generator in case CPACK_RESOURCE_FILE_LICENSE is in an unsupported + WIX Generator in case CPACK_RESOURCE_FILE_LICENSE is in an unsupported format or the .txt -> .rtf conversion does not work as expected. .. variable:: CPACK_WIX_PRODUCT_ICON @@ -122,10 +122,10 @@ Windows using WiX. generated WiX sources This optional variable can be used to specify an XML file that the - WiX generator will use to inject fragments into its generated + WIX generator will use to inject fragments into its generated source files. - Patch files understood by the CPack WiX generator + Patch files understood by the CPack WIX generator roughly follow this RELAX NG compact schema: .. code-block:: none @@ -155,7 +155,7 @@ Windows using WiX. The following example illustrates how this works. - Given that the WiX generator creates the following XML element: + Given that the WIX generator creates the following XML element: .. code-block:: xml diff --git a/Help/manual/cmake-developer.7.rst b/Help/manual/cmake-developer.7.rst index f05c4b1..c3bbf28 100644 --- a/Help/manual/cmake-developer.7.rst +++ b/Help/manual/cmake-developer.7.rst @@ -13,6 +13,9 @@ Introduction This manual is intended for reference by developers modifying the CMake source tree itself, and by those authoring externally-maintained modules. +See https://cmake.org/get-involved/ to get involved in development of +CMake upstream. + Adding Compile Features ======================= diff --git a/Help/manual/cmake-modules.7.rst b/Help/manual/cmake-modules.7.rst index c0bef08..95744df 100644 --- a/Help/manual/cmake-modules.7.rst +++ b/Help/manual/cmake-modules.7.rst @@ -237,6 +237,7 @@ They are normally called through the :command:`find_package` command. /module/FindSDL_ttf /module/FindSelfPackers /module/FindSquish + /module/FindSQLite3 /module/FindSubversion /module/FindSWIG /module/FindTCL diff --git a/Help/manual/cmake-properties.7.rst b/Help/manual/cmake-properties.7.rst index 1651114..047859d 100644 --- a/Help/manual/cmake-properties.7.rst +++ b/Help/manual/cmake-properties.7.rst @@ -124,6 +124,7 @@ Properties on Targets /prop_tgt/ARCHIVE_OUTPUT_NAME_CONFIG /prop_tgt/ARCHIVE_OUTPUT_NAME /prop_tgt/AUTOGEN_BUILD_DIR + /prop_tgt/AUTOGEN_ORIGIN_DEPENDS /prop_tgt/AUTOGEN_PARALLEL /prop_tgt/AUTOGEN_TARGET_DEPENDS /prop_tgt/AUTOMOC_COMPILER_PREDEFINES diff --git a/Help/manual/cmake-qt.7.rst b/Help/manual/cmake-qt.7.rst index 724d8ec..0382794 100644 --- a/Help/manual/cmake-qt.7.rst +++ b/Help/manual/cmake-qt.7.rst @@ -44,14 +44,10 @@ Qt Build Tools Qt relies on some bundled tools for code generation, such as ``moc`` for meta-object code generation, ``uic`` for widget layout and population, -and ``rcc`` for virtual filesystem content generation. These tools may be +and ``rcc`` for virtual file system content generation. These tools may be automatically invoked by :manual:`cmake(1)` if the appropriate conditions are met. The automatic tool invocation may be used with both Qt 4 and Qt 5. -The tools are executed as part of a synthesized custom target generated by -CMake. Target dependencies may be added to that custom target by adding them -to the :prop_tgt:`AUTOGEN_TARGET_DEPENDS` target property. - AUTOMOC ^^^^^^^ @@ -214,19 +210,31 @@ overrides options from the :prop_tgt:`AUTORCC_OPTIONS` target property. Source files can be excluded from :prop_tgt:`AUTORCC` processing by enabling :prop_sf:`SKIP_AUTORCC` or the broader :prop_sf:`SKIP_AUTOGEN`. +The ``<ORIGIN>_autogen`` target +=============================== + +The ``moc`` and ``uic`` tools are executed as part of a synthesized +``<ORIGIN>_autogen`` :command:`custom target <add_custom_target>` generated by +CMake. By default that ``<ORIGIN>_autogen`` target inherits the dependencies +of the ``<ORIGIN>`` target (see :prop_tgt:`AUTOGEN_ORIGIN_DEPENDS`). +Target dependencies may be added to the ``<ORIGIN>_autogen`` target by adding +them to the :prop_tgt:`AUTOGEN_TARGET_DEPENDS` target property. + Visual Studio Generators ======================== -When using the :manual:`Visual Studio generators <cmake-generators(7)>`, -CMake uses a ``PRE_BUILD`` :command:`custom command <add_custom_command>` for -:prop_tgt:`AUTOMOC` and :prop_tgt:`AUTOUIC`. -If the :prop_tgt:`AUTOMOC` and :prop_tgt:`AUTOUIC` processing depends on files, -a :command:`custom target <add_custom_target>` is used instead. -This happens when - -- The origin target depends on :prop_sf:`GENERATED` files which aren't excluded - from :prop_tgt:`AUTOMOC` and :prop_tgt:`AUTOUIC` by :prop_sf:`SKIP_AUTOMOC`, - :prop_sf:`SKIP_AUTOUIC`, :prop_sf:`SKIP_AUTOGEN` or :policy:`CMP0071` +When using the :manual:`Visual Studio generators <cmake-generators(7)>`, CMake +generates a ``PRE_BUILD`` :command:`custom command <add_custom_command>` +instead of the ``<ORIGIN>_autogen`` :command:`custom target <add_custom_target>` +(for :prop_tgt:`AUTOMOC` and :prop_tgt:`AUTOUIC`). +This isn't always possible though and +an ``<ORIGIN>_autogen`` :command:`custom target <add_custom_target>` is used, +when either + +- the ``<ORIGIN>`` target depends on :prop_sf:`GENERATED` files which aren't + excluded from :prop_tgt:`AUTOMOC` and :prop_tgt:`AUTOUIC` by + :prop_sf:`SKIP_AUTOMOC`, :prop_sf:`SKIP_AUTOUIC`, :prop_sf:`SKIP_AUTOGEN` + or :policy:`CMP0071` - :prop_tgt:`AUTOGEN_TARGET_DEPENDS` lists a source file qtmain.lib on Windows diff --git a/Help/manual/cmake-variables.7.rst b/Help/manual/cmake-variables.7.rst index b88c661..9b12fc5 100644 --- a/Help/manual/cmake-variables.7.rst +++ b/Help/manual/cmake-variables.7.rst @@ -309,6 +309,7 @@ Variables that Control the Build /variable/CMAKE_ANDROID_STL_TYPE /variable/CMAKE_ARCHIVE_OUTPUT_DIRECTORY /variable/CMAKE_ARCHIVE_OUTPUT_DIRECTORY_CONFIG + /variable/CMAKE_AUTOGEN_ORIGIN_DEPENDS /variable/CMAKE_AUTOGEN_PARALLEL /variable/CMAKE_AUTOGEN_VERBOSE /variable/CMAKE_AUTOMOC diff --git a/Help/module/CPackDMG.rst b/Help/module/CPackDMG.rst index a597002..e59dcbb 100644 --- a/Help/module/CPackDMG.rst +++ b/Help/module/CPackDMG.rst @@ -1,4 +1,4 @@ CPackDMG -------- -The documentation for the CPack DMG generator has moved here: :cpack_gen:`CPack DMG Generator` +The documentation for the CPack DragNDrop generator has moved here: :cpack_gen:`CPack DragNDrop Generator` diff --git a/Help/module/CPackDeb.rst b/Help/module/CPackDeb.rst index 73e59a2..cd7e5f3 100644 --- a/Help/module/CPackDeb.rst +++ b/Help/module/CPackDeb.rst @@ -1,4 +1,4 @@ CPackDeb -------- -The documentation for the CPack Deb generator has moved here: :cpack_gen:`CPack Deb Generator` +The documentation for the CPack DEB generator has moved here: :cpack_gen:`CPack DEB Generator` diff --git a/Help/module/CPackWIX.rst b/Help/module/CPackWIX.rst index e1d4a03..c88c723 100644 --- a/Help/module/CPackWIX.rst +++ b/Help/module/CPackWIX.rst @@ -1,4 +1,4 @@ CPackWIX -------- -The documentation for the CPack WiX generator has moved here: :cpack_gen:`CPack WiX Generator` +The documentation for the CPack WIX generator has moved here: :cpack_gen:`CPack WIX Generator` diff --git a/Help/module/FindSQLite3.rst b/Help/module/FindSQLite3.rst new file mode 100644 index 0000000..d1910e5 --- /dev/null +++ b/Help/module/FindSQLite3.rst @@ -0,0 +1 @@ +.. cmake-module:: ../../Modules/FindSQLite3.cmake diff --git a/Help/prop_tgt/AUTOGEN_ORIGIN_DEPENDS.rst b/Help/prop_tgt/AUTOGEN_ORIGIN_DEPENDS.rst new file mode 100644 index 0000000..f61089a --- /dev/null +++ b/Help/prop_tgt/AUTOGEN_ORIGIN_DEPENDS.rst @@ -0,0 +1,26 @@ +AUTOGEN_ORIGIN_DEPENDS +---------------------- + +Switch for forwarding origin target dependencies to the corresponding +``_autogen`` target. + +Targets which have their :prop_tgt:`AUTOMOC` or :prop_tgt:`AUTOUIC` property +``ON`` have a corresponding ``_autogen`` target which is used to auto generate +``moc`` and ``uic`` files. As this ``_autogen`` target is created at +generate-time, it is not possible to define dependencies of it, +such as to create inputs for the ``moc`` or ``uic`` executable. + +The dependencies of the ``_autogen`` target are composed from + +- the origin target dependencies + (by default enabled via :prop_tgt:`AUTOGEN_ORIGIN_DEPENDS`) +- user defined dependencies from :prop_tgt:`AUTOGEN_TARGET_DEPENDS` + +:prop_tgt:`AUTOGEN_ORIGIN_DEPENDS` decides whether the origin target +dependencies should be forwarded to the ``_autogen`` target or not. + +By default :prop_tgt:`AUTOGEN_ORIGIN_DEPENDS` is initialized from +:variable:`CMAKE_AUTOGEN_ORIGIN_DEPENDS` which is ``ON`` by default. + +See the :manual:`cmake-qt(7)` manual for more information on using CMake +with Qt. diff --git a/Help/prop_tgt/AUTOGEN_TARGET_DEPENDS.rst b/Help/prop_tgt/AUTOGEN_TARGET_DEPENDS.rst index 7d3dfd1..84c2bfe 100644 --- a/Help/prop_tgt/AUTOGEN_TARGET_DEPENDS.rst +++ b/Help/prop_tgt/AUTOGEN_TARGET_DEPENDS.rst @@ -9,9 +9,15 @@ Targets which have their :prop_tgt:`AUTOMOC` or :prop_tgt:`AUTOUIC` property generate-time, it is not possible to define dependencies of it, such as to create inputs for the ``moc`` or ``uic`` executable. -The :prop_tgt:`AUTOGEN_TARGET_DEPENDS` target property can be set instead to a -list of dependencies of the ``_autogen`` target. Dependencies can be target -names or file names. +The dependencies of the ``_autogen`` target are composed from + +- the origin target dependencies + (by default enabled via :prop_tgt:`AUTOGEN_ORIGIN_DEPENDS`) +- user defined dependencies from :prop_tgt:`AUTOGEN_TARGET_DEPENDS` + +The :prop_tgt:`AUTOGEN_TARGET_DEPENDS` target property can be set to a +list of additional dependencies for the ``_autogen`` target. Dependencies +can be target names or file names. See the :manual:`cmake-qt(7)` manual for more information on using CMake with Qt. diff --git a/Help/prop_tgt/AUTOMOC.rst b/Help/prop_tgt/AUTOMOC.rst index 3bd693a..70d89f2 100644 --- a/Help/prop_tgt/AUTOMOC.rst +++ b/Help/prop_tgt/AUTOMOC.rst @@ -3,8 +3,8 @@ AUTOMOC Should the target be processed with automoc (for Qt projects). -AUTOMOC is a boolean specifying whether CMake will handle the Qt ``moc`` -preprocessor automatically, i.e. without having to use the +:prop_tgt:`AUTOMOC` is a boolean specifying whether CMake will handle the Qt +``moc`` preprocessor automatically, i.e. without having to use the :module:`QT4_WRAP_CPP() <FindQt4>` or QT5_WRAP_CPP() macro. Currently Qt4 and Qt5 are supported. diff --git a/Help/prop_tgt/AUTORCC.rst b/Help/prop_tgt/AUTORCC.rst index 3cc5990..99c2b0e 100644 --- a/Help/prop_tgt/AUTORCC.rst +++ b/Help/prop_tgt/AUTORCC.rst @@ -3,7 +3,7 @@ AUTORCC Should the target be processed with autorcc (for Qt projects). -``AUTORCC`` is a boolean specifying whether CMake will handle +:prop_tgt:`AUTORCC` is a boolean specifying whether CMake will handle the Qt ``rcc`` code generator automatically, i.e. without having to use the :module:`QT4_ADD_RESOURCES() <FindQt4>` or ``QT5_ADD_RESOURCES()`` macro. Currently Qt4 and Qt5 are supported. diff --git a/Help/prop_tgt/AUTOUIC.rst b/Help/prop_tgt/AUTOUIC.rst index 4fc603f..8cae0a7 100644 --- a/Help/prop_tgt/AUTOUIC.rst +++ b/Help/prop_tgt/AUTOUIC.rst @@ -3,7 +3,7 @@ AUTOUIC Should the target be processed with autouic (for Qt projects). -``AUTOUIC`` is a boolean specifying whether CMake will handle +:prop_tgt:`AUTOUIC` is a boolean specifying whether CMake will handle the Qt ``uic`` code generator automatically, i.e. without having to use the :module:`QT4_WRAP_UI() <FindQt4>` or ``QT5_WRAP_UI()`` macro. Currently Qt4 and Qt5 are supported. diff --git a/Help/release/3.1.rst b/Help/release/3.1.rst index 8278353..8bea28f 100644 --- a/Help/release/3.1.rst +++ b/Help/release/3.1.rst @@ -294,11 +294,11 @@ CPack * :manual:`cpack(1)` gained ``7Z`` and ``TXZ`` generators supporting lzma-compressed archives. -* The :cpack_gen:`CPack Deb Generator` learned a new +* The :cpack_gen:`CPack DEB Generator` learned a new :variable:`CPACK_DEBIAN_COMPRESSION_TYPE` variable to set the tarball compression type. -* The :manual:`cpack(1)` ``WiX`` generator learned to support +* The :cpack_gen:`CPack WIX Generator` learned to support a :prop_inst:`CPACK_WIX_ACL` installed file property to specify an Access Control List. diff --git a/Help/release/3.10.rst b/Help/release/3.10.rst index 66a1d09..03eda36 100644 --- a/Help/release/3.10.rst +++ b/Help/release/3.10.rst @@ -186,15 +186,15 @@ CPack * A :cpack_gen:`CPack FreeBSD Generator` was added for FreeBSD ``pkg(8)``. -* The :cpack_gen:`CPack Deb Generator` was enabled on Windows. While not +* The :cpack_gen:`CPack DEB Generator` was enabled on Windows. While not fully featured (due to the lack of external UNIX tools) this will allow building basic cross-platform Debian packages. -* The :cpack_gen:`CPack Deb Generator` learned to set package release +* The :cpack_gen:`CPack DEB Generator` learned to set package release version in ``Version`` info property. See the :variable:`CPACK_DEBIAN_PACKAGE_RELEASE` variable. -* The :cpack_gen:`CPack Deb Generator` learned more strict package +* The :cpack_gen:`CPack DEB Generator` learned more strict package version checking that complies with Debian rules. * The :module:`CPackIFW` module :command:`cpack_ifw_configure_component` and @@ -211,7 +211,7 @@ CPack repack dependent components. This feature is only available when using QtIFW 3.1 or later. -* The :cpack_gen:`CPack RPM Generator` and :cpack_gen:`CPack Deb Generator` +* The :cpack_gen:`CPack RPM Generator` and :cpack_gen:`CPack DEB Generator` learned to set the package epoch version. See :variable:`CPACK_RPM_PACKAGE_EPOCH` and :variable:`CPACK_DEBIAN_PACKAGE_EPOCH` variables. diff --git a/Help/release/3.13.rst b/Help/release/3.13.rst index f547556..9f7e61f 100644 --- a/Help/release/3.13.rst +++ b/Help/release/3.13.rst @@ -138,6 +138,9 @@ Properties Modules ------- +* The :module:`FindBoost` module gained a ``Boost_ARCHITECTURE`` option + to specify a Boost architecture-specific library filename fragment. + * The :module:`FindCURL` module learned to find debug and release variants separately. @@ -178,11 +181,11 @@ CTest CPack ----- -* The :cpack_gen:`CPack Deb Generator` learned to split debug symbols into +* The :cpack_gen:`CPack DEB Generator` learned to split debug symbols into a corresponding .ddeb package when ``CPACK_DEBIAN_DEBUGINFO_PACKAGE`` is set. -* The :cpack_gen:`CPack Deb Generator` learned to honor the ``SOURCE_DATE_EPOCH`` +* The :cpack_gen:`CPack DEB Generator` learned to honor the ``SOURCE_DATE_EPOCH`` environment variable when packaging files. This is useful for generating reproducible packages. diff --git a/Help/release/3.3.rst b/Help/release/3.3.rst index 11f0c60..6657e8d 100644 --- a/Help/release/3.3.rst +++ b/Help/release/3.3.rst @@ -172,11 +172,11 @@ CPack * The :cpack_gen:`CPack IFW Generator` learned to support Qt Framework Installer 2.0 tools. -* The :cpack_gen:`CPack Deb Generator` learned a new +* The :cpack_gen:`CPack DEB Generator` learned a new :variable:`CPACK_DEBIAN_<COMPONENT>_PACKAGE_SHLIBDEPS` variable to specify per-component use of ``dpkg-shlibdeps``. -* The :cpack_gen:`CPack Deb Generator` learned a new +* The :cpack_gen:`CPack DEB Generator` learned a new :variable:`CPACK_DEBIAN_<COMPONENT>_PACKAGE_DEPENDS` option to specify per-component dependencies. diff --git a/Help/release/3.4.rst b/Help/release/3.4.rst index 0a0e6df..943d267 100644 --- a/Help/release/3.4.rst +++ b/Help/release/3.4.rst @@ -197,7 +197,7 @@ CTest CPack ----- -* The :cpack_gen:`CPack Deb Generator` learned to set package dependencies +* The :cpack_gen:`CPack DEB Generator` learned to set package dependencies per component. See variables: * :variable:`CPACK_DEBIAN_<COMPONENT>_PACKAGE_BREAKS` @@ -249,10 +249,10 @@ Other Changes :module:`CheckSymbolExists`, and :module:`FindThreads` modules learned to work in environments where only CXX is enabled. -* The :cpack_gen:`CPack Deb Generator` now correctly excludes symlinks +* The :cpack_gen:`CPack DEB Generator` now correctly excludes symlinks during package checksum calculation. -* The :cpack_gen:`CPack Deb Generator` no longer uses fakeroot and +* The :cpack_gen:`CPack DEB Generator` no longer uses fakeroot and system tar program for packaging. * The :module:`CPack` module no longer mangles settings with CMake-special diff --git a/Help/release/3.5.rst b/Help/release/3.5.rst index f988908..58a5d4e 100644 --- a/Help/release/3.5.rst +++ b/Help/release/3.5.rst @@ -120,23 +120,23 @@ Platforms CPack ----- -* The :cpack_gen:`CPack DMG Generator` learned new variable to +* The :cpack_gen:`CPack DragNDrop Generator` learned new variable to specify AppleScript file run to customize appearance of ``DragNDrop`` installer folder, including background image setting using supplied PNG or multi-resolution TIFF file. See the :variable:`CPACK_DMG_DS_STORE_SETUP_SCRIPT` and :variable:`CPACK_DMG_BACKGROUND_IMAGE` variables. -* The :cpack_gen:`CPack Deb Generator` learned to set the optional config +* The :cpack_gen:`CPack DEB Generator` learned to set the optional config file ``Source`` field using a monolithic or per-component variable. See :variable:`CPACK_DEBIAN_PACKAGE_SOURCE`. -* The :cpack_gen:`CPack Deb Generator` learned to set Package, Section +* The :cpack_gen:`CPack DEB Generator` learned to set Package, Section and Priority control fields per-component. See variables :variable:`CPACK_DEBIAN_<COMPONENT>_PACKAGE_SECTION` and :variable:`CPACK_DEBIAN_<COMPONENT>_PACKAGE_PRIORITY`. -* The :cpack_gen:`CPack DMG Generator` learned to add +* The :cpack_gen:`CPack DragNDrop Generator` learned to add multi-lingual SLAs to a DMG which is presented to the user when they try to mount the DMG. See the :variable:`CPACK_DMG_SLA_LANGUAGES` and :variable:`CPACK_DMG_SLA_DIR` variables for details. diff --git a/Help/release/3.6.rst b/Help/release/3.6.rst index b2403cf..f0add07 100644 --- a/Help/release/3.6.rst +++ b/Help/release/3.6.rst @@ -165,24 +165,24 @@ CTest CPack ----- -* The :cpack_gen:`CPack Deb Generator` learned how to handle ``$ORIGIN`` +* The :cpack_gen:`CPack DEB Generator` learned how to handle ``$ORIGIN`` in ``CMAKE_INSTALL_RPATH`` when :variable:`CPACK_DEBIAN_PACKAGE_SHLIBDEPS` is used for dependency auto detection. -* The :cpack_gen:`CPack Deb Generator` learned how to generate +* The :cpack_gen:`CPack DEB Generator` learned how to generate ``DEBIAN/shlibs`` contorl file when package contains shared libraries. -* The :cpack_gen:`CPack Deb Generator` learned how to generate +* The :cpack_gen:`CPack DEB Generator` learned how to generate ``DEBIAN/postinst`` and ``DEBIAN/postrm`` files if the package installs libraries in ldconfig-controlled locations (e.g. ``/lib/``, ``/usr/lib/``). -* The :cpack_gen:`CPack Deb Generator` learned how to generate dependencies +* The :cpack_gen:`CPack DEB Generator` learned how to generate dependencies between Debian packages if multi-component setup is used and :variable:`CPACK_COMPONENT_<compName>_DEPENDS` variables are set. For backward compatibility this feature is disabled by default. See :variable:`CPACK_DEBIAN_ENABLE_COMPONENT_DEPENDS`. -* The :cpack_gen:`CPack Deb Generator` learned how to set custom package +* The :cpack_gen:`CPack DEB Generator` learned how to set custom package file names including how to generate properly-named Debian packages:: <PackageName>_<VersionNumber>-<DebianRevisionNumber>_<DebianArchitecture>.deb @@ -191,17 +191,17 @@ CPack :variable:`CPACK_DEBIAN_FILE_NAME` and :variable:`CPACK_DEBIAN_<COMPONENT>_FILE_NAME`. -* The :cpack_gen:`CPack Deb Generator` learned how to set the package +* The :cpack_gen:`CPack DEB Generator` learned how to set the package release number (``DebianRevisionNumber`` in package file name when used in combination with ``DEB-DEFAULT`` value set by :variable:`CPACK_DEBIAN_FILE_NAME`). See :variable:`CPACK_DEBIAN_PACKAGE_RELEASE`. -* The :cpack_gen:`CPack Deb Generator` learned how to set the package +* The :cpack_gen:`CPack DEB Generator` learned how to set the package architecture per-component. See :variable:`CPACK_DEBIAN_<COMPONENT>_PACKAGE_ARCHITECTURE`. -* The :cpack_gen:`CPack DMG Generator` learned a new option to skip the +* The :cpack_gen:`CPack DragNDrop Generator` learned a new option to skip the ``/Applications`` symlink. See the :variable:`CPACK_DMG_DISABLE_APPLICATIONS_SYMLINK` variable. diff --git a/Help/release/3.7.rst b/Help/release/3.7.rst index fae10f5..345c056 100644 --- a/Help/release/3.7.rst +++ b/Help/release/3.7.rst @@ -226,7 +226,7 @@ CPack * CPack gained a new :variable:`CPACK_PACKAGE_CHECKSUM` variable to enable generation of a checksum file for each package file. -* The :cpack_gen:`CPack Deb Generator` learned to support long file names +* The :cpack_gen:`CPack DEB Generator` learned to support long file names when archive format is set to GNU tar. See :variable:`CPACK_DEBIAN_ARCHIVE_TYPE` @@ -252,19 +252,19 @@ CPack :variable:`CPACK_NSIS_<compName>_INSTALL_DIRECTORY`. This can be used to set component specific installation directories. -* The :cpack_gen:`CPack WiX Generator` now supports +* The :cpack_gen:`CPack WIX Generator` now supports :variable:`CPACK_WIX_SKIP_PROGRAM_FOLDER` to allow specification of a custom absolute installation prefix outside of the ProgramFiles folders. -* The :cpack_gen:`CPack WiX Generator` now supports +* The :cpack_gen:`CPack WIX Generator` now supports :variable:`CPACK_COMPONENT_<compName>_DISABLED`. This can be used to deselect a component from being installed by default. -* The :cpack_gen:`CPack WiX Generator` now supports +* The :cpack_gen:`CPack WIX Generator` now supports :variable:`CPACK_WIX_PATCH_FILE` fragments for Feature elements. -* The :cpack_gen:`CPack WiX Generator` now supports +* The :cpack_gen:`CPack WIX Generator` now supports :variable:`CPACK_WIX_ROOT_FEATURE_TITLE` and :variable:`CPACK_WIX_ROOT_FEATURE_DESCRIPTION` to allow the specification of a custom title and description for the root feature element. diff --git a/Help/release/3.9.rst b/Help/release/3.9.rst index 5001e90..ffa95aa 100644 --- a/Help/release/3.9.rst +++ b/Help/release/3.9.rst @@ -232,12 +232,12 @@ CPack * The :cpack_gen:`CPack RPM Generator` learned to modify the ``debuginfo`` package name. See the :variable:`CPACK_RPM_DEBUGINFO_FILE_NAME` variable. -* The :cpack_gen:`CPack WiX Generator` patching system now has the +* The :cpack_gen:`CPack WIX Generator` patching system now has the ability to set additional attributes. This can be done by specifying attributes with the ``CPackWiXFragment`` XML tag after the ``Id`` attribute. See the :variable:`CPACK_WIX_PATCH_FILE` variable. -* The :cpack_gen:`CPack WiX Generator` implemented a new +* The :cpack_gen:`CPack WIX Generator` implemented a new :variable:`CPACK_WIX_ROOT_FOLDER_ID` variable which allows using a custom root folder ID instead of the default ``ProgramFilesFolder`` / ``ProgramFiles64Folder``. diff --git a/Help/release/dev/FindPostgreSQL-target.rst b/Help/release/dev/FindPostgreSQL-target.rst new file mode 100644 index 0000000..84f8d1a --- /dev/null +++ b/Help/release/dev/FindPostgreSQL-target.rst @@ -0,0 +1,4 @@ +FindPostgreSQL-target +--------------------- + +* The :module:`FindPostgreSQL` module now provides an imported target. diff --git a/Help/release/dev/FindSQLite3-module.rst b/Help/release/dev/FindSQLite3-module.rst new file mode 100644 index 0000000..733a4d3 --- /dev/null +++ b/Help/release/dev/FindSQLite3-module.rst @@ -0,0 +1,4 @@ +FindSQLite3-module +------------------ + +* The :module:`FindSQLite3` module was added to find the SQLite v3.x library. diff --git a/Help/release/dev/autogen-origin-depends.rst b/Help/release/dev/autogen-origin-depends.rst new file mode 100644 index 0000000..7310487 --- /dev/null +++ b/Help/release/dev/autogen-origin-depends.rst @@ -0,0 +1,7 @@ +autogen-origin-depends +---------------------- + +* A new :variable:`CMAKE_AUTOGEN_ORIGIN_DEPENDS` variable and + :prop_tgt:`AUTOGEN_ORIGIN_DEPENDS` target property may be set to enable or + disable forwarding of the origin target dependencies to the corresponding + ``_autogen`` target. diff --git a/Help/variable/CMAKE_AUTOGEN_ORIGIN_DEPENDS.rst b/Help/variable/CMAKE_AUTOGEN_ORIGIN_DEPENDS.rst new file mode 100644 index 0000000..1398e78 --- /dev/null +++ b/Help/variable/CMAKE_AUTOGEN_ORIGIN_DEPENDS.rst @@ -0,0 +1,11 @@ +CMAKE_AUTOGEN_ORIGIN_DEPENDS +---------------------------- + +Switch for forwarding origin target dependencies to the corresponding +``_autogen`` targets. + +This variable is used to initialize the :prop_tgt:`AUTOGEN_ORIGIN_DEPENDS` +property on all the targets. See that target property for additional +information. + +By default :variable:`CMAKE_AUTOGEN_ORIGIN_DEPENDS` is ``ON``. |