mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-04 12:49:36 -06:00
CPackIFW: Add support for ProductImages config option
This commit is contained in:
@@ -248,6 +248,14 @@ Package
|
|||||||
By default is ``OFF`` or used value
|
By default is ``OFF`` or used value
|
||||||
from ``CPACK_DOWNLOAD_ALL`` if set
|
from ``CPACK_DOWNLOAD_ALL`` if set
|
||||||
|
|
||||||
|
.. variable:: CPACK_IFW_PACKAGE_PRODUCT_IMAGES
|
||||||
|
|
||||||
|
.. versionadded:: 3.23
|
||||||
|
|
||||||
|
A list of images to be shown on the ``PerformInstallationPage``.
|
||||||
|
|
||||||
|
This feature is available for QtIFW 4.0.0 or newer.
|
||||||
|
|
||||||
Components
|
Components
|
||||||
""""""""""
|
""""""""""
|
||||||
|
|
||||||
|
|||||||
8
Help/release/dev/cpackifw-package-product-images.rst
Normal file
8
Help/release/dev/cpackifw-package-product-images.rst
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
|
||||||
|
cpackifw-package-product-images
|
||||||
|
-------------------------------
|
||||||
|
|
||||||
|
* The :cpack_gen:`CPack IFW Generator` gained the new
|
||||||
|
:variable:`CPACK_IFW_PACKAGE_PRODUCT_IMAGES` variable for adding a list of
|
||||||
|
images to be shown on the ``PerformInstallationPage``.
|
||||||
|
This feature is available for QtIFW 4.0 and newer.
|
||||||
@@ -275,6 +275,13 @@ void cmCPackIFWInstaller::ConfigureFromOptions()
|
|||||||
this->Resources.clear();
|
this->Resources.clear();
|
||||||
cmExpandList(optIFW_PACKAGE_RESOURCES, this->Resources);
|
cmExpandList(optIFW_PACKAGE_RESOURCES, this->Resources);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ProductImages
|
||||||
|
if (cmValue productImages =
|
||||||
|
this->GetOption("CPACK_IFW_PACKAGE_PRODUCT_IMAGES")) {
|
||||||
|
this->ProductImages.clear();
|
||||||
|
cmExpandList(productImages, this->ProductImages);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/** \class cmCPackIFWResourcesParser
|
/** \class cmCPackIFWResourcesParser
|
||||||
@@ -508,6 +515,18 @@ void cmCPackIFWInstaller::GenerateInstallerFile()
|
|||||||
xout.Element("ControlScript", name);
|
xout.Element("ControlScript", name);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Product images (copy to config dir)
|
||||||
|
if (!this->IsVersionLess("4.0") && !this->ProductImages.empty()) {
|
||||||
|
xout.StartElement("ProductImages");
|
||||||
|
for (auto const& srcImg : this->ProductImages) {
|
||||||
|
std::string name = cmSystemTools::GetFilenameName(srcImg);
|
||||||
|
std::string dstImg = this->Directory + "/config/" + name;
|
||||||
|
cmsys::SystemTools::CopyFileIfDifferent(srcImg, dstImg);
|
||||||
|
xout.Element("Image", name);
|
||||||
|
}
|
||||||
|
xout.EndElement();
|
||||||
|
}
|
||||||
|
|
||||||
// Resources (copy to resources dir)
|
// Resources (copy to resources dir)
|
||||||
if (!this->Resources.empty()) {
|
if (!this->Resources.empty()) {
|
||||||
std::vector<std::string> resources;
|
std::vector<std::string> resources;
|
||||||
|
|||||||
@@ -118,6 +118,9 @@ public:
|
|||||||
/// List of resources to include in the installer binary
|
/// List of resources to include in the installer binary
|
||||||
std::vector<std::string> Resources;
|
std::vector<std::string> Resources;
|
||||||
|
|
||||||
|
/// A list of images to be shown on PerformInstallationPage.
|
||||||
|
std::vector<std::string> ProductImages;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
// Internal implementation
|
// Internal implementation
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user