source: trunk/qmake/Makefile.win32@ 234

Last change on this file since 234 was 51, checked in by Dmitry A. Kuminov, 16 years ago

qmake: Build os2/GNUMAKE generator on other platforms.

File size: 20.5 KB
Line 
1!IF "$(QMAKESPEC)" == "win32-msvc" || "$(QMAKESPEC)" == "win32-msvc.net" || "$(QMAKESPEC)" == "win32-msvc2002" || "$(QMAKESPEC)" == "win32-msvc2003" || "$(QMAKESPEC)" == "win32-msvc2005" || "$(QMAKESPEC)" == "win32-msvc2008" || "$(QMAKESPEC)" == "win32-icc"
2
3!if "$(SOURCE_PATH)" == ""
4SOURCE_PATH = ..
5!endif
6!if "$(BUILD_PATH)" == ""
7BUILD_PATH = ..
8!endif
9
10#
11# specific stuff for NMake and ICC
12#
13!if "$(QMAKESPEC)" == "win32-icc"
14CXX = icl
15LINK = link
16CFLAGS = /Zc:forScope
17!else
18CXX = cl
19LINK = link
20!endif
21
22#
23# specific stuff for VS2005
24#
25!if "$(QMAKESPEC)" == "win32-msvc2005"
26CFLAGS = /Zc:wchar_t-
27!endif
28
29CFLAGS = -c -Fo$@ \
30 -W3 -nologo -O2 \
31 -I. -Igenerators -Igenerators\unix -Igenerators\win32 -Igenerators\os2 -Igenerators\mac \
32 -I$(BUILD_PATH)\include -I$(BUILD_PATH)\include\QtCore \
33 -I$(SOURCE_PATH)\include -I$(SOURCE_PATH)\include\QtCore \
34 -I$(BUILD_PATH)\src\corelib\global \
35 -I$(BUILD_PATH)\include\QtScript \
36 -I$(SOURCE_PATH)\mkspecs\$(QMAKESPEC) \
37 -DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_LITE_COMPONENT -DQT_NODLL -DQT_NO_STL \
38 -DQT_NO_COMPRESS -DUNICODE -DHAVE_QCONFIG_CPP -DQT_BUILD_QMAKE -DQT_NO_THREAD \
39 -DQT_NO_QOBJECT -DQT_NO_GEOM_VARIANT -DQT_NO_DATASTREAM -DQT_NO_PCRE -DQT_BOOTSTRAPPED \
40 $(CFLAGS)
41CXXFLAGS = $(CFLAGS)
42LFLAGS =
43LIBS = ole32.lib advapi32.lib
44LINKQMAKE = $(LINK) $(LFLAGS) -DEBUG -OUT:qmake.exe $(OBJS) $(QTOBJS) $(LIBS)
45ADDCLEAN = vc60.pdb vc70.pdb qmake.pdb qmake.ilk
46!ELSE
47
48#
49# specific stuff for Borland make
50#
51!if !$d(BCB)
52BCB = $(MAKEDIR)\..
53!endif
54CXX = bcc32
55CFLAGS = -c -o$@ \
56 -tWR -w -w-hid -w-use -O1 \
57 -I. -Igenerators -Igenerators\unix -Igenerators\win32 -Igenerators\mac \
58 -I$(BUILD_PATH)\include -I$(BUILD_PATH)\include\QtCore \
59 -I$(SOURCE_PATH)\include -I$(SOURCE_PATH)\include\QtCore \
60 -I$(BUILD_PATH)\src\corelib\global \
61 -I$(SOURCE_PATH)\mkspecs\$(QMAKESPEC) \
62 -DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_LITE_COMPONENT -DQT_NODLL -DQT_NO_STL \
63 -DQT_NO_COMPRESS -DUNICODE -DHAVE_QCONFIG_CPP -DQT_BUILD_QMAKE -DQT_NO_THREAD \
64 -DQT_NO_QOBJECT -DQT_NO_GEOM_VARIANT
65CXXFLAGS = $(CFLAGS)
66LFLAGS = -L$(BCB)\lib -c -x -Gn -ap -Tpe c0x32.obj
67LIBS = import32.lib cw32i.lib
68LINKQMAKE = ilink32 $(LFLAGS) $(OBJS) $(QTOBJS), qmake.exe,,$(LIBS)
69ADDCLEAN = qmake.tds
70!ENDIF
71
72#qmake code
73OBJS = project.obj main.obj makefile.obj unixmake.obj unixmake2.obj mingw_make.obj \
74 option.obj winmakefile.obj projectgenerator.obj property.obj meta.obj \
75 makefiledeps.obj metamakefile.obj xmloutput.obj pbuilder_pbx.obj \
76 borland_bmake.obj msvc_nmake.obj msvc_dsp.obj msvc_vcproj.obj \
77 msvc_objectmodel.obj gnumake.obj
78
79!IFDEF QMAKE_OPENSOURCE_EDITION
80CFLAGS = $(CFLAGS) -DQMAKE_OPENSOURCE_EDITION
81!ENDIF
82
83#qt code
84QTOBJS= \
85 qbitarray.obj \
86 qbuffer.obj \
87 qcryptographichash.obj \
88 qfsfileengine.obj \
89 qfsfileengine_iterator.obj \
90 qbytearray.obj \
91 qvsnprintf.obj \
92 qbytearraymatcher.obj \
93 qdatetime.obj \
94 qdir.obj \
95 qdiriterator.obj \
96 qfile.obj \
97 qtemporaryfile.obj \
98 qabstractfileengine.obj \
99 qfsfileengine_win.obj \
100 qfsfileengine_iterator_win.obj \
101 qfileinfo.obj \
102 qglobal.obj \
103 qhash.obj \
104 qiodevice.obj \
105 qlistdata.obj \
106 qlinkedlist.obj \
107 qlocale.obj \
108 qmalloc.obj \
109 qmap.obj \
110 qregexp.obj \
111 qstring.obj \
112 qstringlist.obj \
113 qtextstream.obj \
114 qdatastream.obj \
115 quuid.obj \
116 qvector.obj \
117 qsettings.obj \
118 qlibraryinfo.obj \
119 qvariant.obj \
120 qurl.obj \
121 qsettings_win.obj \
122 qmetatype.obj \
123 qnumeric.obj \
124 qscriptasm.obj \
125 qscriptast.obj \
126 qscriptastvisitor.obj \
127 qscriptcompiler.obj \
128 qscriptecmaarray.obj \
129 qscriptecmaboolean.obj \
130 qscriptecmacore.obj \
131 qscriptecmadate.obj \
132 qscriptecmafunction.obj \
133 qscriptecmaglobal.obj \
134 qscriptecmamath.obj \
135 qscriptecmanumber.obj \
136 qscriptecmaobject.obj \
137 qscriptecmaregexp.obj \
138 qscriptecmastring.obj \
139 qscriptecmaerror.obj \
140 qscriptcontext_p.obj \
141 qscriptengine.obj \
142 qscriptengine_p.obj \
143 qscriptengineagent.obj \
144 qscriptextenumeration.obj \
145 qscriptextvariant.obj \
146 qscriptcontext.obj \
147 qscriptcontextinfo.obj \
148 qscriptfunction.obj \
149 qscriptgrammar.obj \
150 qscriptlexer.obj \
151 qscriptclassdata.obj \
152 qscriptparser.obj \
153 qscriptprettypretty.obj \
154 qscriptsyntaxchecker.obj \
155 qscriptclass.obj \
156 qscriptclasspropertyiterator.obj \
157 qscriptstring.obj \
158 qscriptvalue.obj \
159 qscriptvalueimpl.obj \
160 qscriptvalueiterator.obj \
161 qscriptvalueiteratorimpl.obj
162
163
164first all: qmake.exe
165
166qmake.exe: $(OBJS) $(QTOBJS)
167 $(LINKQMAKE)
168 -copy qmake.exe $(BUILD_PATH)\bin\qmake.exe
169
170clean::
171 -del qbitarray.obj
172 -del qbuffer.obj
173 -del qcryptographichash.obj
174 -del qlinkedlist.obj
175 -del qfsfileengine.obj
176 -del qfsfileengine_iterator.obj
177 -del qbytearray.obj
178 -del qvsnprintf.obj
179 -del qbytearraymatcher.obj
180 -del qdatetime.obj
181 -del qdir.obj
182 -del qdiriterator.obj
183 -del qfile.obj
184 -del qtemporaryfile.obj
185 -del qabstractfileengine.obj
186 -del qfsfileengine_win.obj
187 -del qfsfileengine_iterator_win.obj
188 -del qfileinfo.obj
189 -del qglobal.obj
190 -del qhash.obj
191 -del qiodevice.obj
192 -del qlistdata.obj
193 -del qlocale.obj
194 -del qmalloc.obj
195 -del qmap.obj
196 -del qregexp.obj
197 -del qstring.obj
198 -del qstringlist.obj
199 -del qtextstream.obj
200 -del qdatastream.obj
201 -del quuid.obj
202 -del qvector.obj
203 -del qsettings.obj
204 -del qlibraryinfo.obj
205 -del qvariant.obj
206 -del qurl.obj
207 -del qsettings_win.obj
208 -del qmetatype.obj
209 -del project.obj
210 -del main.obj
211 -del makefile.obj
212 -del unixmake.obj
213 -del unixmake2.obj
214 -del mingw_make.obj
215 -del option.obj
216 -del winmakefile.obj
217 -del projectgenerator.obj
218 -del property.obj
219 -del meta.obj
220 -del makefiledeps.obj
221 -del metamakefile.obj
222 -del xmloutput.obj
223 -del borland_bmake.obj
224 -del msvc_nmake.obj
225 -del msvc_dsp.obj
226 -del msvc_vcproj.obj
227 -del msvc_objectmodel.obj
228 -del gnumake.obj
229 -del pbuilder_pbx.obj
230 -del qnumeric.obj \
231 -del qscriptasm.obj \
232 -del qscriptast.obj \
233 -del qscriptastvisitor.obj \
234 -del qscriptcompiler.obj \
235 -del qscriptecmaarray.obj \
236 -del qscriptecmaboolean.obj \
237 -del qscriptecmacore.obj \
238 -del qscriptecmadate.obj \
239 -del qscriptecmafunction.obj \
240 -del qscriptecmaglobal.obj \
241 -del qscriptecmamath.obj \
242 -del qscriptecmanumber.obj \
243 -del qscriptecmaobject.obj \
244 -del qscriptecmaregexp.obj \
245 -del qscriptecmastring.obj \
246 -del qscriptecmaerror.obj \
247 -del qscriptcontext_p.obj \
248 -del qscriptengine.obj \
249 -del qscriptengine_p.obj \
250 -del qscriptengineagent.obj \
251 -del qscriptextenumeration.obj \
252 -del qscriptextvariant.obj \
253 -del qscriptcontext.obj \
254 -del qscriptcontextinfo.obj \
255 -del qscriptfunction.obj \
256 -del qscriptgrammar.obj \
257 -del qscriptlexer.obj \
258 -del qscriptclassdata.obj \
259 -del qscriptparser.obj \
260 -del qscriptprettypretty.obj \
261 -del qscriptsyntaxchecker.obj \
262 -del qscriptclass.obj \
263 -del qscriptclasspropertyiterator.obj \
264 -del qscriptstring.obj \
265 -del qscriptvalue.obj \
266 -del qscriptvalueimpl.obj \
267 -del qscriptvalueiterator.obj \
268 -del qscriptvalueiteratorimpl.obj
269 -del vc60.pdb