diff options
author | L. E. Segovia <amy@centricular.com> | 2024-11-24 22:07:09 +0000 |
---|---|---|
committer | GStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org> | 2024-11-29 22:59:39 +0000 |
commit | 6958f3cd6412e28d5e9d1975267726f304cb8c0f (patch) | |
tree | 7b303472ebbfef3a01a2ea1c90e4e69b3312523d | |
parent | e0be44a2e2d3afe45ae8274556b99bdb3f1a50fd (diff) |
WiX: conditionally disable sharding when cross-building
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1555>
-rw-r--r-- | cerbero/packages/wix.py | 12 | ||||
-rw-r--r-- | data/wix/installer.wxs | 2 |
2 files changed, 12 insertions, 2 deletions
diff --git a/cerbero/packages/wix.py b/cerbero/packages/wix.py index a0bbdafc..ae488805 100644 --- a/cerbero/packages/wix.py +++ b/cerbero/packages/wix.py @@ -442,6 +442,7 @@ class MSI(WixBase): if not self.product: raise RuntimeError self._add_include() + self._add_compression(not config.cross_compiling()) self._customize_ui() self._add_vs_properties() @@ -456,6 +457,17 @@ class MSI(WixBase): inc = etree.PI('include %s' % self.wix_config) self.root.insert(0, inc) + def _add_compression(self, shard): + mediatemplate = etree.SubElement( + self.product, + 'MediaTemplate', + EmbedCab='yes', + CompressionLevel='$(var.Compression)', + ) + if shard: + # On Wine this yields corrupted sharded cabinets. + mediatemplate.set('MaximumUncompressedMediaSize', '50') + def _fill(self): self._add_install_dir() if isinstance(self.package, App): diff --git a/data/wix/installer.wxs b/data/wix/installer.wxs index 28ff82dd..820ad408 100644 --- a/data/wix/installer.wxs +++ b/data/wix/installer.wxs @@ -2,8 +2,6 @@ <Package Language="$(var.Language)" Manufacturer="$(var.Manufacturer)" Name="$(var.ProductName)" UpgradeCode="$(var.UpgradeCode)" Version="$(var.Version)" ProductCode="$(var.ProductID)"> <SummaryInformation Description="$(var.Description)" Manufacturer="$(var.Manufacturer)"/> - <MediaTemplate EmbedCab="yes" MaximumUncompressedMediaSize="50" CompressionLevel="$(var.Compression)"/> - <!-- Upgrades --> <MajorUpgrade DowngradeErrorMessage="A later version of [ProductName] is already installed. Setup will now exit"/> |