update dev300-m57
[ooovba.git] / solenv / inc / wntmsci11.mk
blob6eac576a91b375d52e6d53260d4d44a229a38cc8
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: wntmsci11.mk,v $
11 # $Revision: 1.25 $
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) == WNTMSCI11 and WNTMSCI12
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 == 11
76 # disable "warning C4675: resolved overload was found by argument-dependent
77 # lookup":
78 # -wd4251 -wd4275 -wd4290 -wd4675 -wd4786 -wd4800
79 CFLAGS+=-Zm500 -Zc:forScope,wchar_t- -GR
80 CFLAGS+=-c -nologo -Gs $(NOLOGO)
82 CDEFS+= -D_X86_=1 -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_NON_CONFORMING_SWPRINTFS
84 .IF "$(product)" != ""
85 CFLAGS+= -Gy
86 .ENDIF # "$(product)" != ""
88 .IF "$(bndchk)" == ""
89 .IF "$(VC_STANDARD)"==""
90 CFLAGS+= -Ob1
91 .ENDIF # "$(VC_STANDARD)"==""
92 .ENDIF
94 # flags to enable build with symbols; required for crashdump feature
95 #CFLAGSENABLESYMBOLS=-Zi -Fd$(MISC)$/_ooo_st_$(TARGET).PDB
96 CFLAGSENABLESYMBOLS=-Z7 -Yd
98 .IF "$(bndchk)" != ""
99 .IF "$(debug)" == ""
100 CFLAGS+= -Z7
101 .ENDIF
102 .ENDIF
104 .IF "$(truetime)" != ""
105 .IF "$(debug)" == ""
106 CFLAGS+= -Z7
107 .ENDIF
108 .ENDIF
110 .IF "$(FULL_DESK)"!=""
111 CDEFS+=-DFULL_DESK
112 RSCDEFS+=-DFULL_DESK
113 .ENDIF
115 CFLAGSEXCEPTIONS=-EHa
116 CFLAGS_NO_EXCEPTIONS=
118 # with the current debug switches PCH won't work
119 # anyway. so keep the existing .pch intact and don't
120 # touch it
121 .IF "$(debug)"!=""
122 ENABLE_PCH:=
123 .ENDIF "$(debug)"!=""
125 CFLAGS_CREATE_PCH=-I$(INCPCH) -Fo$(SLO)$/pchname.obj -Ycprecompiled_$(PRJNAME).hxx -DPRECOMPILED_HEADERS
126 CFLAGS_USE_PCH=-I$(INCPCH) -Yuprecompiled_$(PRJNAME).hxx -Fp$(SLO)$/pch/precompiled_$(PRJNAME).hxx$(PCHPOST) -DPRECOMPILED_HEADERS
127 CFLAGS_USE_EXCEPTIONS_PCH=-I$(INCPCH) -Yuprecompiled_$(PRJNAME).hxx -Fp$(SLO)$/pch_ex/precompiled_$(PRJNAME).hxx$(PCHPOST) -DPRECOMPILED_HEADERS
128 .IF "$(CALL_CDECL)"=="TRUE"
129 CFLAGSCALL=-Gd
130 .ELSE # "$(CALL_CDECL)"=="TRUE"
131 CFLAGSCALL=-Gz
132 .ENDIF # "$(CALL_CDECL)"=="TRUE"
134 CFLAGSCC=$(ARCH_FLAGS)
135 .IF "$(DYNAMIC_CRT)"!=""
136 CDEFSSLOMT+=-DWIN32 -D_MT -D_DLL
137 CDEFSSLOMT+=-DWIN32 -D_MT -D_DLL
138 .IF "$(NO_DYNAMIC_OBJ)"==""
139 CDEFSOBJMT+=-DWIN32 -D_MT -D_DLL
140 CDEFSOBJMT+=-DWIN32 -D_MT -D_DLL
141 .ELSE
142 CDEFSOBJMT+=-DWIN32 -D_MT
143 CDEFSOBJMT+=-DWIN32 -D_MT
144 .ENDIF # "$(NO_DYNAMIC_OBJ)"==""
145 .ELSE
146 CDEFSSLOMT+=-DWIN32 -D_MT
147 CDEFSSLOMT+=-DWIN32 -D_MT
148 CDEFSOBJMT+=-DWIN32 -D_MT
149 CDEFSOBJMT+=-DWIN32 -D_MT
150 .ENDIF # "$(DYNAMIC_CRT)"!=""
152 CFLAGSPROF=-Gh -Fd$(MISC)$/$(@:b).pdb
153 CFLAGSDEBUG=-Zi -Fd$(MISC)$/$(@:b).pdb
154 CFLAGSDBGUTIL=
155 .IF "$(VC_STANDARD)"==""
156 CFLAGSOPT=-Oxs -Oy-
157 CFLAGSNOOPT=-Od
158 .ELSE # "$(VC_STANDARD)"==""
159 CFLAGSOPT=
160 CFLAGSNOOPT=
161 .ENDIF # "$(VC_STANDARD)"==""
162 CFLAGSOUTOBJ=-Fo
164 # For C and C++, certain warnings are disabled globally, as they result in
165 # spurious warnings and are hard or impossible to workaround:
166 # - "warning C4061: enumerate in switch of enum is not explicitly handled by a
167 # case label",
168 # - "warning C4127: conditional expression is constant",
169 # - "warning C4191: unsafe conversion from function type to function type",
170 # - "warning C4217: member template functions cannot be used for copy-assignment
171 # or copy-construction",
172 # - "warning C4250: 'class1' : inherits 'class2::member' via dominance",
173 # - "warning C4355: 'this' used in base member initializer list",
174 # - "warning C4511: copy constructor could not be generated",
175 # - "warning C4512: assignment operator could not be generated",
176 # - "warning C4514: unreferenced inline function has been removed",
177 # - "warning C4611: interaction between '_setjmp' and C++ object destruction is
178 # non-portable",
179 # - "warning C4625: copy constructor could not be generated because a base class
180 # copy constructor is inaccessible",
181 # - "warning C4626: assignment operator could not be generated because a base
182 # class assignment operator is inaccessible",
183 # - "warning C4675: resolved overload was found by argument-dependent lookup",
184 # - "warning C4710: function not inlined",
185 # - "warning C4711: function selected for automatic inline expansion",
186 # - "warning C4820: padding added after member".
187 # - "warning C4503: 'identifier' : decorated name length exceeded, name was truncated"
188 # (http://msdn2.microsoft.com/en-us/library/074af4b6.aspx)
189 # For C, certain warnings from system headers (stdlib.h etc.) have to be
190 # disabled globally (for C++, this is not necessary, as the system headers are
191 # wrapped by STLport):
192 # - "warning C4255: no function prototype given: converting
193 # '()' to '(void)'".
194 # - "warning C4365: conversion from ... to ... signed/unsigned mismatch"
196 CFLAGSWARNCXX=-Wall -wd4061 -wd4127 -wd4191 -wd4217 -wd4250 -wd4251 -wd4275 \
197 -wd4290 -wd4294 -wd4355 -wd4511 -wd4512 -wd4514 -wd4611 -wd4625 -wd4626 \
198 -wd4640 -wd4675 -wd4710 -wd4711 -wd4786 -wd4800 -wd4820 -wd4503 -wd4619 \
199 -wd4365 -wd4668 -wd4738 -wd4826 -wd4350 -wd4505 -wd4692 -wd4189 -wd4005
200 CFLAGSWARNCC=$(CFLAGSWARNCXX) -wd4255
201 CFLAGSWALLCC=$(CFLAGSWARNCC)
202 CFLAGSWALLCXX=$(CFLAGSWARNCXX)
203 CFLAGSWERRCC=-WX
205 # Once all modules on this platform compile without warnings, set
206 # COMPILER_WARN_ERRORS=TRUE here instead of setting MODULES_WITH_WARNINGS (see
207 # settings.mk):
208 MODULES_WITH_WARNINGS := \
209 fpicker \
210 soldep
212 CDEFS+=-DSTLPORT_VERSION=400 -D_MT
213 .IF "$(COMEX)" == "11"
214 CDEFS+=-DWINVER=0x0400 -D_WIN32_IE=0x0400
215 _VC_MANIFEST_BASENAME=__VC80
216 .ELSE
217 CDEFS+=-DWINVER=0x0500 -D_WIN32_IE=0x0500
218 _VC_MANIFEST_BASENAME=__VC90
219 .ENDIF
221 LINK=link $(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 -INCREMENTAL:YES -DEBUG
230 MAPFILE=
231 _VC_MANIFEST_INC=1
232 .ELSE # "$(linkinc)" != ""
233 _VC_MANIFEST_INC=0
234 .IF "$(PRODUCT)"!="full"
235 LINKFLAGS+= -NODEFAULTLIB -DEBUG
236 .ELSE # "$(PRODUCT)"!="full"
237 LINKFLAGS+= -NODEFAULTLIB -RELEASE -DEBUG -INCREMENTAL:NO
238 .ENDIF # "$(PRODUCT)"!="full"
239 MAPFILE=-out:$$@
240 .ENDIF # "$(linkinc)" != ""
242 .IF "$(bndchk)" != ""
243 LINK=nmlink $(COMMENTFLAG) $(NOLOGO) /MACHINE:IX86
244 LINKFLAGS=-NODEFAULTLIB -DEBUG
245 .ENDIF
247 .IF "$(truetime)" != ""
248 LINK=nmlink /NMttOn $(COMMENTFLAG) $(NOLOGO) /MACHINE:IX86
249 LINKFLAGS=-NODEFAULTLIB -DEBUG
250 .ENDIF
252 .IF "$(COMEX)" == "11"
253 LINKFLAGSAPPGUI=/SUBSYSTEM:WINDOWS,4.0
254 LINKFLAGSSHLGUI=/SUBSYSTEM:WINDOWS,4.0 /DLL
255 .ELSE
256 LINKFLAGSAPPGUI=/SUBSYSTEM:WINDOWS
257 LINKFLAGSSHLGUI=/SUBSYSTEM:WINDOWS /DLL
258 .ENDIF # "$(COMEX)" == "11"
259 LINKFLAGSAPPCUI=/SUBSYSTEM:CONSOLE /BASE:0x1b000000
260 LINKFLAGSSHLCUI=/SUBSYSTEM:CONSOLE /DLL
261 LINKFLAGSTACK=/STACK:
262 LINKFLAGSPROF=/DEBUG:mapped,partial /DEBUGTYPE:coff cap.lib
263 LINKFLAGSWST=/DEBUG:mapped,partial /DEBUGTYPE:coff wst.lib /NODEFAULTLIB
264 LINKFLAGSDEBUG=-DEBUG
265 LINKFLAGSOPT=
267 UWINAPILIB*=uwinapi.lib
268 .IF "$(DYNAMIC_CRT)"!=""
269 .IF "$(USE_STLP_DEBUG)" != ""
270 LIBCMT=msvcrtd.lib
271 .ELSE # "$(USE_STLP_DEBUG)" != ""
272 LIBCMT=msvcrt.lib
273 .ENDIF # "$(USE_STLP_DEBUG)" != ""
274 .ELSE # "$(DYNAMIC_CRT)"!=""
275 .IF "$(USE_STLP_DEBUG)" != ""
276 LIBCMT=libcmtd.lib
277 CDEFS+=-D_DEBUG
278 .ELSE # "$(USE_STLP_DEBUG)" != ""
279 LIBCMT=libcmt.lib
280 .ENDIF # "$(USE_STLP_DEBUG)" != ""
281 .ENDIF # "$(DYNAMIC_CRT)"!=""
283 STDOBJVCL=$(L)$/salmain.obj
284 STDOBJGUI=
285 STDSLOGUI=
286 STDOBJCUI=
287 STDSLOCUI=
289 STDLIBGUIMT=$(LIBCMT) $(UWINAPILIB) kernel32.lib user32.lib oldnames.lib
290 STDLIBCUIMT=$(LIBCMT) $(UWINAPILIB) kernel32.lib user32.lib oldnames.lib
291 STDSHLGUIMT=$(LIBCMT) $(UWINAPILIB) kernel32.lib user32.lib oldnames.lib
292 STDSHLCUIMT=$(LIBCMT) $(UWINAPILIB) kernel32.lib user32.lib oldnames.lib
294 .IF "$(USE_STLP_DEBUG)" != ""
295 LIBSTLPORT=stlport_vc71_stldebug.lib
296 LIBSTLPORTST=stlport_vc71_stldebug_static.lib
297 .ELSE
298 LIBSTLPORT=stlport_vc71.lib
299 LIBSTLPORTST=stlport_vc71_static.lib
300 .ENDIF
302 .IF "$(PROF_EDITION)" == ""
303 ATL_INCLUDE*=$(COMPATH)$/PlatformSDK$/include$/atl
304 ATL_LIB*=$(COMPATH)$/atlmfc$/lib
305 MFC_INCLUDE*=$(COMPATH)$/PlatformSDK$/include$/mfc
306 MFC_LIB*=$(COMPATH)$/atlmfc$/lib
307 .ELSE
308 ATL_INCLUDE*=$(COMPATH)$/atlmfc$/include
309 ATL_LIB*=$(COMPATH)$/atlmfc$/lib
310 MFC_INCLUDE*=$(COMPATH)$/atlmfc$/include
311 MFC_LIB*=$(COMPATH)$/atlmfc$/lib
312 .ENDIF
314 LIBMGR=lib $(NOLOGO)
315 IMPLIB=lib
316 LIBFLAGS=
318 IMPLIBFLAGS=-machine:IX86
320 MAPSYM=
321 MAPSYMFLAGS=
323 RC=rc
324 RCFLAGS=-r -DWIN32 -fo$@ $(RCFILES)
325 RCLINK=rc
326 RCLINKFLAGS=
327 RCSETVERSION=
330 DLLPOSTFIX=mi
331 PCHPOST=.pch
333 CSC*=$(FLIPCMD) csc
334 VBC*=vbc
336 ADVAPI32LIB=advapi32.lib
337 SHELL32LIB=shell32.lib
338 GDI32LIB=gdi32.lib
339 OLE32LIB=ole32.lib
340 OLEAUT32LIB=oleaut32.lib
341 UUIDLIB=uuid.lib
342 WINSPOOLLIB=winspool.lib
343 IMM32LIB=imm32.lib
344 VERSIONLIB=version.lib
345 WINMMLIB=winmm.lib
346 WSOCK32LIB=wsock32.lib
347 MPRLIB=mpr.lib
348 WS2_32LIB=ws2_32.lib
349 KERNEL32LIB=kernel32.lib
350 USER32LIB=user32.lib
351 COMDLG32LIB=comdlg32.lib
352 COMCTL32LIB=comctl32.lib
353 CRYPT32LIB=crypt32.lib
354 GDIPLUSLIB=gdiplus.lib
355 DBGHELPLIB=dbghelp.lib
356 MSILIB=msi.lib
357 DDRAWLIB=ddraw.lib
358 SHLWAPILIB=shlwapi.lib
359 URLMONLIB=urlmon.lib
360 UNICOWSLIB=unicows.lib
361 WININETLIB=wininet.lib
362 OLDNAMESLIB=oldnames.lib
363 MSIMG32LIB=msimg32.lib