xref: /AOO41X/main/instsetoo_native/util/makefile.mk (revision 0a7c35a961b138a6fc6515bd96872da5d8e7fb86)
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
22PRJ=..
23PRJNAME=instsetoo_native
24TARGET=util
25
26.INCLUDE:  settings.mk
27.INCLUDE: $(SOLARINCDIR)$/rtlbootstrap.mk
28
29# watch for the path delimiter
30.IF "$(GUI)"=="WNT"
31PYTHONPATH:=$(PWD)$/$(BIN);$(SOLARLIBDIR);$(SOLARLIBDIR)$/python;$(SOLARLIBDIR)$/python$/lib-dynload
32.ELSE           # "$(GUI)"=="WNT"
33PYTHONPATH:=$(PWD)$/$(BIN):$(SOLARLIBDIR):$(SOLARLIBDIR)$/python:$(SOLARLIBDIR)$/python$/lib-dynload
34.ENDIF          # "$(GUI)"=="WNT"
35.EXPORT: PYTHONPATH
36
37.IF "$(CWS_WORK_STAMP)"=="" || "$(UPDATER)"!=""
38ENABLE_DOWNLOADSETS*=TRUE
39.ENDIF          # "$(CWS_WORK_STAMP)"=="" || "$(UPDATER)"!=""
40.IF "$(FORCE_DOWNLOADSETS)"!=""
41ENABLE_DOWNLOADSETS=TRUE
42.ENDIF          # "$(FORCE_DOWNLOADSETS)"!=""
43
44.EXPORT: ENABLE_DOWNLOADSETS
45.EXPORT: LAST_MINOR
46.EXPORT: PRJ
47.EXPORT: PRJNAME
48
49.IF "$(OS)"=="LINUX"
50DONT_REMOVE_PACKAGE:=TRUE
51.EXPORT: DONT_REMOVE_PACKAGE
52.ENDIF          # "$(OS)"=="LINUX"
53
54.INCLUDE .IGNORE: $(SRC_ROOT)$/cwsname.mk
55
56SHARED_COM_SDK_PATH*:=.
57
58INSTALLDIR=$(OUT)
59
60.INCLUDE: target.mk
61
62.IF "$(FORCE2ARCHIVE)" == "TRUE"
63PKGFORMAT = archive
64.END
65.IF "$(MAKETARGETS:e)"!=""
66PKGFORMAT+=$(MAKETARGETS:e:s/.//)
67.ENDIF
68# PKGFORMAT may contain the standard package format twice at this time.
69# Provide its content with duplicates removed.
70PACKAGE_FORMATS=$(uniq $(PKGFORMAT))
71
72
73# The help target belongs after the inclusion of target.mk to not become the default target.
74help .PHONY :
75    @echo "known targets:"
76    @echo "    openoffice             builds the default installation packages for the platform"
77    @echo "    aoo_srcrelease         packs the source release package"
78    @echo "    updatepack"
79    @echo "    openofficedev          devloper snapshot"
80    @echo "    openofficewithjre"
81    @echo "    ooolanguagepack"
82    @echo "    ooodevlanguagepack"
83    @echo "    sdkoo"
84    @echo "    sdkoodev"
85    @echo
86    @echo "experimental targets:"
87    @echo "    patch-create           create a patch for updating an installed office (Windows only)"
88    @echo "    patch-apply            apply a previously created patch"
89    @echo "    patch-update-releases-xml"
90    @echo "    patch-check            check if patch can be created (part of patch-create)"
91    @echo
92    @echo "Most targets (all except aoo_srcrelease and updatepack) accept suffixes"
93    @echo "    append _<language> to build a target for one language only"
94    @echo "        the default set of languages is alllangiso=$(alllangiso)"
95    @echo "    append .<package_format> to build a target for one package format only"
96    @echo "        the default set of package formats is archive and PKGFORMAT=$(PKGFORMAT)"
97    @echo "        known package formats are: "
98    @echo "        archive, bsd, deb, dmg, installed, msi, native, osx, pkg, portable, rpm"
99
100
101LOCALPYFILES=           \
102    $(BIN)$/uno.py      \
103    $(BIN)$/unohelper.py    \
104    $(BIN)$/pythonloader.py \
105    $(BIN)$/pythonscript.py \
106    $(BIN)$/officehelper.py \
107    $(BIN)$/mailmerge.py
108
109xxxx:
110    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
111
112.IF "$(GUI)"!="WNT" && "$(EPM)"=="NO" && "$(USE_PACKAGER)"==""
113ALLTAR  : $(LOCALPYFILES)
114    @echo "No EPM: do no packaging at this stage"
115.ELSE           # "$(GUI)"!="WNT" && "$(EPM)"=="NO" && "$(USE_PACKAGER)"==""
116.IF "$(UPDATER)"=="" || "$(USE_PACKAGER)"==""
117.IF "$(BUILD_TYPE)"=="$(BUILD_TYPE:s/ODK//)"
118ALLTAR : openoffice
119.ELSE
120ALLTAR : openoffice sdkoo_en-US
121.ENDIF
122.ELSE           # "$(UPDATER)"=="" || "$(USE_PACKAGER)"==""
123ALLTAR : updatepack
124.ENDIF          # "$(UPDATER)"=="" || "$(USE_PACKAGER)"==""
125.ENDIF          # "$(GUI)"!="WNT" && "$(EPM)"=="NO" && "$(USE_PACKAGER)"==""
126
127
128# Independent of PKGFORMAT, always build a default-language openoffice product
129# also in archive format, so that tests that require an OOo installation (like
130# smoketestoo_native) have one available:
131openoffice_$(defaultlangiso) : $$@.archive
132
133.IF "$(VERBOSE)"=="TRUE"
134VERBOSESWITCH=-verbose
135.ELIF "$(VERBOSE)"=="FALSE"
136VERBOSESWITCH=-quiet
137.ENDIF
138
139.IF "$(release:U)"=="T"
140RELEASE_SWITCH=-release
141$(foreach,i,$(alllangiso) openoffice_$i.msi) : prepare_release_build
142.ELSE
143RELEASE_SWITCH=
144.ENDIF
145
146prepare_release_build .PHONY:
147    @$(PERL) -w $(SOLARENV)$/bin$/release_prepare.pl    \
148        --lst-file $(PRJ)$/util$/openoffice.lst     \
149        --product-name Apache_OpenOffice        \
150        --output-path $(OUT)                \
151        $(alllangiso)
152
153.IF "$(VERBOSE_INSTALLER)"=="TRUE"
154VERBOSESWITCH+=-log
155.ENDIF
156
157# New target to prepare a source release
158SRC_RELEASE_OUT_DIR=$(shell cd $(OUT) && pwd)$/AOO_SRC_Release
159
160aoo_srcrelease: $(SOLARENV)$/bin$/srcrelease.xml
161    @-$(MKDIR) $(OUT)$/AOO_SRC_Release
162    $(ANT) -f $(SOLARENV)$/bin$/srcrelease.xml -q -Dbasedir=$(SOURCE_ROOT_DIR) -Dout.dir=$(SRC_RELEASE_OUT_DIR)
163
164updatepack:
165    $(PERL) -w $(SOLARENV)$/bin$/packager.pl
166
167
168
169.IF "$(alllangiso)"==""
170openoffice:
171    @echo no languages specified => aborting packing
172
173.ELSE   # "$(alllangiso)"==""
174
175# The naming schema of targets is this: <target>_<language>.<package>
176# where <target> is the target base name (like openoffice or sdkoo)
177#       <language> is the language name (like en-US or fr)
178#       <package> is the package format (like archive, msi, deb, rpm, dmg)
179
180# Add dependencies of basic targets on language specific targets.
181openoffice: $(foreach,i,$(alllangiso) openoffice_$i)
182openofficedev: $(foreach,i,$(alllangiso) openofficedev_$i)
183openofficewithjre: $(foreach,i,$(alllangiso) openofficewithjre_$i)
184ooolanguagepack : $(foreach,i,$(alllangiso) ooolanguagepack_$i)
185ooodevlanguagepack: $(foreach,i,$(alllangiso) ooodevlanguagepack_$i)
186sdkoo: $(foreach,i,$(alllangiso) sdkoo_$i)
187sdkoodev: $(foreach,i,$(alllangiso) sdkoodev_$i)
188patch-create: $(foreach,i,$(alllangiso) patch-create_$i)
189
190MSIOFFICETEMPLATESOURCE=$(PRJ)$/inc_openoffice$/windows$/msi_templates
191MSILANGPACKTEMPLATESOURCE=$(PRJ)$/inc_ooolangpack$/windows$/msi_templates
192MSISDKOOTEMPLATESOURCE=$(PRJ)$/inc_sdkoo$/windows$/msi_templates
193
194NOLOGOSPLASH:=$(BIN)$/intro.zip
195DEVNOLOGOSPLASH:=$(BIN)$/dev$/intro.zip
196MSIOFFICETEMPLATEDIR=$(MISC)$/openoffice$/msi_templates
197MSILANGPACKTEMPLATEDIR=$(MISC)$/ooolangpack$/msi_templates
198MSISDKOOTEMPLATEDIR=$(MISC)$/sdkoo$/msi_templates
199
200ADDDEPS=adddeps
201adddeps .PHONY : $(NOLOGOSPLASH) $(DEVNOLOGOSPLASH)
202
203.IF "$(OS)" == "WNT"
204adddeps : msitemplates
205.ENDIF
206
207.IF "$(LOCALPYFILES)"!=""
208local_python_files .PHONY : $(LOCALPYFILES)
209adddeps : local_python_files
210updatepack : local_python_files
211.ENDIF          # "$(LOCALPYFILES)"!=""
212
213# Add dependencies on 'adddeps' where necessary.
214$(foreach,i,$(alllangiso) openoffice_$i) : adddeps
215openoffice_$(defaultlangiso).archive : adddeps
216$(foreach,i,$(alllangiso) openofficedev_$i) : adddeps
217$(foreach,i,$(alllangiso) openofficewithjre_$i) : adddeps
218$(foreach,i,$(alllangiso) ooolanguagepack_$i) : adddeps
219$(foreach,i,$(alllangiso) ooodevlanguagepack_$i) : adddeps
220$(foreach,i,$(alllangiso) sdkoo_$i) : adddeps
221$(foreach,i,$(alllangiso) sdkoodev_$i) : adddeps
222
223# Create targets that take the package formats into account.  Together with language dependency we
224# get this transformation: target -> target_$language -> target_$language.$package
225# where $language ranges over all languages in $(alllangiso)
226# and $package ranges over all package formats in $(PKGFORMAT)
227$(foreach,i,$(alllangiso) openoffice_$i) : $$@{$(PKGFORMAT:^".")}
228$(foreach,i,$(alllangiso) openofficewithjre_$i) : $$@{$(PKGFORMAT:^".")}
229$(foreach,i,$(alllangiso) openofficedev_$i) : $$@{$(PKGFORMAT:^".")}
230$(foreach,i,$(alllangiso) ooolanguagepack_$i) : $$@{$(PKGFORMAT:^".")}
231$(foreach,i,$(alllangiso) ooodevlanguagepack_$i) : $$@{$(PKGFORMAT:^".")}
232$(foreach,i,$(alllangiso) sdkoo_$i) : $$@{$(PKGFORMAT:^".")}
233$(foreach,i,$(alllangiso) sdkoodev_$i) : $$@{$(PKGFORMAT:^".")}
234$(foreach,i,$(alllangiso) patch-create_$i) : $$@{$(PKGFORMAT:^".")}
235
236
237# This macro makes calling the make_installer.pl script a bit easier.
238# Just add -p and -msitemplate switches.
239MAKE_INSTALLER_COMMAND=                 \
240    @$(PERL) -w $(SOLARENV)$/bin$/make_installer.pl \
241        -f $(PRJ)$/util$/openoffice.lst     \
242        -l $(subst,$(@:s/_/ /:1)_, $(@:b))  \
243        -u $(OUT)               \
244        -buildid $(BUILD)           \
245        -msilanguage $(MISC)$/win_ulffiles  \
246        -format $(@:e:s/.//)            \
247        $(VERBOSESWITCH)
248
249# This macro makes calling gen_update_info.pl a bit easier
250# Just add --product switches, and xml input file and redirect output.
251GEN_UPDATE_INFO_COMMAND=                    \
252    @$(PERL) -w $(SOLARENV)$/bin$/gen_update_info.pl    \
253        --buildid $(BUILD)              \
254        --arch "$(RTL_ARCH)"                \
255        --os "$(RTL_OS)"                \
256        --lstfile $(PRJ)$/util$/openoffice.lst      \
257        --languages $(subst,$(@:s/_/ /:1)_, $(@:b))
258
259#openoffice_%{$(PKGFORMAT:^".")} :
260$(foreach,P,$(PACKAGE_FORMATS) $(foreach,L,$(alllangiso) openoffice_$L.$P)) .PHONY :
261    $(MAKE_INSTALLER_COMMAND)           \
262        -p Apache_OpenOffice            \
263        -msitemplate $(MSIOFFICETEMPLATEDIR)    \
264        $(RELEASE_SWITCH)
265    $(GEN_UPDATE_INFO_COMMAND)      \
266        --product Apache_OpenOffice \
267        $(PRJ)$/util$/update.xml    \
268        > $(MISC)/$(@:b)_$(RTL_OS)_$(RTL_ARCH)$(@:e).update.xml
269
270#openofficewithjre_%{$(PKGFORMAT:^".")} :
271$(foreach,P,$(PACKAGE_FORMATS) $(foreach,L,$(alllangiso) openofficewithjre_$L.$P)) .PHONY :
272    $(MAKE_INSTALLER_COMMAND) -p Apache_OpenOffice_wJRE -msitemplate $(MSIOFFICETEMPLATEDIR)
273
274#openofficedev_%{$(PKGFORMAT:^".")} :
275$(foreach,P,$(PACKAGE_FORMATS) $(foreach,L,$(alllangiso) openofficedev_$L.$P)) .PHONY :
276    $(MAKE_INSTALLER_COMMAND)       \
277        -p Apache_OpenOffice_Dev    \
278        -msitemplate $(MSIOFFICETEMPLATEDIR)
279    $(GEN_UPDATE_INFO_COMMAND)          \
280        --product Apache_OpenOffice_Dev     \
281        $(PRJ)$/util$/update.xml        \
282        > $(MISC)/$(@:b)_$(RTL_OS)_$(RTL_ARCH)$(@:e).update.xml
283
284#ooolanguagepack_%{$(PKGFORMAT:^".")} :
285$(foreach,P,$(PACKAGE_FORMATS) $(foreach,L,$(alllangiso) ooolanguagepack_$L.$P)) .PHONY :
286    $(MAKE_INSTALLER_COMMAND)           \
287        -p Apache_OpenOffice            \
288        -msitemplate $(MSILANGPACKTEMPLATEDIR)  \
289        -languagepack
290
291#ooodevlanguagepack_%{$(PKGFORMAT:^".")} :
292$(foreach,P,$(PACKAGE_FORMATS) $(foreach,L,$(alllangiso) ooodevlanguagepack_$L.$P)) .PHONY :
293    $(MAKE_INSTALLER_COMMAND) -p Apache_OpenOffice_Dev -msitemplate $(MSILANGPACKTEMPLATEDIR) -languagepack
294
295#sdkoo_%{$(PKGFORMAT:^".")} :
296$(foreach,P,$(PACKAGE_FORMATS) $(foreach,L,$(alllangiso) sdkoo_$L.$P)) .PHONY :
297    $(MAKE_INSTALLER_COMMAND) -p Apache_OpenOffice_SDK -msitemplate $(MSISDKOOTEMPLATEDIR) -dontstrip
298
299#sdkoodev_%{$(PKGFORMAT:^".")} :
300$(foreach,P,$(PACKAGE_FORMATS) $(foreach,L,$(alllangiso) sdkoodev_$L.$P)) .PHONY :
301    $(MAKE_INSTALLER_COMMAND) -p Apache_OpenOffice_Dev_SDK -msitemplate $(MSISDKOOTEMPLATEDIR) -dontstrip
302
303.ENDIF  # "$(alllangiso)"==""
304
305$(BIN)$/%.py : $(SOLARSHAREDBIN)$/pyuno$/%.py
306    $(COPY) $< $@
307
308$(BIN)$/intro.zip : $(SOLARCOMMONPCKDIR)$/intro.zip
309    $(COPY) $< $@
310
311$(BIN)$/dev$/intro.zip : $(SOLARCOMMONPCKDIR)$/openoffice_dev$/intro.zip
312    @-$(MKDIR) $(@:d)
313    $(COPY) $< $@
314
315
316.IF "$(OS)" == "WNT"
317$(foreach,P,$(PACKAGE_FORMATS) $(foreach,L,$(alllangiso) patch-create_$L.$P)) .PHONY :
318    @echo building $@
319    perl -I $(SOLARENV)$/bin/modules $(SOLARENV)$/bin$/patch_tool.pl    \
320        create                              \
321        --product-name Apache_OpenOffice                \
322        --output-path $(OUT)                        \
323        --data-path $(PRJ)$/data                    \
324        --lst-file $(PRJ)$/util$/openoffice.lst             \
325        --language $(subst,$(@:s/_/ /:1)_, $(@:b))          \
326        --package-format $(@:e:s/.//)
327patch-apply .PHONY :
328    perl -I $(SOLARENV)$/bin/modules $(SOLARENV)$/bin$/patch_tool.pl    \
329        apply                               \
330        --product-name Apache_OpenOffice                \
331        --output-path $(OUT)                        \
332        --lst-file $(PRJ)$/util$/openoffice.lst             \
333        --language en-US                        \
334        --package-format msi
335patch-update-releases-xml .PHONY:
336    perl -I $(SOLARENV)$/bin/modules $(SOLARENV)$/bin$/patch_tool.pl    \
337        update-releases-xml                     \
338        --product-name Apache_OpenOffice                \
339        --output-path $(OUT)                        \
340        --lst-file $(PRJ)$/util$/openoffice.lst\
341        --target-version 4.0.1
342$(foreach,P,$(PACKAGE_FORMATS) $(foreach,L,$(alllangiso) patch-check_$L.$P)) .PHONY :
343    @echo building $@
344    perl -I $(SOLARENV)$/bin/modules $(SOLARENV)$/bin$/patch_tool.pl    \
345        check                               \
346        --product-name Apache_OpenOffice                \
347        --output-path $(OUT)                        \
348        --data-path $(PRJ)$/data                    \
349        --lst-file $(PRJ)$/util$/openoffice.lst             \
350        --language $(subst,$(@:s/_/ /:1)_, $(@:b))          \
351        --package-format $(@:e:s/.//)
352
353$(PRJ)$/data :
354    mkdir $@
355.ELSE
356$(foreach,P,$(PACKAGE_FORMATS) $(foreach,L,$(alllangiso) patch-create_$L.$P)) .PHONY :
357    @echo "patches can only be created on Windows at the moment"
358patch-apply .PHONY :
359    @echo "patches can only be created on Windows at the moment"
360patch-update-releases-xml .PHONY:
361    @echo "patches can only be created on Windows at the moment"
362.ENDIF
363
364
365msitemplates .PHONY: msi_template_files msi_langpack_template_files msi_sdk_template_files
366
367MSI_OFFICE_TEMPLATE_FILES=      \
368    ActionTe.idt            \
369    AdminExe.idt            \
370    AdminUIS.idt            \
371    AdvtExec.idt            \
372    AppSearc.idt            \
373    Binary.idt          \
374    CheckBox.idt            \
375    Control.idt         \
376    ControlC.idt            \
377    ControlE.idt            \
378    CustomAc.idt            \
379    Dialog.idt          \
380    Error.idt           \
381    EventMap.idt            \
382    InstallE.idt            \
383    InstallU.idt            \
384    LaunchCo.idt            \
385    ListBox.idt         \
386    Property.idt            \
387    RadioBut.idt            \
388    RegLocat.idt            \
389    Signatur.idt            \
390    TextStyl.idt            \
391    UIText.idt          \
392    _Validat.idt            \
393    codes.txt           \
394    codes_broo.txt          \
395    codes_broodev.txt       \
396    codes_ooodev.txt        \
397    components.txt          \
398    upgradecode_remove_ooo.txt  \
399    Binary/Banner.bmp       \
400    Binary/Image.bmp        \
401    Binary/caution.ico      \
402    Binary/dontinstall.ico      \
403    Binary/install.ico      \
404    Binary/installfirstuse.ico  \
405    Binary/installpartial.ico   \
406    Binary/installstatemenu.ico \
407    Binary/networkinstall.ico   \
408    Binary/newfolder.ico        \
409    Binary/openfolder.ico       \
410    Binary/setup.ico        \
411    Binary/setupcomplete.ico    \
412    Binary/setuppartial.ico     \
413    Binary/setuprepair.ico      \
414    Binary/trashcan.ico     \
415    Binary/up.ico
416
417MSI_LANGPACK_TEMPLATE_FILES=        \
418    ActionTe.idt            \
419    AdminExe.idt            \
420    AdminUIS.idt            \
421    AdvtExec.idt            \
422    Binary.idt          \
423    CheckBox.idt            \
424    Control.idt         \
425    ControlC.idt            \
426    ControlE.idt            \
427    CustomAc.idt            \
428    Dialog.idt          \
429    Error.idt           \
430    EventMap.idt            \
431    InstallE.idt            \
432    InstallU.idt            \
433    LaunchCo.idt            \
434    ListBox.idt         \
435    Property.idt            \
436    RadioBut.idt            \
437    TextStyl.idt            \
438    UIText.idt          \
439    _Validat.idt            \
440    bro_patchcodes.txt      \
441    brodev_patchcodes.txt       \
442    codes.txt           \
443    codes_broo.txt          \
444    codes_ooodev.txt        \
445    components.txt          \
446    ooo_patchcodes.txt      \
447    ooodev_patchcodes.txt       \
448    Binary/Banner.bmp       \
449    Binary/Image.bmp        \
450    Binary/caution.ico      \
451    Binary/dontinstall.ico      \
452    Binary/install.ico      \
453    Binary/installfirstuse.ico  \
454    Binary/installpartial.ico   \
455    Binary/installstatemenu.ico \
456    Binary/networkinstall.ico   \
457    Binary/newfolder.ico        \
458    Binary/openfolder.ico       \
459    Binary/setup.ico        \
460    Binary/setupcomplete.ico    \
461    Binary/setuppartial.ico     \
462    Binary/setuprepair.ico      \
463    Binary/trashcan.ico     \
464    Binary/up.ico
465
466MSI_SDK_TEMPLATE_FILES=         \
467    ActionTe.idt            \
468    AdminExe.idt            \
469    AdminUIS.idt            \
470    AdvtExec.idt            \
471    AppSearc.idt            \
472    Binary.idt          \
473    CheckBox.idt            \
474    Control.idt         \
475    ControlC.idt            \
476    ControlE.idt            \
477    CustomAc.idt            \
478    Dialog.idt          \
479    Error.idt           \
480    EventMap.idt            \
481    InstallE.idt            \
482    InstallU.idt            \
483    LaunchCo.idt            \
484    ListBox.idt         \
485    Property.idt            \
486    RadioBut.idt            \
487    RegLocat.idt            \
488    Signatur.idt            \
489    TextStyl.idt            \
490    UIText.idt          \
491    _Validat.idt            \
492    codes.txt           \
493    components.txt          \
494    Binary/Banner.bmp       \
495    Binary/Image.bmp        \
496    Binary/caution.ico      \
497    Binary/dontinstall.ico      \
498    Binary/install.ico      \
499    Binary/installfirstuse.ico  \
500    Binary/installpartial.ico   \
501    Binary/installstatemenu.ico \
502    Binary/networkinstall.ico   \
503    Binary/newfolder.ico        \
504    Binary/openfolder.ico       \
505    Binary/setup.ico        \
506    Binary/setupcomplete.ico    \
507    Binary/setuppartial.ico     \
508    Binary/setuprepair.ico      \
509    Binary/trashcan.ico     \
510    Binary/up.ico
511
512msi_template_files .PHONY:                  \
513    $(MSIOFFICETEMPLATEDIR)                 \
514    $(MSIOFFICETEMPLATEDIR)$/Binary             \
515    $(MSIOFFICETEMPLATEDIR)$/{$(MSI_OFFICE_TEMPLATE_FILES)}
516$(MSIOFFICETEMPLATEDIR) $(MSIOFFICETEMPLATEDIR)$/Binary :
517    -$(MKDIRHIER) $@
518$(MSIOFFICETEMPLATEDIR)$/% : $(MSIOFFICETEMPLATESOURCE)$/%
519    $(GNUCOPY) $< $@
520
521msi_langpack_template_files .PHONY :                \
522    $(MSILANGPACKTEMPLATEDIR)               \
523    $(MSILANGPACKTEMPLATEDIR)$/Binary           \
524    $(MSILANGPACKTEMPLATEDIR)$/{$(MSI_LANGPACK_TEMPLATE_FILES)}
525$(MSILANGPACKTEMPLATEDIR) $(MSILANGPACKTEMPLATEDIR)$/Binary  :
526    -$(MKDIRHIER) $@
527$(MSILANGPACKTEMPLATEDIR)$/% : $(MSILANGPACKTEMPLATESOURCE)$/%
528    $(GNUCOPY) $< $@
529
530
531msi_sdk_template_files .PHONY :                 \
532    $(MSISDKOOTEMPLATEDIR)                  \
533    $(MSISDKOOTEMPLATEDIR)$/Binary              \
534    $(MSISDKOOTEMPLATEDIR)$/{$(MSI_SDK_TEMPLATE_FILES)}
535$(MSISDKOOTEMPLATEDIR) $(MSISDKOOTEMPLATEDIR)$/Binary :
536    -$(MKDIRHIER) $@
537$(MSISDKOOTEMPLATEDIR)/% : $(MSISDKOOTEMPLATESOURCE)$/%
538    $(GNUCOPY) $< $@
539
540
541# Local Variables:
542# tab-width: 8
543# End:
544