1#**************************************************************
2#
3#  Licensed to the Apache Software Foundation (ASF) under one
4#  or more contributor license agreements.  See the NOTICE file
5#  distributed with this work for additional information
6#  regarding copyright ownership.  The ASF licenses this file
7#  to you under the Apache License, Version 2.0 (the
8#  "License"); you may not use this file except in compliance
9#  with the License.  You may obtain a copy of the License at
10#
11#    http://www.apache.org/licenses/LICENSE-2.0
12#
13#  Unless required by applicable law or agreed to in writing,
14#  software distributed under the License is distributed on an
15#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16#  KIND, either express or implied.  See the License for the
17#  specific language governing permissions and limitations
18#  under the License.
19#
20#**************************************************************
21
22
23
24PRJ=..
25PRJNAME=instsetoo_native
26TARGET=util
27
28.INCLUDE:  settings.mk
29.INCLUDE: $(SOLARINCDIR)$/rtlbootstrap.mk
30
31# watch for the path delimiter
32.IF "$(GUI)"=="WNT"
33PYTHONPATH:=$(PWD)$/$(BIN);$(SOLARLIBDIR);$(SOLARLIBDIR)$/python;$(SOLARLIBDIR)$/python$/lib-dynload
34.ELSE			# "$(GUI)"=="WNT"
35PYTHONPATH:=$(PWD)$/$(BIN):$(SOLARLIBDIR):$(SOLARLIBDIR)$/python:$(SOLARLIBDIR)$/python$/lib-dynload
36.ENDIF			# "$(GUI)"=="WNT"
37.EXPORT: PYTHONPATH
38
39.IF "$(CWS_WORK_STAMP)"=="" || "$(UPDATER)"!=""
40ENABLE_DOWNLOADSETS*=TRUE
41.ENDIF			# "$(CWS_WORK_STAMP)"=="" || "$(UPDATER)"!=""
42.IF "$(FORCE_DOWNLOADSETS)"!=""
43ENABLE_DOWNLOADSETS=TRUE
44.ENDIF			# "$(FORCE_DOWNLOADSETS)"!=""
45
46.EXPORT: ENABLE_DOWNLOADSETS
47.EXPORT: LAST_MINOR
48.EXPORT: PRJ
49.EXPORT: PRJNAME
50
51.IF "$(OS)"=="LINUX"
52DONT_REMOVE_PACKAGE:=TRUE
53.EXPORT: DONT_REMOVE_PACKAGE
54.ENDIF          # "$(OS)"=="LINUX"
55
56.INCLUDE .IGNORE: $(SRC_ROOT)$/cwsname.mk
57
58SHARED_COM_SDK_PATH*:=.
59
60INSTALLDIR=$(OUT)
61
62.INCLUDE: target.mk
63
64LOCALPYFILES= \
65    $(BIN)$/uno.py \
66	$(BIN)$/unohelper.py \
67	$(BIN)$/pythonloader.py \
68	$(BIN)$/pythonscript.py \
69	$(BIN)$/officehelper.py \
70	$(BIN)$/mailmerge.py
71
72xxxx:
73    echo $(PERL) -w $(SOLARENV)$/bin$/gen_update_info.pl --buildid $(BUILD) --arch "$(RTL_ARCH)" --os "$(RTL_OS)" --lstfile $(PRJ)$/util$/openoffice.lst --product OpenOffice --languages $(subst,$(@:s/_/ /:1)_, $(@:b)) $(PRJ)$/util$/update.xml
74
75.IF "$(GUI)"!="WNT" && "$(EPM)"=="NO" && "$(USE_PACKAGER)"==""
76ALLTAR  : $(LOCALPYFILES)
77	@echo "No EPM: do no packaging at this stage"
78.ELSE			# "$(GUI)"!="WNT" && "$(EPM)"=="NO" && "$(USE_PACKAGER)"==""
79.IF "$(UPDATER)"=="" || "$(USE_PACKAGER)"==""
80.IF "$(BUILD_TYPE)"=="$(BUILD_TYPE:s/ODK//)"
81ALLTAR : openoffice
82.ELSE
83ALLTAR : openoffice sdkoo_en-US
84.ENDIF
85.ELSE			# "$(UPDATER)"=="" || "$(USE_PACKAGER)"==""
86ALLTAR : updatepack
87.ENDIF			# "$(UPDATER)"=="" || "$(USE_PACKAGER)"==""
88.ENDIF			# "$(GUI)"!="WNT" && "$(EPM)"=="NO" && "$(USE_PACKAGER)"==""
89
90.IF "$(FORCE2ARCHIVE)" == "TRUE"
91PKGFORMAT = archive
92.END
93
94.IF "$(MAKETARGETS:e)"!=""
95PKGFORMAT+=$(MAKETARGETS:e:s/.//)
96.ENDIF			# "$(MAKETARGETS:e)"!=""
97
98# Independent of PKGFORMAT, always build a default-language openoffice product
99# also in archive format, so that tests that require an OOo installation (like
100# smoketestoo_native) have one available:
101openoffice_$(defaultlangiso) : $$@.archive
102
103.IF "$(VERBOSE)"=="TRUE"
104VERBOSESWITCH=-verbose
105.ELIF "$(VERBOSE)"=="FALSE"
106VERBOSESWITCH=-quiet
107.ENDIF
108
109.IF "$(VERBOSE_INSTALLER)"=="TRUE"
110VERBOSESWITCH+=-log
111.ENDIF
112
113# New target to prepare a source release
114SRC_RELEASE_OUT_DIR=$(shell cd $(OUT) && pwd)$/AOO_SRC_Release
115
116aoo_srcrelease: $(SOLARENV)$/bin$/srcrelease.xml
117	@-$(MKDIR) $(OUT)$/AOO_SRC_Release
118	$(ANT) -f $(SOLARENV)$/bin$/srcrelease.xml -q -Dbasedir=$(SOURCE_ROOT_DIR) -Dout.dir=$(SRC_RELEASE_OUT_DIR)
119
120updatepack:
121	$(PERL) -w $(SOLARENV)$/bin$/packager.pl
122
123.IF "$(alllangiso)"!=""
124
125openoffice: $(foreach,i,$(alllangiso) openoffice_$i)
126
127openofficedev: $(foreach,i,$(alllangiso) openofficedev_$i)
128
129openofficewithjre: $(foreach,i,$(alllangiso) openofficewithjre_$i)
130
131ooolanguagepack : $(foreach,i,$(alllangiso) ooolanguagepack_$i)
132
133ooodevlanguagepack: $(foreach,i,$(alllangiso) ooodevlanguagepack_$i)
134
135sdkoo: $(foreach,i,$(alllangiso) sdkoo_$i)
136
137sdkoodev: $(foreach,i,$(alllangiso) sdkoodev_$i)
138
139MSIOFFICETEMPLATESOURCE=$(PRJ)$/inc_openoffice$/windows$/msi_templates
140MSILANGPACKTEMPLATESOURCE=$(PRJ)$/inc_ooolangpack$/windows$/msi_templates
141MSISDKOOTEMPLATESOURCE=$(PRJ)$/inc_sdkoo$/windows$/msi_templates
142
143.IF "$(BUILD_SPECIAL)"!=""
144MSIOFFICETEMPLATEDIR=$(MSIOFFICETEMPLATESOURCE)
145MSILANGPACKTEMPLATEDIR=$(MSILANGPACKTEMPLATESOURCE)
146MSISDKOOTEMPLATEDIR=$(MSISDKOOTEMPLATESOURCE)
147.ELSE			# "$(BUILD_SPECIAL)"!=""
148NOLOGOSPLASH:=$(BIN)$/intro.zip
149DEVNOLOGOSPLASH:=$(BIN)$/dev$/intro.zip
150MSIOFFICETEMPLATEDIR=$(MISC)$/openoffice$/msi_templates
151MSILANGPACKTEMPLATEDIR=$(MISC)$/ooolangpack$/msi_templates
152MSISDKOOTEMPLATEDIR=$(MISC)$/sdkoo$/msi_templates
153
154ADDDEPS=$(NOLOGOSPLASH) $(DEVNOLOGOSPLASH)
155
156.IF "$(OS)" == "WNT"
157ADDDEPS+=hack_msitemplates
158.ENDIF
159
160$(foreach,i,$(alllangiso) openoffice_$i) : $(ADDDEPS)
161openoffice_$(defaultlangiso).archive : $(ADDDEPS)
162
163$(foreach,i,$(alllangiso) openofficedev_$i) : $(ADDDEPS)
164
165$(foreach,i,$(alllangiso) openofficewithjre_$i) : $(ADDDEPS)
166
167$(foreach,i,$(alllangiso) ooolanguagepack_$i) : $(ADDDEPS)
168
169$(foreach,i,$(alllangiso) ooodevlanguagepack_$i) : $(ADDDEPS)
170
171$(foreach,i,$(alllangiso) sdkoo_$i) : $(ADDDEPS)
172
173$(foreach,i,$(alllangiso) sdkoodev_$i) : $(ADDDEPS)
174
175.IF "$(MAKETARGETS)"!=""
176$(MAKETARGETS) : $(ADDDEPS)
177.ENDIF			# "$(MAKETARGETS)"!=""
178
179.ENDIF			# "$(BUILD_SPECIAL)"!=""
180
181$(foreach,i,$(alllangiso) openoffice_$i) : $$@{$(PKGFORMAT:^".")}
182.IF "$(MAKETARGETS)"!=""
183.IF "$(MAKETARGETS:e)"=="" && "$(MAKETARGETS:s/_//)"!="$(MAKETARGETS)"
184$(MAKETARGETS) : $$@{$(PKGFORMAT:^".")}
185$(MAKETARGETS){$(PKGFORMAT:^".")} : $(ADDDEPS)
186.ENDIF			# "$(MAKETARGETS:e)"=="" && "$(MAKETARGETS:s/_//)"!="$(MAKETARGETS)"
187.ENDIF			# "$(MAKETARGETS)"!=""
188openoffice_%{$(PKGFORMAT:^".") .archive} :
189	$(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p Apache_OpenOffice -u $(OUT) -buildid $(BUILD) -msitemplate $(MSIOFFICETEMPLATEDIR) -msilanguage $(MISC)$/win_ulffiles -format $(@:e:s/.//) $(VERBOSESWITCH)
190	$(PERL) -w $(SOLARENV)$/bin$/gen_update_info.pl --buildid $(BUILD) --arch "$(RTL_ARCH)" --os "$(RTL_OS)" --lstfile $(PRJ)$/util$/openoffice.lst --product Apache_OpenOffice --languages $(subst,$(@:s/_/ /:1)_, $(@:b)) $(PRJ)$/util$/update.xml > $(MISC)/$(@:b)_$(RTL_OS)_$(RTL_ARCH)$(@:e).update.xml
191
192$(foreach,i,$(alllangiso) openofficewithjre_$i) : $$@{$(PKGFORMAT:^".")}
193openofficewithjre_%{$(PKGFORMAT:^".")} :
194	$(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p Aapche_OpenOffice_wJRE -u $(OUT) -buildid $(BUILD) -msitemplate $(MSIOFFICETEMPLATEDIR) -msilanguage $(MISC)$/win_ulffiles -format $(@:e:s/.//) $(VERBOSESWITCH)
195
196$(foreach,i,$(alllangiso) openofficedev_$i) : $$@{$(PKGFORMAT:^".")}
197openofficedev_%{$(PKGFORMAT:^".")} :
198	$(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p Apache_OpenOffice_Dev -u $(OUT) -buildid $(BUILD) -msitemplate $(MSIOFFICETEMPLATEDIR) -msilanguage $(MISC)$/win_ulffiles -format $(@:e:s/.//) $(VERBOSESWITCH)
199	$(PERL) -w $(SOLARENV)$/bin$/gen_update_info.pl --buildid $(BUILD) --arch "$(RTL_ARCH)" --os "$(RTL_OS)" --lstfile $(PRJ)$/util$/openoffice.lst --product Apache_OpenOffice_Dev --languages $(subst,$(@:s/_/ /:1)_, $(@:b)) $(PRJ)$/util$/update.xml > $(MISC)/$(@:b)_$(RTL_OS)_$(RTL_ARCH)$(@:e).update.xml
200
201$(foreach,i,$(alllangiso) ooolanguagepack_$i) : $$@{$(PKGFORMAT:^".")}
202ooolanguagepack_%{$(PKGFORMAT:^".")} :
203	$(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p Apache_OpenOffice -u $(OUT) -buildid $(BUILD) -msitemplate $(MSILANGPACKTEMPLATEDIR) -msilanguage $(MISC)$/win_ulffiles -languagepack -format $(@:e:s/.//) $(VERBOSESWITCH)
204
205$(foreach,i,$(alllangiso) ooodevlanguagepack_$i) : $$@{$(PKGFORMAT:^".")}
206ooodevlanguagepack_%{$(PKGFORMAT:^".")} :
207	$(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p Apache_OpenOffice_Dev -u $(OUT) -buildid $(BUILD) -msitemplate $(MSILANGPACKTEMPLATEDIR) -msilanguage $(MISC)$/win_ulffiles -languagepack -format $(@:e:s/.//) $(VERBOSESWITCH)
208
209$(foreach,i,$(alllangiso) sdkoo_$i) : $$@{$(PKGFORMAT:^".")}
210sdkoo_%{$(PKGFORMAT:^".")} :
211	$(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p Apache_OpenOffice_SDK -u $(OUT) -buildid $(BUILD) -msitemplate $(MSISDKOOTEMPLATEDIR) -msilanguage $(MISC)$/win_ulffiles -dontstrip -format $(@:e:s/.//) $(VERBOSESWITCH)
212
213$(foreach,i,$(alllangiso) sdkoodev_$i) : $$@{$(PKGFORMAT:^".")}
214sdkoodev_%{$(PKGFORMAT:^".")} :
215	$(PERL) -w $(SOLARENV)$/bin$/make_installer.pl -f $(PRJ)$/util$/openoffice.lst -l $(subst,$(@:s/_/ /:1)_, $(@:b)) -p Apache_OpenOffice_Dev_SDK -u $(OUT) -buildid $(BUILD) -msitemplate $(MSISDKOOTEMPLATEDIR) -msilanguage $(MISC)$/win_ulffiles -dontstrip -format $(@:e:s/.//) $(VERBOSESWITCH)
216
217.IF "$(MAKETARGETS)"!=""
218.IF "$(MAKETARGETS:e)"=="" && "$(MAKETARGETS:s/_//)"!="$(MAKETARGETS)"
219$(MAKETARGETS) : $$@{$(PKGFORMAT:^".")}
220$(MAKETARGETS){$(PKGFORMAT:^".")} : $(ADDDEPS)
221.ENDIF			# "$(MAKETARGETS:e)"=="" && "$(MAKETARGETS:s/_//)"!="$(MAKETARGETS)"
222.ENDIF			# "$(MAKETARGETS)"!=""
223
224.ELSE			# "$(alllangiso)"!=""
225openoffice:
226	@echo cannot pack nothing...
227
228.ENDIF			# "$(alllangiso)"!=""
229
230.IF "$(LOCALPYFILES)"!=""
231$(foreach,i,$(alllangiso) openoffice_$i{$(PKGFORMAT:^".") .archive} openofficewithjre_$i{$(PKGFORMAT:^".")} openofficedev_$i{$(PKGFORMAT:^".")} sdkoo_$i{$(PKGFORMAT:^".")}) updatepack : $(LOCALPYFILES)
232.ENDIF			# "$(LOCALPYFILES)"!=""
233
234$(BIN)$/%.py : $(SOLARSHAREDBIN)$/pyuno$/%.py
235	@$(COPY) $< $@
236
237#$(BIN)$/intro.zip : $(SOLARCOMMONPCKDIR)$/openoffice_nologo$/intro.zip
238$(BIN)$/intro.zip : $(SOLARCOMMONPCKDIR)$/intro.zip
239	$(COPY) $< $@
240
241#$(BIN)$/dev$/intro.zip : $(SOLARCOMMONPCKDIR)$/openoffice_dev_nologo$/intro.zip
242$(BIN)$/dev$/intro.zip : $(SOLARCOMMONPCKDIR)$/openoffice_dev$/intro.zip
243	@-$(MKDIR) $(@:d)
244	$(COPY) $< $@
245
246hack_msitemplates .PHONY:
247	-$(MKDIRHIER) $(MSIOFFICETEMPLATEDIR)
248	-$(MKDIRHIER) $(MSILANGPACKTEMPLATEDIR)
249	-$(MKDIRHIER) $(MSISDKOOTEMPLATEDIR)
250	-$(MKDIRHIER) $(MSIOFFICETEMPLATEDIR)$/Binary
251	-$(MKDIRHIER) $(MSILANGPACKTEMPLATEDIR)$/Binary
252	-$(MKDIRHIER) $(MSISDKOOTEMPLATEDIR)$/Binary
253	$(GNUCOPY) $(MSIOFFICETEMPLATESOURCE)$/*.* $(MSIOFFICETEMPLATEDIR)
254	$(GNUCOPY) $(MSILANGPACKTEMPLATESOURCE)$/*.* $(MSILANGPACKTEMPLATEDIR)
255	$(GNUCOPY) $(MSISDKOOTEMPLATESOURCE)$/*.* $(MSISDKOOTEMPLATEDIR)
256	$(GNUCOPY) $(MSIOFFICETEMPLATESOURCE)$/Binary$/*.* $(MSIOFFICETEMPLATEDIR)$/Binary
257	$(GNUCOPY) $(MSILANGPACKTEMPLATESOURCE)$/Binary$/*.* $(MSILANGPACKTEMPLATEDIR)$/Binary
258	$(GNUCOPY) $(MSISDKOOTEMPLATESOURCE)$/Binary$/*.* $(MSISDKOOTEMPLATEDIR)$/Binary
259
260
261