|
1 # Sis file creation |
|
2 contains(TEMPLATE, app)|!count(DEPLOYMENT, 1) { |
|
3 symbian-abld|symbian-sbsv2 { |
|
4 sis_destdir = |
|
5 make_cache_name = .make.cache |
|
6 sis_target.target = sis |
|
7 sis_target.commands = $(if $(wildcard $$basename(TARGET)_template.pkg), \ |
|
8 $(if $(wildcard $$make_cache_name), \ |
|
9 $(MAKE) -f $(MAKEFILE) ok_sis MAKEFILES=$$make_cache_name \ |
|
10 , \ |
|
11 $(if $(QT_SIS_TARGET), \ |
|
12 $(MAKE) -f $(MAKEFILE) ok_sis \ |
|
13 , \ |
|
14 $(MAKE) -f $(MAKEFILE) fail_sis_nocache \ |
|
15 ) \ |
|
16 ) \ |
|
17 , \ |
|
18 $(MAKE) -f $(MAKEFILE) fail_sis_nopkg \ |
|
19 ) |
|
20 |
|
21 ok_sis_target.target = ok_sis |
|
22 ok_sis_target.commands = createpackage.bat $(QT_SIS_OPTIONS) $$basename(TARGET)_template.pkg \ |
|
23 $(QT_SIS_TARGET) $(QT_SIS_CERTIFICATE) $(QT_SIS_KEY) $(QT_SIS_PASSPHRASE) |
|
24 |
|
25 target_sis_target.target = $${sis_destdir}$${TARGET}.sis |
|
26 target_sis_target.commands = $(MAKE) -f $(MAKEFILE) sis |
|
27 |
|
28 installer_sis_target.target = installer_sis |
|
29 installer_sis_target.commands = $(if $(wildcard $$basename(TARGET)_installer.pkg), \ |
|
30 $(MAKE) -f $(MAKEFILE) ok_installer_sis \ |
|
31 , \ |
|
32 $(MAKE) -f $(MAKEFILE) fail_sis_nopkg \ |
|
33 ) |
|
34 installer_sis_target.depends = $${sis_destdir}$${TARGET}.sis |
|
35 |
|
36 ok_installer_sis_target.target = ok_installer_sis |
|
37 ok_installer_sis_target.commands = createpackage.bat $(QT_SIS_OPTIONS) $$basename(TARGET)_installer.pkg - \ |
|
38 $(QT_SIS_CERTIFICATE) $(QT_SIS_KEY) $(QT_SIS_PASSPHRASE) |
|
39 |
|
40 fail_sis_nopkg_target.target = fail_sis_nopkg |
|
41 fail_sis_nopkg_target.commands = "$(error PKG file does not exist, 'sis' and 'installer_sis' target are only supported for executables or projects with DEPLOYMENT statement)" |
|
42 |
|
43 fail_sis_nocache_target.target = fail_sis_nocache |
|
44 fail_sis_nocache_target.commands = "$(error Project has to be built or QT_SIS_TARGET environment variable has to be set before calling 'SIS' target)" |
|
45 |
|
46 stub_sis_target.target = stub_sis |
|
47 stub_sis_target.commands = $(if $(wildcard $$basename(TARGET)_template.pkg), \ |
|
48 $(if $(wildcard $$make_cache_name), \ |
|
49 $(MAKE) -f $(MAKEFILE) ok_stub_sis MAKEFILES=$$make_cache_name \ |
|
50 , \ |
|
51 $(if $(QT_SIS_TARGET), \ |
|
52 $(MAKE) -f $(MAKEFILE) ok_stub_sis \ |
|
53 , \ |
|
54 $(MAKE) -f $(MAKEFILE) fail_sis_nocache \ |
|
55 ) \ |
|
56 ) \ |
|
57 , \ |
|
58 $(MAKE) -f $(MAKEFILE) fail_sis_nopkg \ |
|
59 ) |
|
60 |
|
61 ok_stub_sis_target.target = ok_stub_sis |
|
62 ok_stub_sis_target.commands = createpackage.bat -s $(QT_SIS_OPTIONS) $$basename(TARGET)_stub.pkg \ |
|
63 $(QT_SIS_TARGET) $(QT_SIS_CERTIFICATE) $(QT_SIS_KEY) $(QT_SIS_PASSPHRASE) |
|
64 |
|
65 QMAKE_EXTRA_TARGETS += sis_target \ |
|
66 ok_sis_target \ |
|
67 target_sis_target \ |
|
68 installer_sis_target \ |
|
69 ok_installer_sis_target \ |
|
70 fail_sis_nopkg_target \ |
|
71 fail_sis_nocache_target \ |
|
72 stub_sis_target \ |
|
73 ok_stub_sis_target |
|
74 # Sbsv2 has its own store_build target which is using flms. |
|
75 !symbian-sbsv2 { |
|
76 contains(QMAKE_HOST.os, "Windows") { |
|
77 shellFixedHash = $${LITERAL_HASH} |
|
78 } else { |
|
79 shellFixedHash = \\$${LITERAL_HASH} |
|
80 } |
|
81 store_build_target.target = store_build |
|
82 store_build_target.commands = \ |
|
83 @echo $${shellFixedHash} ============================================================================== > $$make_cache_name \ |
|
84 && echo $${shellFixedHash} This file is generated by make and should not be modified by the user >> $$make_cache_name \ |
|
85 && echo $${shellFixedHash} Name : $$make_cache_name >> $$make_cache_name \ |
|
86 && echo $${shellFixedHash} Part of : lineedits >> $$make_cache_name \ |
|
87 && echo $${shellFixedHash} Description : This file is used to cache last build target for >> $$make_cache_name \ |
|
88 && echo $${shellFixedHash} make sis target. >> $$make_cache_name \ |
|
89 && echo $${shellFixedHash} Version : >> $$make_cache_name \ |
|
90 && echo $${shellFixedHash} >> $$make_cache_name \ |
|
91 && echo $${shellFixedHash} ============================================================================== >> $$make_cache_name \ |
|
92 && echo. >> $$make_cache_name \ |
|
93 && echo QT_SIS_TARGET ?= $(QT_SIS_TARGET) >> $$make_cache_name |
|
94 |
|
95 QMAKE_EXTRA_TARGETS += store_build_target |
|
96 } |
|
97 } else { |
|
98 sis_destdir = $$DESTDIR |
|
99 !isEmpty(sis_destdir):!contains(sis_destdir, "[/\\]$"):sis_destdir = $${sis_destdir}/ |
|
100 contains(QMAKE_HOST.os, "Windows"):sis_destdir = $$replace(sis_destdir, "/", "\\") |
|
101 |
|
102 sis_target.target = sis |
|
103 sis_target.commands = createpackage $(QT_SIS_OPTIONS) $$basename(TARGET)_template.pkg \ |
|
104 - $(QT_SIS_CERTIFICATE) $(QT_SIS_KEY) $(QT_SIS_PASSPHRASE) |
|
105 sis_target.depends = first |
|
106 |
|
107 target_sis_target.target = $${sis_destdir}$${TARGET}.sis |
|
108 target_sis_target.commands = $(MAKE) -f $(MAKEFILE) sis |
|
109 |
|
110 installer_sis_target.target = installer_sis |
|
111 installer_sis_target.commands = createpackage $(QT_SIS_OPTIONS) $$basename(TARGET)_installer.pkg - \ |
|
112 $(QT_SIS_CERTIFICATE) $(QT_SIS_KEY) $(QT_SIS_PASSPHRASE) |
|
113 installer_sis_target.depends = $${sis_destdir}$${TARGET}.sis |
|
114 |
|
115 !isEmpty(DESTDIR) { |
|
116 sis_target.commands += && $$QMAKE_MOVE $$basename(TARGET).sis $$DESTDIR |
|
117 installer_sis_target.commands += && $$QMAKE_MOVE $$basename(TARGET).sis $$DESTDIR |
|
118 } |
|
119 |
|
120 QMAKE_EXTRA_TARGETS += sis_target \ |
|
121 target_sis_target \ |
|
122 installer_sis_target |
|
123 } |
|
124 } else { |
|
125 contains(TEMPLATE, subdirs) { |
|
126 # Enable recursive sis target. |
|
127 sis_target.CONFIG = recursive |
|
128 sis_target.recurse = $$SUBDIRS |
|
129 } else { |
|
130 # Make sure we build everything, since other sis targets in a recursive invocation |
|
131 # may depend on them, even if this one is empty. |
|
132 sis_target.depends = first |
|
133 } |
|
134 sis_target.commands = |
|
135 sis_target.target = sis |
|
136 QMAKE_EXTRA_TARGETS += sis_target |
|
137 } |
|
138 |
|
139 QMAKE_DISTCLEAN += $${sis_destdir}$${TARGET}.sis |