- 16 Nis, 2018 2 kayıt (commit)
-
-
Mike Kaganski yazdı
Change-Id: I7e2cc08a1312da629e4644be97ebc7ed40250702 Reviewed-on: https://gerrit.libreoffice.org/52995Reviewed-by:
Mike Kaganski <mike.kaganski@collabora.com> Tested-by:
Mike Kaganski <mike.kaganski@collabora.com>
-
Mike Kaganski yazdı
Change-Id: I343b731878c5ebbe61dc8b01fecf3be36b9a35c3 Reviewed-on: https://gerrit.libreoffice.org/52933Tested-by:
Jenkins <ci@libreoffice.org> Reviewed-by:
Mike Kaganski <mike.kaganski@collabora.com>
-
- 12 Nis, 2018 3 kayıt (commit)
-
-
Mike Kaganski yazdı
This uses VC Runtime upgrade code (checked using Upgrade table) to find installed redist, instead of checking registry keys that change between versions (while the runtime is still compatible, as with 2015 and 2017). Also, it checks if UCRT is present. Now, if either VC Runtime or UCRT is absent, we try to install the redist. This would allow to install UCRT in scenarios when first install was attempted on a system not suitable for UCRT (like Win7 w/o SP1, or Win8.1 w/o April 2014 update rollup), where VC Runtime gets installed, but UCRT is still missing. We use the ucrtbase.dll version to check that; and as the expected version is 10.x, we take into account that Win10 lies about versions. Change-Id: I864dfc09cf1bdc775501729fa2a27dc98295588c Reviewed-on: https://gerrit.libreoffice.org/52794Tested-by:
Jenkins <ci@libreoffice.org> Reviewed-by:
Mike Kaganski <mike.kaganski@collabora.com>
-
Andras Timar yazdı
Change-Id: I0cd28356834a14a2f53545fb3c8e87f067eac789 Reviewed-on: https://gerrit.libreoffice.org/52776Tested-by:
Jenkins <ci@libreoffice.org> Reviewed-by:
Julien Nabet <serval2412@yahoo.fr>
-
Mike Kaganski yazdı
... since it's the required prerequisite for Universal CRT. This moves Windows version check to LaunchCondition table; and adds a check for kernel32.dll version associated with the said update level. Change-Id: I1de84dc47c9392fcb7122e1a877db2e99eae2415 Reviewed-on: https://gerrit.libreoffice.org/52743Tested-by:
Jenkins <ci@libreoffice.org> Reviewed-by:
Mike Kaganski <mike.kaganski@collabora.com>
-
- 11 Nis, 2018 1 kayıt (commit)
-
-
Mike Kaganski yazdı
Change-Id: Ia6118f03b8e83c2726df955d89bfdc8da5764992 Reviewed-on: https://gerrit.libreoffice.org/52717Tested-by:
Jenkins <ci@libreoffice.org> Reviewed-by:
Mike Kaganski <mike.kaganski@collabora.com>
-
- 09 Nis, 2018 1 kayıt (commit)
-
-
Mike Kaganski yazdı
Currently we support Win7 SP1 and later; so let installer fail on lower SP levels. Change-Id: I807e0a04870b9eeabbfae258d68da4a1156b0408 Reviewed-on: https://gerrit.libreoffice.org/52619Tested-by:
Jenkins <ci@libreoffice.org> Reviewed-by:
Mike Kaganski <mike.kaganski@collabora.com>
-
- 27 Mar, 2018 1 kayıt (commit)
-
-
Mike Kaganski yazdı
... to avoid the dependency in non-windows builds Change-Id: I37a95cf49b01a24833bcc01166d5c2c855ce1b49 Reviewed-on: https://gerrit.libreoffice.org/51870Reviewed-by:
Christian Lohmaier <lohmaier+LibreOffice@googlemail.com> Tested-by:
Jenkins <ci@libreoffice.org> Reviewed-by:
Mike Kaganski <mike.kaganski@collabora.com>
-
- 26 Mar, 2018 1 kayıt (commit)
-
-
Mike Kaganski yazdı
This allows to correctly get font (including OTF) versions, instead of matching strings in binary files. Fonts affected: ==== Alef_Bold.ttf 1.0.0.0 → 1.1.0.0 Alef_Regular.ttf 1.0.0.0 → 1.1.0.0 amiri_bold.ttf 1.0.0.0 → 0.109.0.0 amiri_boldslanted.ttf 1.0.0.0 → 0.109.0.0 amiri_quran.ttf 1.0.0.0 → 0.109.0.0 amiri_regular.ttf 1.0.0.0 → 0.109.0.0 amiri_slanted.ttf 1.0.0.0 → 0.109.0.0 Carlito_Bold.ttf 1.1.0.0 → 1.103.0.0 Carlito_BoldItalic.ttf 1.1.0.0 → 1.103.0.0 Carlito_Italic.ttf 1.1.0.0 → 1.103.0.0 Carlito_Regular.ttf 1.1.0.0 → 1.103.0.0 NachlieliCLM_Bold.otf → 0.131.0.0 NachlieliCLM_BoldOblique.otf → 0.131.0.0 NachlieliCLM_Light.otf → 0.131.0.0 NachlieliCLM_LightOblique.otf → 0.131.0.0 LiberationMono_Bold.ttf 2.0.0.0 → 2.0.1.0 LiberationMono_BoldItalic.ttf 2.0.0.0 → 2.0.1.0 LiberationMono_Italic.ttf 2.0.0.0 → 2.0.1.0 LiberationMono_Regular.ttf 2.0.0.0 → 2.0.1.0 LiberationSans_Bold.ttf 2.0.0.0 → 2.0.1.0 LiberationSans_BoldItalic.ttf 2.0.0.0 → 2.0.1.0 LiberationSans_Italic.ttf 2.0.0.0 → 2.0.1.0 LiberationSans_Regular.ttf 2.0.0.0 → 2.0.1.0 LiberationSerif_Bold.ttf 2.0.0.0 → 2.0.1.0 LiberationSerif_BoldItalic.ttf 2.0.0.0 → 2.0.1.0 LiberationSerif_Italic.ttf 2.0.0.0 → 2.0.1.0 LiberationSerif_Regular.ttf 2.0.0.0 → 2.0.1.0 LiberationSansNarrow_Bold.ttf 1.7.0.0 → 1.7.4.0 LiberationSansNarrow_BoldItalic.ttf 1.7.0.0 → 1.7.4.0 LiberationSansNarrow_Italic.ttf 1.7.0.0 → 1.7.4.0 LiberationSansNarrow_Regular.ttf 1.7.0.0 → 1.7.4.0 FrankRuhlHofshi_Bold.otf → 5.1.0.0 FrankRuhlHofshi_Regular.otf → 5.1.0.0 MiriamLibre_Bold.otf → 1.0.0.0 MiriamLibre_Regular.otf → 1.0.0.0 NotoKufiArabic_Bold.ttf 1.0.0.0 → 1.4.0.0 NotoKufiArabic_Regular.ttf 1.0.0.0 → 1.4.0.0 NotoNaskhArabicUI_Bold.ttf 1.0.0.0 → 1.7.0.0 NotoNaskhArabicUI_Regular.ttf 1.0.0.0 → 1.7.0.0 NotoNaskhArabic_Bold.ttf 1.0.0.0 → 1.6.0.0 NotoNaskhArabic_Regular.ttf 1.0.0.0 → 1.7.0.0 NotoSansArabicUI_Bold.ttf 1.0.0.0 → 2.0.0.0 NotoSansArabicUI_Regular.ttf 1.0.0.0 → 2.0.0.0 NotoSansArabic_Bold.ttf 1.0.0.0 → 2.0.0.0 NotoSansArabic_Regular.ttf 1.0.0.0 → 2.0.0.0 NotoSansArmenian_Bold.ttf 1.0.0.0 → 2.40.0.0 NotoSansArmenian_Regular.ttf 1.0.0.0 → 2.40.0.0 NotoSansGeorgian_Bold.ttf 1.0.0.0 → 2.0.0.0 NotoSansGeorgian_Regular.ttf 1.0.0.0 → 2.0.0.0 NotoSansHebrew_Bold.ttf 1.0.0.0 → 2.0.0.0 NotoSansHebrew_Regular.ttf 1.0.0.0 → 2.0.0.0 NotoSansLao_Bold.ttf 1.0.0.0 → 2.0.0.0 NotoSansLao_Regular.ttf 1.0.0.0 → 2.0.0.0 NotoSansLisu_Regular.ttf 1.0.0.0 → 2.0.0.0 NotoSans_Bold.ttf 1.0.0.0 → 2.0.0.0 NotoSans_BoldItalic.ttf 1.0.0.0 → 2.0.0.0 NotoSans_Condensed.ttf 1.0.0.0 → 2.0.0.0 NotoSans_CondensedBold.ttf 1.0.0.0 → 2.0.0.0 NotoSans_CondensedBoldItalic.ttf 1.0.0.0 → 2.0.0.0 NotoSans_CondensedItalic.ttf 1.0.0.0 → 2.0.0.0 NotoSans_Italic.ttf 1.0.0.0 → 2.0.0.0 NotoSans_Light.ttf 1.0.0.0 → 2.0.0.0 NotoSans_LightItalic.ttf 1.0.0.0 → 2.0.0.0 NotoSans_Regular.ttf 1.0.0.0 → 2.0.0.0 NotoSerifArmenian_Bold.ttf 1.0.0.0 → 2.40.0.0 NotoSerifArmenian_Regular.ttf 1.0.0.0 → 2.40.0.0 NotoSerifGeorgian_Bold.ttf 1.0.0.0 → 2.0.0.0 NotoSerifGeorgian_Regular.ttf 1.0.0.0 → 2.0.0.0 NotoSerifHebrew_Bold.ttf 1.0.0.0 → 2.0.0.0 NotoSerifHebrew_Regular.ttf 1.0.0.0 → 2.0.0.0 NotoSerifLao_Bold.ttf 1.0.0.0 → 2.0.0.0 NotoSerifLao_Regular.ttf 1.0.0.0 → 2.0.0.0 NotoSerif_Bold.ttf 1.0.0.0 → 2.0.0.0 NotoSerif_BoldItalic.ttf 1.0.0.0 → 2.0.0.0 NotoSerif_Condensed.ttf 1.0.0.0 → 2.0.0.0 NotoSerif_CondensedBold.ttf 1.0.0.0 → 2.0.0.0 NotoSerif_CondensedBoldItalic.ttf 1.0.0.0 → 2.0.0.0 NotoSerif_CondensedItalic.ttf 1.0.0.0 → 2.0.0.0 NotoSerif_Italic.ttf 1.0.0.0 → 2.0.0.0 NotoSerif_Light.ttf 1.0.0.0 → 2.0.0.0 NotoSerif_LightItalic.ttf 1.0.0.0 → 2.0.0.0 NotoSerif_Regular.ttf 1.0.0.0 → 2.0.0.0 ReemKufi_Regular.ttf 1.0.0.0 → 0.6.0.0 This requires Font::TTF::Font perl module to be installed. Change-Id: Ibb6c384baa2e74524845b6c5a1d4d2f26b7e530b Reviewed-on: https://gerrit.libreoffice.org/51793Tested-by:
Jenkins <ci@libreoffice.org> Reviewed-by:
Khaled Hosny <khaledhosny@eglug.org> Reviewed-by:
Christian Lohmaier <lohmaier+LibreOffice@googlemail.com> Reviewed-by:
Mike Kaganski <mike.kaganski@collabora.com>
-
- 23 Mar, 2018 2 kayıt (commit)
-
-
Mike Kaganski yazdı
Regression from commit 23675574 Change-Id: If2d11856db8f7f341a8f3c2b3a73f7afdff6a621 Reviewed-on: https://gerrit.libreoffice.org/51792Tested-by:
Jenkins <ci@libreoffice.org> Reviewed-by:
Mike Kaganski <mike.kaganski@collabora.com>
-
Mike Kaganski yazdı
Change-Id: I47d8a755450b085be39346615f06cee4f920859f Reviewed-on: https://gerrit.libreoffice.org/51781Tested-by:
Jenkins <ci@libreoffice.org> Reviewed-by:
Mike Kaganski <mike.kaganski@collabora.com>
-
- 20 Mar, 2018 1 kayıt (commit)
-
-
Stephan Bergmann yazdı
...see commit message of f07e2496 "sdk/lib dir missing from Linux installation sets" Change-Id: Idb0f3437c27c867bc628fd3084f2a54c47beef17 Reviewed-on: https://gerrit.libreoffice.org/51428Tested-by:
Jenkins <ci@libreoffice.org> Reviewed-by:
Stephan Bergmann <sbergman@redhat.com>
-
- 16 Mar, 2018 1 kayıt (commit)
-
-
Stephan Bergmann yazdı
...after cfd2691e "[API CHANGE] Remove salcpprt static library" had removed the sole regular File item from gid_Dir_Lib_Sdk, leaving only Unixlink items. But the solenv/bin/modules/installer.pm code used to only auto-create any directories that contain regular Files. Changed that to also consider Unixlinks in addition to regular Files. And to add insult to injury, the code in solenv/bin/modules/installer/simplepackage.pm creating the actual symlinks represented by the Unixlink items silently does nothing when a symlink cannot be created (because the partent dir is missing). To be fixed in another follow-up commit. Change-Id: Ic7a682a17ac59c789c85c56c825dd623bc59428c
-
- 12 Mar, 2018 3 kayıt (commit)
-
-
Michael Stahl yazdı
"build" is hard-coded to "majorminor0". Change-Id: I15271544917f70b8ae029bd7542aecfe0a46befe
-
Michael Stahl yazdı
Change-Id: I2f550ca5b02551b84d3631e0101918af49924fe2
-
Michael Stahl yazdı
Change-Id: I07d90c68934712295952e6e6725e0206c16a5b7e
-
- 18 Şub, 2018 2 kayıt (commit)
-
-
Michael Weghorn yazdı
'tar' must be run as root or faked to be run as root, to make sure that file ownerships and permissions inside the created tar archives are as desired (root:root). Have fakeroot take care about creating an appropriate environment rather than using the custom "libgetuid", to no longer have to care about tar internals by ourselves. This fixes the problem that file ownerships are incorrect when tar version >= 1.24 is used for * tar archives holding all the generated deb/rpm packages (created in 'download.pm') * tar archives created by using the '--with-pacakage-format=archive' autogen option (created in 'simplepackage.pm') Change-Id: Id20ccce4d002ff95c75292eda8080ca299eee3a5 Reviewed-on: https://gerrit.libreoffice.org/49682Reviewed-by:
Michael Stahl <mstahl@redhat.com> Tested-by:
Jenkins <ci@libreoffice.org> Reviewed-by:
Thorsten Behrens <Thorsten.Behrens@CIB.de>
-
Michael Weghorn yazdı
The command to create Debian packages must be run as root or faked to be run as root. The 'fakeroot' makes sure the command is run in an environment faking root privileges for file manipulation. This makes sure that file ownerships and permissions inside the created deb packages are correct. Using fakeroot instead of the custom "libgetuid" makes it unnecessary to care about internals of the underlying tools (like tar) and changes in those by ourselves. Change-Id: I2cbb203ab84f740377e535c1051c2b879779b164 Reviewed-on: https://gerrit.libreoffice.org/49597Tested-by:
Jenkins <ci@libreoffice.org> Reviewed-by:
Michael Stahl <mstahl@redhat.com> Reviewed-by:
Thorsten Behrens <Thorsten.Behrens@CIB.de>
-
- 14 Ock, 2018 1 kayıt (commit)
-
-
Andrea Gelmini yazdı
Change-Id: Icc5fc590a6a90e30afa5f61028d4dd0279fbe120 Reviewed-on: https://gerrit.libreoffice.org/47861Tested-by:
Jenkins <ci@libreoffice.org> Reviewed-by:
Julien Nabet <serval2412@yahoo.fr>
-
- 18 Ara, 2017 1 kayıt (commit)
-
-
Mike Kaganski yazdı
... in InstallUISequense. Use --with-vcredist-dir to point to a directory with vc_redist.x64.exe and/or vc_redist.x86.exe. Use --without-vcredist-dir (or --with-vcredist-dir=no) if you don't want to ship it as part of installer and want to silence the configure warning. VCRedist 2015 version 14.0.24215.1 is available at https://www.microsoft.com/en-us/download/details.aspx?id=53840 Since VisualStudio 2015, VC redist merge module that we used before started to work differently: it installs the UCRT only on WinXP, but not on later OSes (Vista to 8.1) which may lack the UCRT (Win10 has it out of the box). The merge module only installs VCRuntime on those systems, which still leaves us with "api-ms-*.dll is missing" problem. (https://blogs.msdn.microsoft.com/vcblog/2015/03/03/introducing-the-universal-crt/ gives more information on VCRedist refactoring background.) Since commit 71d9a613, we use a workaround described at the page mentioned above as "App-local deployment of the Universal CRT". We just copy all UCRT DLLs to LibreOffice/program. This has a drawback though, that our UCRT is not updated by Windows Update, so users would rely on LibreOffice updates in case of some vulnerabilities in UCRT (and they could even not realize they have that problem). MS recommends to install UCRT using EXEs they provide from their site. The EXEs install both VCRuntimes and UCRTs, along with required patches, for all Windows versions (Windows XP through Windows 10, where they only install VCRuntimes); the installed libraries are managed by system's update mechanism. But those EXEs cannot be used in MSI custom actions inside InstallExecuteSequence, because they use MSI themselves. So this patch integrates the vc_redist.xXX.exe into MSI binary table, and uses custom action to run the EXE after ExecuteAction in InstallUISequence. This will show the user a VCRedist install window after the main LibreOffice installation finishes; no user interaction is required (except for one additional UAC request), and errors are ignored. Since this installation takes care of both VCRuntime and UCRT, we can ultimately drop both the app-local workaround, and vcredist merge module (so VCRuntime would also be updated by system). The former is done here: this reverts commit 71d9a613. This approach has its drawback: if one wants to use unattended installation (without UI; one example is deployment using ActiveDirectory GPO), then InstallUISequence is not run, and so VCRedist isn't installed. In this case, one should install VCRedist separately. Supposedly this should not be huge problem, because this is the case for many existing applications that need separate VCRedist deployment in these scenarios, and unattended installation is advanced stuff that requires prepared user. A notice would be required in release notes and FAQ, though. Change-Id: Ia6a16be60af8a08f41ea7c3dbd457d8f89006006 Reviewed-on: https://gerrit.libreoffice.org/46356Reviewed-by:
Mike Kaganski <mike.kaganski@collabora.com> Tested-by:
Mike Kaganski <mike.kaganski@collabora.com>
-
- 24 Eki, 2017 1 kayıt (commit)
-
-
David Tardon yazdı
... because we set ENABLE_STRIP in instsetoo_native/CustomTarget_install.mk . Change-Id: I4eaf66c53a0ec680688bf819b3a396865e7a3e33
-
- 25 Eyl, 2017 1 kayıt (commit)
-
-
Andrea Gelmini yazdı
Change-Id: I879a52820d78d9151ef64dd21612379f617f66e2 Reviewed-on: https://gerrit.libreoffice.org/42726Reviewed-by:
Tamás Zolnai <tamas.zolnai@collabora.com> Tested-by:
Tamás Zolnai <tamas.zolnai@collabora.com>
-
- 25 Agu, 2017 1 kayıt (commit)
-
-
Markus Mohrhard yazdı
Change-Id: I5c07039e336de9362fdd92be29de516da0846998
-
- 21 Agu, 2017 1 kayıt (commit)
-
-
Markus Mohrhard yazdı
Change-Id: Ibb087fc9cd17e50accf78f805e0fec4f202334b1
-
- 17 Agu, 2017 1 kayıt (commit)
-
-
Andrea Gelmini yazdı
Change-Id: Iaa9c0aea3ea1a239e378bd714ba335f91bb1faf3 Reviewed-on: https://gerrit.libreoffice.org/41194Reviewed-by:
Michael Stahl <mstahl@redhat.com> Tested-by:
Michael Stahl <mstahl@redhat.com>
-
- 02 Haz, 2017 1 kayıt (commit)
-
-
Michael Stahl yazdı
This style was only handled in the installer code for registry items, but in scp2 it was only set for files, so effectively it was unused. Change-Id: I197eeded29648aee2489e302f7b5e48bf13a545c
-
- 29 May, 2017 1 kayıt (commit)
-
-
Andras Timar yazdı
Change-Id: Ib15458b3d90d5ae8c91afde0d8136e76c4bd3804 Reviewed-on: https://gerrit.libreoffice.org/38142Tested-by:
Jenkins <ci@libreoffice.org> Reviewed-by:
Andras Timar <andras.timar@collabora.com>
-
- 21 May, 2017 1 kayıt (commit)
-
-
Andrea Gelmini yazdı
Change-Id: I438b6719817e0bbb47370ec54561eed2bc402cba Reviewed-on: https://gerrit.libreoffice.org/37783Reviewed-by:
Chris Sherlock <chris.sherlock79@gmail.com> Tested-by:
Chris Sherlock <chris.sherlock79@gmail.com>
-
- 19 May, 2017 1 kayıt (commit)
-
-
Markus Mohrhard yazdı
Change-Id: I682dcc9c366efea2be00b738f630a82b4cf9d636
-
- 18 May, 2017 2 kayıt (commit)
-
-
Stephan Bergmann yazdı
This reverts commit 26a67002. "Iff" is not a typo, see 2a65bf32 "Revert 'Typo: iff->if'".
-
Andrea Gelmini yazdı
Only replaced "iff" with "if" Change-Id: Ib9dfa5c12b05500043147fe3b65f923b1b12a581 Reviewed-on: https://gerrit.libreoffice.org/37782Tested-by:
Jenkins <ci@libreoffice.org> Reviewed-by:
Eike Rathke <erack@redhat.com>
-
- 13 Nis, 2017 1 kayıt (commit)
-
-
Stephan Bergmann yazdı
...which is no longer needed after 8646ab97 "Remove MinGW support". This effectively removes the commits 8251cd19 "Call uuidgen without -n when cross- compiling", e8ddf693 "Cross-compiling-msi- related changes; not finished", 60865562 "We have to add the path to solver for the msi* tools when cross-compiling", and 61b1c246 "More full paths for cross msi* tools" (while 8429bd67 "Make the relativisation of the path working even on Linux" from amidst them is probably "harmless"). Change-Id: I0b9be32babdf6db83e2093eafd556c875910d92b Reviewed-on: https://gerrit.libreoffice.org/36471Tested-by:
Jenkins <ci@libreoffice.org> Reviewed-by:
Stephan Bergmann <sbergman@redhat.com>
-
- 06 Nis, 2017 1 kayıt (commit)
-
-
Mike Kaganski yazdı
Change-Id: I7ae94c7717fbea03d96c539e05eeb565bafefd9f Reviewed-on: https://gerrit.libreoffice.org/36188Tested-by:
Jenkins <ci@libreoffice.org> Reviewed-by:
Mike Kaganski <mike.kaganski@collabora.com>
-
- 27 Mar, 2017 1 kayıt (commit)
-
-
Bryan Quigley yazdı
Switch to using sha256sum for checking if files change. Not for security, just so we don't need to check for md5sum. We also change the Windows installer to rely on the perm md5 digest instead of the environment variable. The code to do this was already in directory.pm Change-Id: I24aed542c6201abf030fdd62116aec3f8ea3513b Reviewed-on: https://gerrit.libreoffice.org/35140Tested-by:
Jenkins <ci@libreoffice.org> Reviewed-by:
Michael Stahl <mstahl@redhat.com>
-
- 26 Mar, 2017 1 kayıt (commit)
-
-
Thorsten Behrens yazdı
Change-Id: I26ef55b8a7a210f9d86becd4f0aa10c2598681fd
-
- 20 Mar, 2017 1 kayıt (commit)
-
-
Stephan Bergmann yazdı
USERDIRPRODUCTVERSION is stuck at 4 now (as its main use is for the version number of the UserInstallation directory), so use LIBO_VERSION_MAJOR instead (like generation of the version ini-file counterpart for instdir/ does in instsetoo_native/CustomTarget_setup.mk). Change-Id: Ib87536d335487383940cff2f69c864a33f05bbee Reviewed-on: https://gerrit.libreoffice.org/35301Tested-by:
Jenkins <ci@libreoffice.org> Reviewed-by:
Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
-
- 19 Mar, 2017 1 kayıt (commit)
-
-
Stephan Bergmann yazdı
...so that on macOS dictionary extensions don't pollute LibreOffice.app's Contents/Resources/extensions/ with empty directories (that would then show up as phantom extenions in the Extension Manager). Change-Id: Iacff73e931885cde0fe507e384de80e9bd38d475
-
- 16 Mar, 2017 1 kayıt (commit)
-
-
Andrea Gelmini yazdı
Change-Id: I1488e2147fa0cd4a821eb5bfe172a58a4e396ace Reviewed-on: https://gerrit.libreoffice.org/35224Tested-by:
Jenkins <ci@libreoffice.org> Reviewed-by:
Björn Michaelsen <bjoern.michaelsen@canonical.com>
-
- 03 Mar, 2017 1 kayıt (commit)
-
-
Andrea Gelmini yazdı
Change-Id: Ib25dadb25d8c2df1361de194f74cf3ddd459650d Reviewed-on: https://gerrit.libreoffice.org/34783Tested-by:
Jenkins <ci@libreoffice.org> Reviewed-by:
Noel Grandin <noel.grandin@collabora.co.uk>
-
- 01 Şub, 2017 1 kayıt (commit)
-
-
David Ostrovsky yazdı
Starting from MSVC 14.0, the directory table layout of VC++ Runtime merge module changed. As consequence, all MSI produced with newer compilers, including MSVC 15.0 (aka VS 2017) are broken in term that the VC++ Runtime DLLs are installed in the wrong directory, e.g.: C:\System64. According to the specification for merging merge module (msm), see: "Authoring Merge Module Directory Tables": [1], custom action 51 (set property) must be emitted for every directory name in the merge module directory table if the directory name is starting with the standard directory name. Quoting it here: " When a predefined directory is included in a merge module, the merge tool automatically adds a Custom Action Type 51 to the target database. The merge module author must ensure that a CustomAction table is also included. The CustomAction table may be empty, but this table is required to exist in the target database and ensures that the modified predefined directories are written to the correct locations. For example, when a system directory is included in a merge module, the merge module author must ensure that a Custom Action table exists. Note that the matching algorithm for the generation of these type 51 custom actions only checks that the directory name begins with one of the predefined SystemFolder properties. It does not verify that the directory name exactly equals the directory property. Any directory beginning with one of these standard folder names gets a type 51 custom action, even if the rest of the name is not a GUID. Authors need to take care that this does not generate false positive matches, and unintended custom action generation, on derivative primary keys that begin with one of the SystemFolder properties." Rectify the problem by analyzing the directory table from the merge module, checking whether the directory name starts with the standard prefix name and if it is the case, emitting custom action 51 to set this variable to the standard directory name. Implementation details: We use the existing facility for emitting the custom action table events including referencing them in the corresponding sequence tables. Given that the specification above doesn't mention what sequence table should be referencing this emitted custom action, we reversed engineer this information from WiX toolkit. Merging the VC++ CRT module with WiX toolkit and investigating the resulting MSI with Orca MSI reader, reveals that these sequence tables were referencing from these sequence tables: * AdminExecuteSequence * AdminUISequence * AdvtExecuteSequence * InstallExecuteSequence * InstallUISequence Replicate this behaviour here as well. Note, though, that custom actions are generally not referenced in AdminUISequence and AdvtExecuteSequence tables in LibreOffice MSI building tool chain. Rendering of the custom action is achieved by programmatic emulation of custom action in SCP module. Consider this similar SCP module based action: Name = "MigrateInstallPath"; Typ = "321"; Source = "shlxtmsi.dll"; Target = "MigrateInstallPath"; Inbinarytable = 1; Assignment1 = ("InstallExecuteSequence", "", "CostInitialize"); Assignment2 = ("InstallUISequence", "", "CostInitialize"); We instantiate the following data structure to emit custom action System64Folder.3CFBED52_9B44_3A4D_953C_90E456671BA1: Name = "System64Folder.3CFBED52_9B44_3A4D_953C_90E456671BA1" Typ = "51" Source = "System64Folder.3CFBED52_9B44_3A4D_953C_90E456671BA1" Target = "[System64Folder]" Styles = "NO_FILES" Assignment1 = ("AdminExecuteSequence", "", "CostInitialize") Assignment2 = ("InstallExecuteSequence", "", "CostInitialize") Assignment3 = ("InstallUISequence", "", "CostInitialize") [1] https://msdn.microsoft.com/en-us/library/windows/desktop/aa367787%28v=vs.85%29.aspx Change-Id: I2fbd37ff63298d99b2ba1b6afe6e875f56d8e378 Reviewed-on: https://gerrit.libreoffice.org/33366Tested-by:
Jenkins <ci@libreoffice.org> Reviewed-by:
David Ostrovsky <david@ostrovsky.org>
-