summaryrefslogtreecommitdiff
path: root/instsetoo_native
diff options
context:
space:
mode:
authorChristian Lohmaier <lohmaier+LibreOffice@googlemail.com>2019-09-05 14:23:24 +0200
committerChristian Lohmaier <lohmaier+LibreOffice@googlemail.com>2019-09-06 11:36:44 +0200
commit8811516e2e9e71dd45198081d26c748cdf4d831a (patch)
treebc3e0110116abd3e28d9214a6cf865f72eb974cc /instsetoo_native
parent4ea98c922f130843e2c57417d4a3e5970b25de22 (diff)
split msi signing from creation to reduce number of singtool calls
as with private key on crypto-smartcard you'd have to enter your pin over a hundred times while creating full-lang builds and that is not fun. This reduces it to * once for dll/exe (at least in case for mergelib is is less than 350 objects and that doesn't break commandline limits - previously it was set to only sign 20 objects at a time, forcing a pin-entry over 15 times) and * once for main installation set * once for SDK * once for all the helppacks (signing description previously also contained the language, this change drops that to just "<productname> <version> Helppack" and last three are not scattered timewise, but are done after all packaging is complete, so the build only waits twice for user-input. Change-Id: Ibb8bb233e967556f9654573ad30d0ed5883b533f Reviewed-on: https://gerrit.libreoffice.org/78649 Tested-by: Jenkins Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
Diffstat (limited to 'instsetoo_native')
-rw-r--r--instsetoo_native/CustomTarget_install.mk53
1 files changed, 53 insertions, 0 deletions
diff --git a/instsetoo_native/CustomTarget_install.mk b/instsetoo_native/CustomTarget_install.mk
index 016fbbd03abd..3272a57b71f4 100644
--- a/instsetoo_native/CustomTarget_install.mk
+++ b/instsetoo_native/CustomTarget_install.mk
@@ -20,12 +20,15 @@ $(eval $(call gb_CustomTarget_CustomTarget,instsetoo_native/install))
$(eval $(call gb_CustomTarget_register_targets,instsetoo_native/install,\
install.phony \
+ $(if $(WINDOWS_BUILD_SIGNING),msi_signing.done) \
$(if $(filter-out WNT,$(OS)),\
bin/find-requires-gnome.sh \
bin/find-requires-x11.sh) \
$(foreach ulf,$(instsetoo_ULFLIST),win_ulffiles/$(ulf).ulf) \
))
+.PHONY: $(call gb_CustomTarget_get_workdir,instsetoo_native/install)/install.phony
+
$(call gb_CustomTarget_get_workdir,instsetoo_native/install)/install.phony: \
$(SRCDIR)/solenv/bin/make_installer.pl \
$(foreach ulf,$(instsetoo_ULFLIST),$(call gb_CustomTarget_get_workdir,instsetoo_native/install)/win_ulffiles/$(ulf).ulf) \
@@ -126,5 +129,55 @@ ifneq (WNT,$(OS))
$(call instsetoo_native_install_command,ooolangpack,$(lang),,-languagepack,$(PKGFORMAT)))
endif
endif # LIBO_TEST_INSTALL
+ touch $@
+
+TIMESTAMPURL ?= "http://timestamp.globalsign.com/scripts/timestamp.dll"
+$(call gb_CustomTarget_get_workdir,instsetoo_native/install)/msi_signing.done: \
+ $(if $(filter HELP,$(BUILD_TYPE)),$(call gb_CustomTarget_get_workdir,instsetoo_native/install)/msi_helppack_signing.done) \
+ $(if $(filter ODK,$(BUILD_TYPE)),$(call gb_CustomTarget_get_workdir,instsetoo_native/install)/msi_sdk_signing.done) \
+ $(call gb_CustomTarget_get_workdir,instsetoo_native/install)/msi_main_signing.done
+ $(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),PRL,2)
+ touch $@
+
+$(call gb_CustomTarget_get_workdir,instsetoo_native/install)/msi_helppack_signing.done \
+$(call gb_CustomTarget_get_workdir,instsetoo_native/install)/msi_sdk_signing.done \
+$(call gb_CustomTarget_get_workdir,instsetoo_native/install)/msi_main_signing.done \
+ : $(SRCDIR)/postprocess/signing/signing.pl $(call gb_CustomTarget_get_workdir,instsetoo_native/install)/install.phony
+
+$(call gb_CustomTarget_get_workdir,instsetoo_native/install)/msi_main_signing.done:
+ $(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),PRL,2)
+ $(PERL) $(SRCDIR)/postprocess/signing/signing.pl \
+ -l $(subst .done,_log.txt,$@) \
+ $(if $(verbose),-v) \
+ $(if $(PFXFILE),-f $(PFXFILE)) \
+ $(if $(PFXPASSWORD),-p $(PFXPASSWORD)) \
+ $(if $(TIMESTAMPURL),-t $(TIMESTAMPURL)) \
+ -d $(PRODUCTNAME)\ $(LIBO_VERSION_MAJOR).$(LIBO_VERSION_MINOR).$(LIBO_VERSION_MICRO).$(LIBO_VERSION_PATCH) \
+ $(WORKDIR)/installation/$(PRODUCTNAME)/msi/install/*/*.msi \
+ && touch $@
+
+$(call gb_CustomTarget_get_workdir,instsetoo_native/install)/msi_helppack_signing.done:
+ $(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),PRL,2)
+ $(PERL) $(SRCDIR)/postprocess/signing/signing.pl \
+ -l $(subst .done,_log.txt,$@) \
+ $(if $(verbose),-v) \
+ $(if $(PFXFILE),-f $(PFXFILE)) \
+ $(if $(PFXPASSWORD),-p $(PFXPASSWORD)) \
+ $(if $(TIMESTAMPURL),-t $(TIMESTAMPURL)) \
+ -d $(PRODUCTNAME)\ $(LIBO_VERSION_MAJOR).$(LIBO_VERSION_MINOR).$(LIBO_VERSION_MICRO).$(LIBO_VERSION_PATCH)\ Helppack \
+ $(WORKDIR)/installation/$(PRODUCTNAME)_helppack/msi/install/*/*.msi \
+ && touch $@
+
+$(call gb_CustomTarget_get_workdir,instsetoo_native/install)/msi_sdk_signing.done:
+ $(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),PRL,2)
+ $(PERL) $(SRCDIR)/postprocess/signing/signing.pl \
+ -l $(subst .done,_log.txt,$@) \
+ $(if $(verbose),-v) \
+ $(if $(PFXFILE),-f $(PFXFILE)) \
+ $(if $(PFXPASSWORD),-p $(PFXPASSWORD)) \
+ $(if $(TIMESTAMPURL),-t $(TIMESTAMPURL)) \
+ -d $(PRODUCTNAME)\ $(LIBO_VERSION_MAJOR).$(LIBO_VERSION_MINOR).$(LIBO_VERSION_MICRO).$(LIBO_VERSION_PATCH)\ SDK \
+ $(WORKDIR)/installation/$(PRODUCTNAME)_SDK/msi/install/*/*.msi \
+ && touch $@
# vim: set noet sw=4 ts=4: