Avoid potential negative array index access to cached text.
[LibreOffice.git] / postprocess / CustomTarget_signing.mk
blobbbfb681e2c522d8c289a52bff6d682288607055c
1 # -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
3 # This file is part of the LibreOffice project.
5 # This Source Code Form is subject to the terms of the Mozilla Public
6 # License, v. 2.0. If a copy of the MPL was not distributed with this
7 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
10 $(eval $(call gb_CustomTarget_CustomTarget,postprocess/signing))
13 $(eval $(call gb_CustomTarget_register_targets,postprocess/signing,\
14 signing.done \
17 # PFXFILE and PFXPASSWORD should be set in environment
18 TIMESTAMPURL ?= "http://timestamp.digicert.com/"
20 $(call gb_CustomTarget_get_workdir,postprocess/signing)/signing.done: \
21 $(SRCDIR)/postprocess/signing/signing.pl \
22 $(SRCDIR)/postprocess/signing/no_signing.txt \
23 $(call gb_Module_get_target,extras) \
24 $(call gb_Postprocess_get_target,AllLibraries) \
25 $(call gb_Postprocess_get_target,AllExecutables) \
26 $(call gb_Postprocess_get_target,AllModuleTests) \
27 $(call gb_Postprocess_get_target,AllModuleSlowtests)
29 $(call gb_CustomTarget_get_workdir,postprocess/signing)/signing.done:
30 $(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),PRL,2)
31 $(call gb_Trace_StartRange,$(subst $(WORKDIR)/,,$@),PRL)
32 ifeq ($(COM),MSC)
33 ifneq ($(ENABLE_DBGUTIL),TRUE)
34 EXCLUDELIST=$(shell $(gb_MKTEMP)) && \
35 cat $(SRCDIR)/postprocess/signing/no_signing.txt > $$EXCLUDELIST && \
36 echo "$(foreach lib,$(gb_MERGEDLIBS),$(call gb_Library_get_filename,$(lib)))" | tr ' ' '\n' >> $$EXCLUDELIST && \
37 $(if $(BUILD_X64),chmod u+w $(foreach lib,$(MSVC_DLLS),$(INSTDIR)/program/shlxthdl/$(lib)) &&) \
38 $(PERL) $(SRCDIR)/postprocess/signing/signing.pl \
39 -e $$EXCLUDELIST \
40 -l $(subst .done,_log.txt,$@) \
41 $(if $(verbose),-v) \
42 $(if $(PFXFILE),-f $(PFXFILE)) \
43 $(if $(PFXPASSWORD),-p $(PFXPASSWORD)) \
44 $(if $(TIMESTAMPURL),-t $(TIMESTAMPURL)) \
45 $(INSTDIR)/URE/bin/*.dll \
46 $(INSTDIR)/URE/bin/*.exe \
47 $(INSTDIR)/program/*.dll \
48 $(INSTDIR)/program/*.exe \
49 $(INSTDIR)/program/*.com \
50 $(INSTDIR)/program/soffice.bin \
51 $(INSTDIR)/program/unopkg.bin \
52 $(INSTDIR)/program/pyuno.pyd \
53 $(INSTDIR)/$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/bin/*.exe \
54 $(INSTDIR)/$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/*.dll \
55 $(INSTDIR)/$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/*.pyd \
56 $(INSTDIR)/$(LIBO_BIN_FOLDER)/python-core-$(PYTHON_VERSION)/lib/distutils/command/*.exe \
57 $(INSTDIR)/program/shlxthdl/*.dll \
58 $(INSTDIR)/sdk/cli/*.dll \
59 $(INSTDIR)/sdk/bin/*.exe \
60 && rm $$EXCLUDELIST && touch $@
61 else
62 @echo "Doing nothing on non product builds ..."
63 endif
64 else
65 @echo "Nothing to do, signing is Windows (MSC) only."
66 endif
67 $(call gb_Trace_EndRange,$(subst $(WORKDIR)/,,$@),PRL)
69 # vim: set noet sw=4 ts=4: