merge the formfield patch from ooo-build
[ooovba.git] / solenv / inc / wntmsci10.mk
blob09ec567fbd6254b8de3d0fc38e288a2362974afb
1 #*************************************************************************
3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 #
5 # Copyright 2008 by Sun Microsystems, Inc.
7 # OpenOffice.org - a multi-platform office productivity suite
9 # $RCSfile: wntmsci10.mk,v $
11 # $Revision: 1.44 $
13 # This file is part of OpenOffice.org.
15 # OpenOffice.org is free software: you can redistribute it and/or modify
16 # it under the terms of the GNU Lesser General Public License version 3
17 # only, as published by the Free Software Foundation.
19 # OpenOffice.org is distributed in the hope that it will be useful,
20 # but WITHOUT ANY WARRANTY; without even the implied warranty of
21 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22 # GNU Lesser General Public License version 3 for more details
23 # (a copy is included in the LICENSE file that accompanied this code).
25 # You should have received a copy of the GNU Lesser General Public License
26 # version 3 along with OpenOffice.org. If not, see
27 # <http://www.openoffice.org/license.html>
28 # for a copy of the LGPLv3 License.
30 #*************************************************************************
32 # mk file for $(OS)$(COM)$(CPU)$(COMEX) == WNTMSCI10
34 SOLAR_JAVA*=TRUE
35 FULL_DESK=TRUE
36 JAVAFLAGSDEBUG=-g
38 # SOLAR JAva Unterstuetzung nur fuer wntmsci
40 ASM=ml
41 AFLAGS=/c /Cp /coff
43 # architecture dependent flags for the C and C++ compiler that can be changed by
44 # exporting the variable ARCH_FLAGS="..." in the shell, which is used to start build
45 ARCH_FLAGS*=
47 CC*:=cl
48 .IF "$(bndchk)" != ""
49 CXX*=nmcl
50 .ELSE
51 .IF "$(truetime)" != ""
52 CXX*=nmcl /NMttOn
53 .ELSE
54 CXX*:=cl
55 .ENDIF
56 .ENDIF # "$(bndchk)" != ""
58 .IF "$(stoponerror)" != ""
59 CXX+= /NMstoponerror
60 .ENDIF
62 .IF "$(nmpass)" != ""
63 CXX+= /NMpass
64 .ENDIF
66 .IF "$(ttinlines)" != ""
67 CXX+= /NMttInlines
68 .ENDIF
70 .IF "$(ttnolines)" != ""
71 CXX+= /NMttNoLines
72 .ENDIF
74 # Flags for COMEX == 10
76 CFLAGS+=-Zm500 -Zc:forScope -GR
77 CFLAGS+=-c -nologo -Gs $(NOLOGO)
79 CDEFS+= -D_X86_=1
81 .IF "$(product)" != ""
82 CFLAGS+= -Gy
83 .ENDIF # "$(product)" != ""
85 .IF "$(bndchk)" == ""
86 .IF "$(VC_STANDARD)"==""
87 CFLAGS+= -Ob1
88 .ENDIF # "$(VC_STANDARD)"==""
89 .ENDIF
91 # flags to enable build with symbols; required for crashdump feature
92 #CFLAGSENABLESYMBOLS=-Zi -Fd$(MISC)/_ooo_st_$(TARGET).PDB
93 # full debug for RE builds only due to size concerns
94 .IF "$(UPDATER)"!=""
95 CFLAGSENABLESYMBOLS=-Z7 -Yd
96 .ELSE # "$(UPDATER)"!=""
97 # -Zd got higher priority and overrides debug switches
98 .IF "$(debug)"==""
99 CFLAGSENABLESYMBOLS=-Zd
100 .ENDIF # "$(debug)"==""
101 .ENDIF # "$(UPDATER)"!=""
103 .IF "$(bndchk)" != ""
104 .IF "$(debug)" == ""
105 CFLAGS+= -Z7
106 .ENDIF
107 .ENDIF
109 .IF "$(truetime)" != ""
110 .IF "$(debug)" == ""
111 CFLAGS+= -Z7
112 .ENDIF
113 .ENDIF
115 .IF "$(FULL_DESK)"!=""
116 CDEFS+=-DFULL_DESK
117 RSCDEFS+=-DFULL_DESK
118 .ENDIF
120 CFLAGSEXCEPTIONS=-GX
121 CFLAGS_NO_EXCEPTIONS=
123 CFLAGS_CREATE_PCH=-I$(INCPCH) -Fo$(SLO)/pchname.obj -Ycprecompiled_$(PRJNAME).hxx -DPRECOMPILED_HEADERS
124 CFLAGS_USE_PCH=-I$(INCPCH) -Yuprecompiled_$(PRJNAME).hxx -Fp$(SLO)/pch/precompiled_$(PRJNAME).hxx$(PCHPOST) -DPRECOMPILED_HEADERS
125 CFLAGS_USE_EXCEPTIONS_PCH=-I$(INCPCH) -Yuprecompiled_$(PRJNAME).hxx -Fp$(SLO)/pch_ex/precompiled_$(PRJNAME).hxx$(PCHPOST) -DPRECOMPILED_HEADERS
126 .IF "$(CALL_CDECL)"=="TRUE"
127 CFLAGSCALL=-Gd
128 .ELSE # "$(CALL_CDECL)"=="TRUE"
129 CFLAGSCALL=-Gz
130 .ENDIF # "$(CALL_CDECL)"=="TRUE"
132 CFLAGSCC=$(ARCH_FLAGS)
133 .IF "$(DYNAMIC_CRT)"!=""
134 CDEFSSLOMT+=-DWIN32 -D_MT -D_DLL
135 CDEFSSLOMT+=-DWIN32 -D_MT -D_DLL
136 .IF "$(NO_DYNAMIC_OBJ)"==""
137 CDEFSOBJMT+=-DWIN32 -D_MT -D_DLL
138 CDEFSOBJMT+=-DWIN32 -D_MT -D_DLL
139 .ELSE
140 CDEFSOBJMT+=-DWIN32 -D_MT
141 CDEFSOBJMT+=-DWIN32 -D_MT
142 .ENDIF
143 .ELSE
144 CDEFSSLOMT+=-DWIN32 -D_MT
145 CDEFSSLOMT+=-DWIN32 -D_MT
146 CDEFSOBJMT+=-DWIN32 -D_MT
147 CDEFSOBJMT+=-DWIN32 -D_MT
148 .ENDIF
149 CFLAGSPROF=-Gh -Fd$(MISC)/$(@:b).pdb
150 CFLAGSDEBUG=-Zi -Fd$(MISC)\_ooo_st_$(TARGET).PDB
151 CFLAGSDBGUTIL=
152 .IF "$(VC_STANDARD)"==""
153 CFLAGSOPT=-Oxs -Oy-
154 CFLAGSNOOPT=-Od
155 .ELSE # "$(VC_STANDARD)"==""
156 CFLAGSOPT=
157 CFLAGSNOOPT=
158 .ENDIF # "$(VC_STANDARD)"==""
159 CFLAGSOUTOBJ=-Fo
161 # For C and C++, certain warnings are disabled globally, as they result in
162 # spurious warnings and are hard or impossible to workaround:
163 # - "warning C4061: enumerate in switch of enum is not explicitly handled by a
164 # case label",
165 # - "warning C4063: case 'identifier' is not a valid value for switch of enum
166 # 'enumeration'",
167 # - "warning C4127: conditional expression is constant",
168 # - "warning C4191: unsafe conversion from function type to function type",
169 # - "warning C4217: member template functions cannot be used for copy-assignment
170 # or copy-construction",
171 # - "warning C4250: 'class1' : inherits 'class2::member' via dominance",
172 # - "warning C4292: compiler limit : terminating debug information emission",
173 # - "warning C4344: behavior change: use of explicit template arguments results
174 # in call to 'function",
175 # - "warning C4347: behavior change: 'overload A' is called instead of
176 # 'overload B'",
177 # - "warning C4355: 'this' used in base member initializer list",
178 # - "warning C4503: 'identifier': decorated name length exceeded, name was
179 # truncated" (http://msdn2.microsoft.com/en-us/library/074af4b6.aspx),
180 # - "warning C4511: copy constructor could not be generated",
181 # - "warning C4512: assignment operator could not be generated",
182 # - "warning C4514: unreferenced inline function has been removed",
183 # - "warning C4611: interaction between '_setjmp' and C++ object destruction is
184 # non-portable",
185 # - "warning C4619: warning Cnnnn unknown",
186 # - "warning C4625: copy constructor could not be generated because a base class
187 # copy constructor is inaccessible",
188 # - "warning C4626: assignment operator could not be generated because a base
189 # class assignment operator is inaccessible",
190 # - "warning C4675: resolved overload was found by argument-dependent lookup",
191 # - "warning C4686: possible change in behavior, change in UDT return calling
192 # convention",
193 # - "warning C4710: function not inlined",
194 # - "warning C4711: function selected for automatic inline expansion",
195 # - "warning C4820: padding added after member".
196 # For C, certain warnings from system headers (stdlib.h etc.) have to be
197 # disabled globally (for C++, this is not necessary, as the system headers are
198 # wrapped by STLport):
199 # - "warning C4255: no function prototype given: converting '()' to '(void)'".
200 CFLAGSWARNCXX=-Wall -wd4061 -wd4063 -wd4127 -wd4191 -wd4217 -wd4250 -wd4251 \
201 -wd4275 -wd4290 -wd4292 -wd4294 -wd4344 -wd4347 -wd4355 -wd4503 -wd4511 \
202 -wd4512 -wd4514 -wd4611 -wd4619 -wd4625 -wd4626 -wd4640 -wd4675 -wd4686 \
203 -wd4710 -wd4711 -wd4786 -wd4800 -wd4820
204 CFLAGSWARNCC=$(CFLAGSWARNCXX) -wd4255
205 CFLAGSWALLCC=$(CFLAGSWARNCC)
206 CFLAGSWALLCXX=$(CFLAGSWARNCXX)
207 CFLAGSWERRCC=-WX
209 # Once all modules on this platform compile without warnings, set
210 # COMPILER_WARN_ERRORS=TRUE here instead of setting MODULES_WITH_WARNINGS (see
211 # settings.mk):
212 MODULES_WITH_WARNINGS := \
213 lingucomponent \
214 soldep
216 CDEFS+=-DSTLPORT_VERSION=$(STLPORT_VER) -DWINVER=0x400 -D_WIN32_IE=0x400
217 CDEFS+=-D_MT
219 COMMENTFLAG=/COMMENT:"$(PRJNAME)_$(UPD)_$(VCSID)_"
221 LINK=link $(COMMENTFLAG) $(NOLOGO) /MACHINE:IX86
222 LINKOUTPUTFILTER= $(PIPEERROR) $(GREP) -v "LNK4197:"
223 .IF "$(PRODUCT)"!="full"
224 .ELSE
225 LINKFLAGS=/MAP /OPT:NOREF
226 .ENDIF
228 .IF "$(linkinc)" != ""
229 LINKFLAGS=-NODEFAULTLIB -DEBUG:full -DEBUGTYPE:cv -INCREMENTAL:YES
230 MAPFILE=
231 .ELSE # "$(linkinc)" != ""
232 .IF "$(PRODUCT)"!="full"
233 LINKFLAGS+= -NODEFAULTLIB -DEBUG:full -DEBUGTYPE:cv
234 .ELSE # "$(PRODUCT)"!="full"
235 LINKFLAGS+= -NODEFAULTLIB -RELEASE -DEBUG:full
236 .ENDIF # "$(PRODUCT)"!="full"
237 MAPFILE=-out:$$@
238 .ENDIF # "$(linkinc)" != ""
240 .IF "$(bndchk)" != ""
241 LINK=nmlink $(COMMENTFLAG) $(NOLOGO) -MACHINE:IX86
242 LINKFLAGS=-NODEFAULTLIB -DEBUG:full -DEBUGTYPE:cv
243 .ENDIF
245 .IF "$(truetime)" != ""
246 LINK=nmlink /NMttOn $(COMMENTFLAG) $(NOLOGO) /MACHINE:IX86
247 LINKFLAGS=/NODEFAULTLIB /DEBUG:full /DEBUGTYPE:cv
248 .ENDIF
250 LINKFLAGSAPPGUI=/SUBSYSTEM:WINDOWS,4.0
251 LINKFLAGSSHLGUI=/SUBSYSTEM:WINDOWS,4.0 /DLL
252 LINKFLAGSAPPCUI=/SUBSYSTEM:CONSOLE /BASE:0x1b000000
253 LINKFLAGSSHLCUI=/SUBSYSTEM:CONSOLE /DLL
254 LINKFLAGSTACK=/STACK:
255 LINKFLAGSPROF=-DEBUG:mapped,partial -DEBUGTYPE:coff cap.lib
256 LINKFLAGSWST=-DEBUG:mapped,partial -DEBUGTYPE:coff wst.lib -NODEFAULTLIB
257 LINKFLAGSDEBUG=-DEBUG:full -DEBUGTYPE:cv
258 LINKFLAGSOPT=
260 UWINAPILIB*=uwinapi.lib
261 .IF "$(DYNAMIC_CRT)"!=""
262 .IF "$(USE_STLP_DEBUG)" != ""
263 LIBCMT=msvcrtd.lib
264 .ELSE # "$(USE_STLP_DEBUG)" != ""
265 LIBCMT=msvcrt.lib
266 .ENDIF # "$(USE_STLP_DEBUG)" != ""
267 .ELSE # "$(DYNAMIC_CRT)"!=""
268 .IF "$(USE_STLP_DEBUG)" != ""
269 LIBCMT=libcmtd.lib
270 .ELSE # "$(USE_STLP_DEBUG)" != ""
271 LIBCMT=libcmt.lib
272 .ENDIF # "$(USE_STLP_DEBUG)" != ""
273 .ENDIF # "$(DYNAMIC_CRT)"!=""
275 STDOBJVCL=$(L)/salmain.obj
276 STDOBJGUI=
277 STDSLOGUI=
278 STDOBJCUI=
279 STDSLOCUI=
281 STDLIBGUIMT=$(LIBCMT) $(UWINAPILIB) kernel32.lib user32.lib oldnames.lib psapi.lib
282 STDLIBCUIMT=$(LIBCMT) $(UWINAPILIB) kernel32.lib user32.lib oldnames.lib psapi.lib
283 STDSHLGUIMT=$(LIBCMT) $(UWINAPILIB) kernel32.lib user32.lib oldnames.lib psapi.lib
284 STDSHLCUIMT=$(LIBCMT) $(UWINAPILIB) kernel32.lib user32.lib oldnames.lib psapi.lib
286 .IF "$(USE_STLP_DEBUG)" != ""
287 CFLAGS+=-MTd
288 LIBSTLPORT=stlport_vc71_stldebug.lib
289 LIBSTLPORTST=stlport_vc71_stldebug_static.lib
290 .ELSE
291 LIBSTLPORT=stlport_vc71.lib
292 LIBSTLPORTST=stlport_vc71_static.lib
293 .ENDIF
295 ATL_INCLUDE*=$(COMPATH)/atlmfc/include
296 ATL_LIB*=$(COMPATH)/atlmfc/lib
298 LIBMGR=lib $(NOLOGO)
299 IMPLIB=lib
300 LIBFLAGS=
302 IMPLIBFLAGS=-machine:IX86
304 MAPSYM=
305 MAPSYMFLAGS=
307 RC=rc
308 RCFLAGS=-r -DWIN32 -fo$@ $(RCFILES)
309 RCLINK=rc
310 RCLINKFLAGS=
311 RCSETVERSION=
314 DLLPOSTFIX=mi
315 PCHPOST=.pch
317 CSC*=$(FLIPCMD) csc
318 VBC*=vbc
320 ADVAPI32LIB=advapi32.lib
321 SHELL32LIB=shell32.lib
322 GDI32LIB=gdi32.lib
323 OLE32LIB=ole32.lib
324 OLEAUT32LIB=oleaut32.lib
325 UUIDLIB=uuid.lib
326 WINSPOOLLIB=winspool.lib
327 IMM32LIB=imm32.lib
328 VERSIONLIB=version.lib
329 WINMMLIB=winmm.lib
330 WSOCK32LIB=wsock32.lib
331 MPRLIB=mpr.lib
332 WS2_32LIB=ws2_32.lib
333 KERNEL32LIB=kernel32.lib
334 USER32LIB=user32.lib
335 COMDLG32LIB=comdlg32.lib
336 COMCTL32LIB=comctl32.lib
337 CRYPT32LIB=crypt32.lib
338 GDIPLUSLIB=gdiplus.lib
339 DBGHELPLIB=dbghelp.lib
340 MSILIB=msi.lib
341 DDRAWLIB=ddraw.lib
342 SHLWAPILIB=shlwapi.lib
343 URLMONLIB=urlmon.lib
344 UNICOWSLIB=unicows.lib
345 WININETLIB=wininet.lib
346 OLDNAMESLIB=oldnames.lib
347 MSIMG32LIB=msimg32.lib