VirtualBox

source: vbox/trunk/src/VBox/Additions/WINNT/Graphics/Wine/Makefile.kmk@ 41418

Last change on this file since 41418 was 41418, checked in by vboxsync, 13 years ago

wine & crOpenGL: backdoor logging for wine and enhancements for crOpenGL

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 11.3 KB
Line 
1# $Id: Makefile.kmk 41418 2012-05-23 14:44:06Z vboxsync $
2## @file
3# Makefile for the Wine D3D related dlls for VirtualBox.
4#
5
6#
7# Copyright (C) 2009 Oracle Corporation
8#
9# This file is part of VirtualBox Open Source Edition (OSE), as
10# available from http://www.virtualbox.org. This file is free software;
11# you can redistribute it and/or modify it under the terms of the GNU
12# General Public License (GPL) as published by the Free Software
13# Foundation, in version 2 as it comes in the "COPYING" file of the
14# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
15# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
16#
17
18
19SUB_DEPTH = ../../../../../..
20include $(KBUILD_PATH)/subheader.kmk
21
22# @todo: get rid of libwine completely (currently used for xpdm.x86 builds only)
23DLLS.x86 += libWine
24
25libWine_TEMPLATE = VBOXGUESTR3NPDLL
26libWine_DEFS = __WINESRC__ WINE_UNICODE_API="" _REENTRANT WINE_NOWINSOCK USE_WIN32_OPENGL __i386__ \
27 DLLDIR=\"\" \
28 BINDIR=\"\" \
29 LIB_TO_BINDIR=\"\" \
30 LIB_TO_DLLDIR=\"\" \
31 BIN_TO_DLLDIR=\"\" \
32 LIB_TO_DATADIR=\"\" \
33 BIN_TO_DATADIR=\"\"
34libWine_INCS := $(PATH_SUB_CURRENT)/include
35libWine_SOURCES := \
36 libWine/wine.def \
37 libWine/casemap.c \
38 libWine/collation.c \
39 libWine/compose.c \
40 libWine/config.c \
41 libWine/cptable.c \
42 libWine/debug.c \
43 libWine/fold.c \
44 libWine/ldt.c \
45 libWine/loader.c \
46 libWine/mbtowc.c \
47 libWine/mmap.c \
48 libWine/port.c \
49 libWine/sortkey.c \
50 libWine/string.c \
51 libWine/utf8.c \
52 libWine/wctomb.c \
53 libWine/wctype.c \
54 libWine/c_037.c \
55 libWine/c_424.c \
56 libWine/c_437.c \
57 libWine/c_500.c \
58 libWine/c_737.c \
59 libWine/c_775.c \
60 libWine/c_850.c \
61 libWine/c_852.c \
62 libWine/c_855.c \
63 libWine/c_856.c \
64 libWine/c_857.c \
65 libWine/c_860.c \
66 libWine/c_861.c \
67 libWine/c_862.c \
68 libWine/c_863.c \
69 libWine/c_864.c \
70 libWine/c_865.c \
71 libWine/c_866.c \
72 libWine/c_869.c \
73 libWine/c_874.c \
74 libWine/c_875.c \
75 libWine/c_878.c \
76 libWine/c_932.c \
77 libWine/c_936.c \
78 libWine/c_949.c \
79 libWine/c_950.c \
80 libWine/c_1006.c \
81 libWine/c_1026.c \
82 libWine/c_1250.c \
83 libWine/c_1251.c \
84 libWine/c_1252.c \
85 libWine/c_1253.c \
86 libWine/c_1254.c \
87 libWine/c_1255.c \
88 libWine/c_1256.c \
89 libWine/c_1257.c \
90 libWine/c_1258.c \
91 libWine/c_1361.c \
92 libWine/c_10000.c \
93 libWine/c_10006.c \
94 libWine/c_10007.c \
95 libWine/c_10029.c \
96 libWine/c_10079.c \
97 libWine/c_10081.c \
98 libWine/c_20127.c \
99 libWine/c_20866.c \
100 libWine/c_20932.c \
101 libWine/c_21866.c \
102 libWine/c_28591.c \
103 libWine/c_28592.c \
104 libWine/c_28593.c \
105 libWine/c_28594.c \
106 libWine/c_28595.c \
107 libWine/c_28596.c \
108 libWine/c_28597.c \
109 libWine/c_28598.c \
110 libWine/c_28599.c \
111 libWine/c_28600.c \
112 libWine/c_28603.c \
113 libWine/c_28604.c \
114 libWine/c_28605.c \
115 libWine/c_28606.c \
116 libWine/version.c
117
118DLLS += wined3d
119# @todo: all .amd64 and .x86 stuff below is to get rid of libwine for amd64
120# and keep it for .x86 to avoid regressions
121# this should be generalized in the future
122wined3d_TEMPLATE = VBOXGUESTR3NPDLL
123wined3d_DEFS = __WINESRC__ WINE_UNICODE_API="" _REENTRANT WINE_NOWINSOCK USE_WIN32_OPENGL _USE_MATH_DEFINES\
124 DLLDIR=\"\" \
125 BINDIR=\"\" \
126 LIB_TO_BINDIR=\"\" \
127 LIB_TO_DLLDIR=\"\" \
128 BIN_TO_DLLDIR=\"\" \
129 LIB_TO_DATADIR=\"\" \
130 BIN_TO_DATADIR=\"\"
131if "$(KBUILD_TYPE)" != "debug" || defined(VBOX_WINE_NO_DEBUG_MSGS)
132 wined3d_DEFS += WINE_NO_DEBUG_MSGS
133endif
134wined3d_DEFS += VBOX_WINE_WITH_SINGLE_SWAPCHAIN_CONTEXT
135wined3d_DEFS += VBOX_WINE_WITHOUT_LIBWINE
136wined3d_INCS := vbox/libWineStub/include
137wined3d_SOURCES := \
138 wined3d/arb_program_shader.c \
139 wined3d/ati_fragment_shader.c \
140 wined3d/basetexture.c \
141 wined3d/buffer.c \
142 wined3d/clipper.c \
143 wined3d/context.c \
144 wined3d/cubetexture.c \
145 wined3d/device.c \
146 wined3d/directx.c \
147 wined3d/drawprim.c \
148 wined3d/gl_compat.c \
149 wined3d/glsl_shader.c \
150 wined3d/nvidia_texture_shader.c \
151 wined3d/palette.c \
152 wined3d/query.c \
153 wined3d/resource.c \
154 wined3d/shader.c \
155 wined3d/shader_sm1.c \
156 wined3d/shader_sm4.c \
157 wined3d/state.c \
158 wined3d/stateblock.c \
159 wined3d/surface_base.c \
160 wined3d/surface.c \
161 wined3d/surface_gdi.c \
162 wined3d/swapchain.c \
163 wined3d/swapchain_gdi.c \
164 wined3d/swapchain_base.c \
165 wined3d/texture.c \
166 wined3d/utils.c \
167 wined3d/vertexdeclaration.c \
168 wined3d/view.c \
169 wined3d/volume.c \
170 wined3d/volumetexture.c \
171 wined3d/wined3d_main.c \
172 wined3d/vboxext.c \
173 vbox/libWineStub/debug.c \
174 wined3d/wined3d.def
175wined3d_SDKS = WINDDKWLH
176# wined3d now using iprt/asm.h, which includes iprt/assert.h, so iprt is required
177wined3d_LIBS += \
178 $(VBOX_LIB_IPRT_GUEST_R3) \
179 $(VBOX_LIB_VBGL_R3)
180wined3d_DEFS += VBOX_WINE_WITH_IPRT
181
182ifdef VBOX_WITH_WDDM
183DLLS += wined3dwddm
184wined3dwddm_EXTENDS = wined3d
185 if defined(VBOX_SIGNING_MODE) && defined(VBOX_WITH_WDDM)
186 wined3dwddm_INSTTYPE.win = none
187 wined3dwddm_DEBUG_INSTTYPE.win = both
188 endif
189wined3dwddm_INCS = $(wined3d_INCS) \
190 $(PATH_ROOT)/src/VBox/Additions/WINNT/Graphics/Video/disp/wddm
191wined3dwddm_DEFS = $(subst VBOX_WINE_WITH_SINGLE_SWAPCHAIN_CONTEXT,,$(wined3d_DEFS))
192wined3dwddm_DEFS += VBOX_WITH_WDDM VBOX_WINE_WITH_SINGLE_CONTEXT IN_VBOXLIBWINE
193wined3dwddm_SOURCES = $(subst wined3d.def,wined3dwddm.def,$(wined3d_SOURCES)) vbox/VBoxDbgGl.c
194wined3dwddm_LIBS += $(wined3d_LIBS)\
195 $(VBOX_PATH_ADDITIONS_LIB)/VBoxDispMpLogger$(VBOX_SUFF_LIB) \
196 $(VBOX_PATH_ADDITIONS_LIB)/VBoxCrHgsmi$(VBOX_SUFF_LIB)
197
198DLLS.amd64 += wined3dwddm-x86
199wined3dwddm-x86_EXTENDS = wined3dwddm
200wined3dwddm-x86_BLD_TRG_ARCH = x86
201# wined3d now using iprt/asm.h, which includes iprt/assert.h, so iprt is required
202wined3dwddm-x86_LIBS = \
203 $(VBOX_LIB_IPRT_GUEST_R3_X86) \
204 $(VBOX_LIB_VBGL_R3_X86)
205wined3dwddm-x86_LIBS += $(VBOX_PATH_ADDITIONS_LIB)/VBoxDispMpLogger-x86$(VBOX_SUFF_LIB) \
206 $(VBOX_PATH_ADDITIONS_LIB)/VBoxCrHgsmi-x86$(VBOX_SUFF_LIB)
207wined3dwddm-x86_DEFS = $(wined3dwddm_DEFS) VBOX_WDDM_WOW64
208endif # ifdef VBOX_WITH_WDDM
209
210DLLS += VBoxD3D8
211VBoxD3D8_TEMPLATE = VBOXGUESTR3NPDLL
212VBoxD3D8_DEFS = __WINESRC__ WINE_UNICODE_API="" _REENTRANT WINE_NOWINSOCK USE_WIN32_OPENGL _USE_MATH_DEFINES\
213 DLLDIR=\"\" \
214 BINDIR=\"\" \
215 LIB_TO_BINDIR=\"\" \
216 LIB_TO_DLLDIR=\"\" \
217 BIN_TO_DLLDIR=\"\" \
218 LIB_TO_DATADIR=\"\" \
219 BIN_TO_DATADIR=\"\"
220if "$(KBUILD_TYPE)" != "debug" || defined(VBOX_WINE_NO_DEBUG_MSGS)
221 VBoxD3D8_DEFS += WINE_NO_DEBUG_MSGS
222endif
223VBoxD3D8_DEFS += VBOX_WINE_WITHOUT_LIBWINE
224VBoxD3D8_INCS := vbox/libWineStub/include
225VBoxD3D8_SOURCES := \
226 d3d8/cubetexture.c \
227 d3d8/d3d8_main.c \
228 d3d8/device.c \
229 d3d8/directx.c \
230 d3d8/indexbuffer.c \
231 d3d8/pixelshader.c \
232 d3d8/surface.c \
233 d3d8/swapchain.c \
234 d3d8/texture.c \
235 d3d8/vertexbuffer.c \
236 d3d8/vertexdeclaration.c \
237 d3d8/vertexshader.c \
238 d3d8/volume.c \
239 d3d8/volumetexture.c \
240 vbox/libWineStub/debug.c \
241 d3d8/d3d8.def
242VBoxD3D8_LIBS = \
243 $(PATH_STAGE_LIB)/wined3d$(VBOX_SUFF_LIB)
244VBoxD3D8_SDKS = WINDDKWLH
245ifdef VBOX_WINE_WITH_IPRT
246VBoxD3D8_LIBS += \
247 $(VBOX_LIB_IPRT_GUEST_R3) \
248 $(VBOX_LIB_VBGL_R3)
249VBoxD3D8_DEFS += VBOX_WINE_WITH_IPRT
250endif
251
252DLLS += VBoxD3D9
253
254VBoxD3D9_TEMPLATE = VBOXGUESTR3NPDLL
255VBoxD3D9_DEFS = __WINESRC__ WINE_UNICODE_API="" _REENTRANT WINE_NOWINSOCK USE_WIN32_OPENGL _USE_MATH_DEFINES\
256 DLLDIR=\"\" \
257 BINDIR=\"\" \
258 LIB_TO_BINDIR=\"\" \
259 LIB_TO_DLLDIR=\"\" \
260 BIN_TO_DLLDIR=\"\" \
261 LIB_TO_DATADIR=\"\" \
262 BIN_TO_DATADIR=\"\"
263if "$(KBUILD_TYPE)" != "debug" || defined(VBOX_WINE_NO_DEBUG_MSGS)
264 VBoxD3D9_DEFS += WINE_NO_DEBUG_MSGS
265endif
266VBoxD3D9_DEFS += VBOX_WINE_WITHOUT_LIBWINE
267VBoxD3D9_INCS := vbox/libWineStub/include
268VBoxD3D9_SOURCES := \
269 d3d9/cubetexture.c \
270 d3d9/d3d9_main.c \
271 d3d9/device.c \
272 d3d9/directx.c \
273 d3d9/indexbuffer.c \
274 d3d9/pixelshader.c \
275 d3d9/query.c \
276 d3d9/stateblock.c \
277 d3d9/surface.c \
278 d3d9/swapchain.c \
279 d3d9/texture.c \
280 d3d9/vertexbuffer.c \
281 d3d9/vertexdeclaration.c \
282 d3d9/vertexshader.c \
283 d3d9/volume.c \
284 d3d9/volumetexture.c \
285 vbox/libWineStub/debug.c \
286 d3d9/d3d9xpdm.def
287VBoxD3D9_LIBS = \
288 $(PATH_STAGE_LIB)/wined3d$(VBOX_SUFF_LIB)
289VBoxD3D9_SDKS = WINDDKWLH
290ifdef VBOX_WINE_WITH_IPRT
291VBoxD3D9_LIBS += \
292 $(VBOX_LIB_IPRT_GUEST_R3) \
293 $(VBOX_LIB_VBGL_R3)
294VBoxD3D9_DEFS += VBOX_WINE_WITH_IPRT
295endif
296
297ifdef VBOX_WITH_WDDM
298DLLS += VBoxD3D9wddm
299VBoxD3D9wddm_EXTENDS = VBoxD3D9
300 if defined(VBOX_SIGNING_MODE) && defined(VBOX_WITH_WDDM)
301 VBoxD3D9wddm_INSTTYPE = none
302 VBoxD3D9wddm_DEBUG_INSTTYPE = both
303 endif
304VBoxD3D9wddm_INCS = $(VBoxD3D9_INCS) \
305 $(PATH_ROOT)/src/VBox/Additions/WINNT/Graphics/Video/disp/wddm
306VBoxD3D9wddm_DEFS += $(VBoxD3D9_DEFS) VBOX_WITH_WDDM VBOX_WINE_WITHOUT_LIBWINE IN_VBOXWINEEX
307VBoxD3D9wddm_SOURCES = $(subst d3d9xpdm.def,d3d9wddm.def,$(VBoxD3D9_SOURCES))
308VBoxD3D9wddm_LIBS = $(subst $(PATH_STAGE_LIB)/wined3d$(VBOX_SUFF_LIB),$(PATH_STAGE_LIB)/wined3dwddm$(VBOX_SUFF_LIB),$(VBoxD3D9_LIBS))
309VBoxD3D9wddm_LIBS += $(VBOX_PATH_ADDITIONS_LIB)/VBoxDispMpLogger$(VBOX_SUFF_LIB) \
310 $(VBOX_PATH_ADDITIONS_LIB)/VBoxCrHgsmi$(VBOX_SUFF_LIB)
311
312DLLS.amd64 += VBoxD3D9wddm-x86
313VBoxD3D9wddm-x86_EXTENDS = VBoxD3D9wddm
314VBoxD3D9wddm-x86_BLD_TRG_ARCH = x86
315VBoxD3D9wddm-x86_LIBS = $(PATH_STAGE_LIB)/wined3dwddm-x86$(VBOX_SUFF_LIB)
316VBoxD3D9wddm-x86_DEFS = $(VBoxD3D9wddm_DEFS) VBOX_WDDM_WOW64
317 ifdef VBOX_WINE_WITH_IPRT
318VBoxD3D9wddm-x86_LIBS += \
319 $(VBOX_LIB_IPRT_GUEST_R3_X86) \
320 $(VBOX_LIB_VBGL_R3_X86)
321 endif
322VBoxD3D9wddm-x86_LIBS += $(VBOX_PATH_ADDITIONS_LIB)/VBoxDispMpLogger-x86$(VBOX_SUFF_LIB) \
323 $(VBOX_PATH_ADDITIONS_LIB)/VBoxCrHgsmi-x86$(VBOX_SUFF_LIB)
324endif # ifdef VBOX_WITH_WDDM
325
326DLLS += d3d8
327d3d8_TEMPLATE = VBOXGUESTR3NPDLL
328d3d8_DEFS.x86 = __i386__
329d3d8_INCS.x86 := $(PATH_SUB_CURRENT)/include
330d3d8_SOURCES = \
331 switcher/d3d8_main.c \
332 switcher/sw_common.c \
333 switcher/sw_d3d8.def \
334 switcher/d3d8.rc
335d3d8_SDKS.amd64 = WINDDKWLH
336ifdef VBOX_WINE_WITH_IPRT
337d3d8_LIBS += \
338 $(VBOX_LIB_IPRT_GUEST_R3) \
339 $(VBOX_LIB_VBGL_R3)
340d3d8_DEFS += VBOX_WINE_WITH_IPRT
341endif
342
343DLLS += d3d9
344d3d9_TEMPLATE = VBOXGUESTR3NPDLL
345d3d9_DEFS.x86 = __i386__
346d3d9_INCS.x86 := $(PATH_SUB_CURRENT)/include
347d3d9_SOURCES = \
348 switcher/d3d9_main.c \
349 switcher/sw_common.c \
350 switcher/d3d9.rc
351d3d9_SOURCES.x86 = \
352 switcher/sw_d3d9.def
353d3d9_SOURCES.amd64 = \
354 switcher/sw_d3d9xpdm.def
355d3d9_SDKS.amd64 = WINDDKWLH
356ifdef VBOX_WINE_WITH_IPRT
357d3d9_LIBS += \
358 $(VBOX_LIB_IPRT_GUEST_R3) \
359 $(VBOX_LIB_VBGL_R3)
360d3d9_DEFS += VBOX_WINE_WITH_IPRT
361endif
362
363include $(KBUILD_PATH)/subfooter.kmk
Note: See TracBrowser for help on using the repository browser.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette