source: trunk/src/src.pro@ 858

Last change on this file since 858 was 846, checked in by Dmitry A. Kuminov, 14 years ago

trunk: Merged in qt 4.7.2 sources from branches/vendor/nokia/qt.

File size: 9.3 KB
Line 
1TEMPLATE = subdirs
2
3# this order is important
4unset(SRC_SUBDIRS)
5win32:SRC_SUBDIRS += src_winmain
6symbian:SRC_SUBDIRS += src_s60main
7SRC_SUBDIRS += src_corelib src_xml src_network src_sql src_testlib
8!symbian:contains(QT_CONFIG, dbus):SRC_SUBDIRS += src_dbus
9!contains(QT_CONFIG, no-gui): SRC_SUBDIRS += src_gui
10!wince*:!symbian:!vxworks:contains(QT_CONFIG, qt3support): SRC_SUBDIRS += src_qt3support
11
12!wince*:!symbian-abld:!symbian-sbsv2:include(tools/tools.pro)
13win32:SRC_SUBDIRS += src_activeqt
14
15contains(QT_CONFIG, opengl)|contains(QT_CONFIG, opengles1)|contains(QT_CONFIG, opengles2): SRC_SUBDIRS += src_opengl
16contains(QT_CONFIG, openvg): SRC_SUBDIRS += src_openvg
17contains(QT_CONFIG, xmlpatterns): SRC_SUBDIRS += src_xmlpatterns
18contains(QT_CONFIG, phonon): SRC_SUBDIRS += src_phonon
19contains(QT_CONFIG, multimedia): SRC_SUBDIRS += src_multimedia
20contains(QT_CONFIG, svg): SRC_SUBDIRS += src_svg
21contains(QT_CONFIG, script): SRC_SUBDIRS += src_script
22contains(QT_CONFIG, declarative): SRC_SUBDIRS += src_declarative
23contains(QT_CONFIG, webkit) {
24 exists($$QT_SOURCE_TREE/src/3rdparty/webkit/JavaScriptCore/JavaScriptCore.pro): SRC_SUBDIRS += src_javascriptcore
25 SRC_SUBDIRS += src_webkit
26}
27!contains(QT_CONFIG, no-gui):contains(QT_CONFIG, scripttools): SRC_SUBDIRS += src_scripttools
28SRC_SUBDIRS += src_plugins
29contains(QT_CONFIG, declarative): SRC_SUBDIRS += src_imports
30contains(QT_CONFIG, declarative):contains(QT_CONFIG, webkit): SRC_SUBDIRS += src_webkit_declarative
31
32# s60installs need to be at the end, because projects.pro does an ordered build,
33# and s60installs depends on all the others.
34symbian:SRC_SUBDIRS += src_s60installs
35
36os2:SRC_SUBDIRS += src_xsystray
37
38src_s60main.subdir = $$QT_SOURCE_TREE/src/s60main
39src_s60main.target = sub-s60main
40src_s60installs.subdir = $$QT_SOURCE_TREE/src/s60installs
41src_s60installs.target = sub-s60installs
42src_winmain.subdir = $$QT_SOURCE_TREE/src/winmain
43src_winmain.target = sub-winmain
44src_corelib.subdir = $$QT_SOURCE_TREE/src/corelib
45src_corelib.target = sub-corelib
46src_xml.subdir = $$QT_SOURCE_TREE/src/xml
47src_xml.target = sub-xml
48src_xmlpatterns.subdir = $$QT_SOURCE_TREE/src/xmlpatterns
49src_xmlpatterns.target = sub-xmlpatterns
50src_dbus.subdir = $$QT_SOURCE_TREE/src/dbus
51src_dbus.target = sub-dbus
52src_gui.subdir = $$QT_SOURCE_TREE/src/gui
53src_gui.target = sub-gui
54src_sql.subdir = $$QT_SOURCE_TREE/src/sql
55src_sql.target = sub-sql
56src_network.subdir = $$QT_SOURCE_TREE/src/network
57src_network.target = sub-network
58src_svg.subdir = $$QT_SOURCE_TREE/src/svg
59src_svg.target = sub-svg
60src_script.subdir = $$QT_SOURCE_TREE/src/script
61src_script.target = sub-script
62src_scripttools.subdir = $$QT_SOURCE_TREE/src/scripttools
63src_scripttools.target = sub-scripttools
64src_opengl.subdir = $$QT_SOURCE_TREE/src/opengl
65src_opengl.target = sub-opengl
66src_openvg.subdir = $$QT_SOURCE_TREE/src/openvg
67src_openvg.target = sub-openvg
68src_qt3support.subdir = $$QT_SOURCE_TREE/src/qt3support
69src_qt3support.target = sub-qt3support
70src_phonon.subdir = $$QT_SOURCE_TREE/src/phonon
71src_phonon.target = sub-phonon
72src_multimedia.subdir = $$QT_SOURCE_TREE/src/multimedia
73src_multimedia.target = sub-multimedia
74src_activeqt.subdir = $$QT_SOURCE_TREE/src/activeqt
75src_activeqt.target = sub-activeqt
76src_plugins.subdir = $$QT_SOURCE_TREE/src/plugins
77src_plugins.target = sub-plugins
78src_imports.subdir = $$QT_SOURCE_TREE/src/imports
79src_imports.target = sub-imports
80src_testlib.subdir = $$QT_SOURCE_TREE/src/testlib
81src_testlib.target = sub-testlib
82src_javascriptcore.subdir = $$QT_SOURCE_TREE/src/3rdparty/webkit/JavaScriptCore
83src_javascriptcore.target = sub-javascriptcore
84src_webkit.subdir = $$QT_SOURCE_TREE/src/3rdparty/webkit/WebCore
85src_webkit.target = sub-webkit
86src_declarative.subdir = $$QT_SOURCE_TREE/src/declarative
87src_declarative.target = sub-declarative
88src_webkit_declarative.subdir = $$QT_SOURCE_TREE/src/3rdparty/webkit/WebKit/qt/declarative
89src_webkit_declarative.target = sub-webkitdeclarative
90src_xsystray.subdir = $$QT_SOURCE_TREE/src/3rdparty/os2/xsystray
91src_xsystray.target = sub-xsystray
92
93#CONFIG += ordered
94!wince*:!ordered:!symbian-abld:!symbian-sbsv2 {
95 src_corelib.depends = src_tools_moc src_tools_rcc
96 src_gui.depends = src_corelib src_tools_uic
97 embedded: src_gui.depends += src_network
98 src_xml.depends = src_corelib
99 src_xmlpatterns.depends = src_corelib src_network
100 src_dbus.depends = src_corelib src_xml
101 src_svg.depends = src_corelib src_gui
102 src_script.depends = src_corelib
103 src_scripttools.depends = src_script src_gui src_network
104 src_network.depends = src_corelib
105 src_opengl.depends = src_gui
106 src_openvg.depends = src_gui
107 src_sql.depends = src_corelib
108 src_testlib.depends = src_corelib
109 src_qt3support.depends = src_gui src_xml src_network src_sql
110 src_tools_idc.depends = src_corelib # target defined in tools.pro
111 src_tools_uic3.depends = src_qt3support src_xml # target defined in tools.pro
112 src_phonon.depends = src_gui
113 src_multimedia.depends = src_gui
114 contains(QT_CONFIG, opengl):src_multimedia.depends += src_opengl
115 src_tools_activeqt.depends = src_tools_idc src_gui
116 src_declarative.depends = src_gui src_script src_network
117 src_plugins.depends = src_gui src_sql src_svg
118 contains(QT_CONFIG, multimedia):src_plugins.depends += src_multimedia
119 src_s60installs.depends = $$TOOLS_SUBDIRS $$SRC_SUBDIRS
120 src_s60installs.depends -= src_s60installs
121 src_imports.depends = src_gui src_declarative
122 contains(QT_CONFIG, webkit) {
123 src_webkit.depends = src_gui src_sql src_network
124 contains(QT_CONFIG, xmlpatterns): src_webkit.depends += src_xmlpatterns
125 src_imports.depends += src_webkit
126 exists($$QT_SOURCE_TREE/src/3rdparty/webkit/JavaScriptCore/JavaScriptCore.pro) {
127 src_webkit.depends += src_javascriptcore
128 src_javascriptcore.depends = src_corelib
129 }
130 }
131 contains(QT_CONFIG, qt3support): src_plugins.depends += src_qt3support
132 contains(QT_CONFIG, dbus):{
133 src_plugins.depends += src_dbus
134 src_phonon.depends += src_dbus
135 }
136 contains(QT_CONFIG, opengl)|contains(QT_CONFIG, opengles1)|contains(QT_CONFIG, opengles2) {
137 src_plugins.depends += src_opengl
138 src_declarative.depends += src_opengl
139 src_webkit.depends += src_opengl
140 }
141 contains(QT_CONFIG, xmlpatterns) {
142 src_declarative.depends += src_xmlpatterns
143 src_webkit.depends += src_xmlpatterns
144 }
145 contains(QT_CONFIG, svg) {
146 src_declarative.depends += src_svg
147 }
148 contains(QT_CONFIG, webkit) : contains(QT_CONFIG, declarative): src_webkit_declarative.depends = src_declarative src_webkit
149}
150
151
152# This creates a sub-src rule
153sub_src_target.CONFIG = recursive
154sub_src_target.recurse = $$TOOLS_SUBDIRS $$SRC_SUBDIRS
155sub_src_target.target = sub-src
156sub_src_target.recurse_target =
157QMAKE_EXTRA_TARGETS += sub_src_target
158
159# This gives us a top level debug/release
160for(subname, SRC_SUBDIRS) {
161 subdir = $$subname
162 !isEmpty($${subname}.subdir):subdir = $$eval($${subname}.subdir)
163 subpro = $$subdir/$${basename(subdir)}.pro
164 !exists($$subpro):next()
165 subtarget = $$replace(subdir, [^A-Za-z0-9], _)
166 reg_src = $$replace(QT_SOURCE_TREE, \\\\, \\\\)
167 subdir = $$replace(subdir, $$reg_src, $$QT_BUILD_TREE)
168 subdir = $$replace(subdir, /, $$QMAKE_DIR_SEP)
169 subdir = $$replace(subdir, \\\\, $$QMAKE_DIR_SEP)
170 SUB_TEMPLATE = $$list($$fromfile($$subpro, TEMPLATE))
171 !isEqual(subname, src_tools_bootstrap):if(isEqual($$SUB_TEMPLATE, lib) | isEqual($$SUB_TEMPLATE, subdirs) | isEqual(subname, src_tools_idc) | isEqual(subname, src_tools_uic3)):!separate_debug_info {
172 #debug
173 debug-$${subtarget}.depends = $${subdir}$${QMAKE_DIR_SEP}$(MAKEFILE) $$EXTRA_DEBUG_TARGETS
174 debug-$${subtarget}.commands = (cd $$subdir && $(MAKE) -f $(MAKEFILE) debug)
175 EXTRA_DEBUG_TARGETS += debug-$${subtarget}
176 QMAKE_EXTRA_TARGETS += debug-$${subtarget}
177 #release
178 release-$${subtarget}.depends = $${subdir}$${QMAKE_DIR_SEP}$(MAKEFILE) $$EXTRA_RELEASE_TARGETS
179 release-$${subtarget}.commands = (cd $$subdir && $(MAKE) -f $(MAKEFILE) release)
180 EXTRA_RELEASE_TARGETS += release-$${subtarget}
181 QMAKE_EXTRA_TARGETS += release-$${subtarget}
182 } else { #do not have a real debug target/release
183 #debug
184 debug-$${subtarget}.depends = $${subdir}$${QMAKE_DIR_SEP}$(MAKEFILE) $$EXTRA_DEBUG_TARGETS
185 debug-$${subtarget}.commands = (cd $$subdir && $(MAKE) -f $(MAKEFILE) first)
186 EXTRA_DEBUG_TARGETS += debug-$${subtarget}
187 QMAKE_EXTRA_TARGETS += debug-$${subtarget}
188 #release
189 release-$${subtarget}.depends = $${subdir}$${QMAKE_DIR_SEP}$(MAKEFILE) $$EXTRA_RELEASE_TARGETS
190 release-$${subtarget}.commands = (cd $$subdir && $(MAKE) -f $(MAKEFILE) first)
191 EXTRA_RELEASE_TARGETS += release-$${subtarget}
192 QMAKE_EXTRA_TARGETS += release-$${subtarget}
193 }
194}
195debug.depends = $$EXTRA_DEBUG_TARGETS
196release.depends = $$EXTRA_RELEASE_TARGETS
197QMAKE_EXTRA_TARGETS += debug release
198
199# This gives us a top-level runonphone target, which installs Qt and optionally QtWebKit.
200contains(CONFIG, run_on_phone) {
201 src_runonphone_target.target = runonphone
202 src_runonphone_target.commands = $(MAKE) -C $$QT_BUILD_TREE/src/s60installs runonphone
203 src_runonphone_target.depends = first
204 contains(QT_CONFIG, webkit) {
205 src_runonphone_target.commands += && $(MAKE) -C $$QT_BUILD_TREE/src/3rdparty/webkit/WebCore runonphone
206 }
207 QMAKE_EXTRA_TARGETS += src_runonphone_target
208}
209
210SUBDIRS += $$SRC_SUBDIRS
Note: See TracBrowser for help on using the repository browser.