source: trunk/qmake/Makefile.win32@ 314

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

qmake: Build os2/GNUMAKE generator on other platforms.

File size: 20.5 KB
RevLine 
[2]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 \
[51]31 -I. -Igenerators -Igenerators\unix -Igenerators\win32 -Igenerators\os2 -Igenerators\mac \
[2]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 \
[51]77 msvc_objectmodel.obj gnumake.obj
[2]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