update dev300-m58
[ooovba.git] / solenv / inc / wntmsci11.mk
blobae9e6c54287a7b3a90f145ad90df1d18086374ea
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 soldep
211 CDEFS+=-DSTLPORT_VERSION=400 -D_MT
212 .IF "$(COMEX)" == "11"
213 CDEFS+=-DWINVER=0x0400 -D_WIN32_IE=0x0400
214 _VC_MANIFEST_BASENAME=__VC80
215 .ELSE
216 CDEFS+=-DWINVER=0x0500 -D_WIN32_IE=0x0500
217 _VC_MANIFEST_BASENAME=__VC90
218 .ENDIF
220 LINK=link $(NOLOGO) /MACHINE:IX86
221 LINKOUTPUTFILTER= $(PIPEERROR) $(GREP) -v "LNK4197:"
222 .IF "$(PRODUCT)"!="full"
223 .ELSE
224 LINKFLAGS=/MAP /OPT:NOREF
225 .ENDIF
227 .IF "$(linkinc)" != ""
228 LINKFLAGS=-NODEFAULTLIB -INCREMENTAL:YES -DEBUG
229 MAPFILE=
230 _VC_MANIFEST_INC=1
231 .ELSE # "$(linkinc)" != ""
232 _VC_MANIFEST_INC=0
233 .IF "$(PRODUCT)"!="full"
234 LINKFLAGS+= -NODEFAULTLIB -DEBUG
235 .ELSE # "$(PRODUCT)"!="full"
236 LINKFLAGS+= -NODEFAULTLIB -RELEASE -DEBUG -INCREMENTAL:NO
237 .ENDIF # "$(PRODUCT)"!="full"
238 MAPFILE=-out:$$@
239 .ENDIF # "$(linkinc)" != ""
241 .IF "$(bndchk)" != ""
242 LINK=nmlink $(COMMENTFLAG) $(NOLOGO) /MACHINE:IX86
243 LINKFLAGS=-NODEFAULTLIB -DEBUG
244 .ENDIF
246 .IF "$(truetime)" != ""
247 LINK=nmlink /NMttOn $(COMMENTFLAG) $(NOLOGO) /MACHINE:IX86
248 LINKFLAGS=-NODEFAULTLIB -DEBUG
249 .ENDIF
251 .IF "$(COMEX)" == "11"
252 LINKFLAGSAPPGUI=/SUBSYSTEM:WINDOWS,4.0
253 LINKFLAGSSHLGUI=/SUBSYSTEM:WINDOWS,4.0 /DLL
254 .ELSE
255 LINKFLAGSAPPGUI=/SUBSYSTEM:WINDOWS
256 LINKFLAGSSHLGUI=/SUBSYSTEM:WINDOWS /DLL
257 .ENDIF # "$(COMEX)" == "11"
258 LINKFLAGSAPPCUI=/SUBSYSTEM:CONSOLE /BASE:0x1b000000
259 LINKFLAGSSHLCUI=/SUBSYSTEM:CONSOLE /DLL
260 LINKFLAGSTACK=/STACK:
261 LINKFLAGSPROF=/DEBUG:mapped,partial /DEBUGTYPE:coff cap.lib
262 LINKFLAGSWST=/DEBUG:mapped,partial /DEBUGTYPE:coff wst.lib /NODEFAULTLIB
263 LINKFLAGSDEBUG=-DEBUG
264 LINKFLAGSOPT=
266 UWINAPILIB*=uwinapi.lib
267 .IF "$(DYNAMIC_CRT)"!=""
268 .IF "$(USE_STLP_DEBUG)" != ""
269 LIBCMT=msvcrtd.lib
270 .ELSE # "$(USE_STLP_DEBUG)" != ""
271 LIBCMT=msvcrt.lib
272 .ENDIF # "$(USE_STLP_DEBUG)" != ""
273 .ELSE # "$(DYNAMIC_CRT)"!=""
274 .IF "$(USE_STLP_DEBUG)" != ""
275 LIBCMT=libcmtd.lib
276 CDEFS+=-D_DEBUG
277 .ELSE # "$(USE_STLP_DEBUG)" != ""
278 LIBCMT=libcmt.lib
279 .ENDIF # "$(USE_STLP_DEBUG)" != ""
280 .ENDIF # "$(DYNAMIC_CRT)"!=""
282 STDOBJVCL=$(L)/salmain.obj
283 STDOBJGUI=
284 STDSLOGUI=
285 STDOBJCUI=
286 STDSLOCUI=
288 STDLIBGUIMT=$(LIBCMT) $(UWINAPILIB) kernel32.lib user32.lib oldnames.lib
289 STDLIBCUIMT=$(LIBCMT) $(UWINAPILIB) kernel32.lib user32.lib oldnames.lib
290 STDSHLGUIMT=$(LIBCMT) $(UWINAPILIB) kernel32.lib user32.lib oldnames.lib
291 STDSHLCUIMT=$(LIBCMT) $(UWINAPILIB) kernel32.lib user32.lib oldnames.lib
293 .IF "$(USE_STLP_DEBUG)" != ""
294 LIBSTLPORT=stlport_vc71_stldebug.lib
295 LIBSTLPORTST=stlport_vc71_stldebug_static.lib
296 .ELSE
297 LIBSTLPORT=stlport_vc71.lib
298 LIBSTLPORTST=stlport_vc71_static.lib
299 .ENDIF
301 .IF "$(PROF_EDITION)" == ""
302 ATL_INCLUDE*=$(COMPATH)/PlatformSDK/include/atl
303 ATL_LIB*=$(COMPATH)/atlmfc/lib
304 MFC_INCLUDE*=$(COMPATH)/PlatformSDK/include/mfc
305 MFC_LIB*=$(COMPATH)/atlmfc/lib
306 .ELSE
307 ATL_INCLUDE*=$(COMPATH)/atlmfc/include
308 ATL_LIB*=$(COMPATH)/atlmfc/lib
309 MFC_INCLUDE*=$(COMPATH)/atlmfc/include
310 MFC_LIB*=$(COMPATH)/atlmfc/lib
311 .ENDIF
313 LIBMGR=lib $(NOLOGO)
314 IMPLIB=lib
315 LIBFLAGS=
317 IMPLIBFLAGS=-machine:IX86
319 MAPSYM=
320 MAPSYMFLAGS=
322 RC=rc
323 RCFLAGS=-r -DWIN32 -fo$@ $(RCFILES)
324 RCLINK=rc
325 RCLINKFLAGS=
326 RCSETVERSION=
329 DLLPOSTFIX=mi
330 PCHPOST=.pch
332 CSC*=$(FLIPCMD) csc
333 VBC*=vbc
335 ADVAPI32LIB=advapi32.lib
336 SHELL32LIB=shell32.lib
337 GDI32LIB=gdi32.lib
338 OLE32LIB=ole32.lib
339 OLEAUT32LIB=oleaut32.lib
340 UUIDLIB=uuid.lib
341 WINSPOOLLIB=winspool.lib
342 IMM32LIB=imm32.lib
343 VERSIONLIB=version.lib
344 WINMMLIB=winmm.lib
345 WSOCK32LIB=wsock32.lib
346 MPRLIB=mpr.lib
347 WS2_32LIB=ws2_32.lib
348 KERNEL32LIB=kernel32.lib
349 USER32LIB=user32.lib
350 COMDLG32LIB=comdlg32.lib
351 COMCTL32LIB=comctl32.lib
352 CRYPT32LIB=crypt32.lib
353 GDIPLUSLIB=gdiplus.lib
354 DBGHELPLIB=dbghelp.lib
355 MSILIB=msi.lib
356 DDRAWLIB=ddraw.lib
357 SHLWAPILIB=shlwapi.lib
358 URLMONLIB=urlmon.lib
359 UNICOWSLIB=unicows.lib
360 WININETLIB=wininet.lib
361 OLDNAMESLIB=oldnames.lib
362 MSIMG32LIB=msimg32.lib