VirtualBox

source: vbox/trunk/src/VBox/Additions/common/crOpenGL/Makefile.kmk@ 25555

Last change on this file since 25555 was 25555, checked in by vboxsync, 15 years ago

a-few-*.kmk: if1of have a space after the ',' to separate them from ifeq and ifneq. The sets are sorted alphabetically.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 18.9 KB
Line 
1# $Id: Makefile.kmk 25555 2009-12-22 11:05:18Z vboxsync $
2## @file
3# Sub-Makefile for the VirtualBox Guest OpenGL part
4#
5
6#
7# Copyright (C) 2008 Sun Microsystems, Inc.
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# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa
18# Clara, CA 95054 USA or visit http://www.sun.com if you need
19# additional information or have any questions.
20#
21
22SUB_DEPTH = ../../../../..
23include $(KBUILD_PATH)/subheader.kmk
24
25#
26# Target lists.
27#
28BLDDIRS += \
29 $(VBOX_PATH_CROGL_GENFILES)/
30
31DLLS.win += \
32 VBoxOGL \
33 VBoxOGLarrayspu \
34 VBoxOGLpassthroughspu \
35 VBoxOGLpackspu \
36 VBoxOGLfeedbackspu
37
38if1of ($(KBUILD_TARGET), linux solaris)
39DLLS += \
40 VBoxOGL \
41 VBoxOGLarrayspu \
42 VBoxOGLpassthroughspu \
43 VBoxOGLpackspu \
44 VBoxOGLfeedbackspu
45endif
46
47if1of ($(KBUILD_TARGET), linux solaris)
48 #VBoxOGL_DRI = 1
49 ifneq ($(KBUILD_TARGET),solaris) # No DRI on Solaris yet
50 VBoxOGL_FAKEDRI = 1
51 endif
52
53 # Only Solaris right now needs C stubs because I can't figure out how to
54 # generate the GOT based relocation ASM yet.
55 ifdef VBoxOGL_FAKEDRI
56 if1of ($(KBUILD_TARGET).$(KBUILD_TARGET_ARCH),solaris.x86 solaris.amd64 linux.x86)
57 VBOX_OGL_GLX_USE_CSTUBS = 1
58 endif
59 endif
60endif
61
62
63#
64# VBoxOGL
65#
66VBoxOGL_TEMPLATE = VBOXCROGLR3GUESTDLL
67VBoxOGL_INCS = .
68if1of ($(KBUILD_TARGET), linux solaris)
69 VBoxOGL_INCS += \
70 $(VBOX_PATH_X11_ROOT)/libXdamage-1.1 \
71 $(VBOX_PATH_X11_ROOT)/libXcomposite-0.4.0 \
72 $(VBOX_PATH_X11_ROOT)/libXfixes-4.0.3 \
73 $(VBOX_PATH_X11_ROOT)/damageproto-1.1.0 \
74 $(VBOX_PATH_X11_ROOT)/compositeproto-0.4 \
75 $(VBOX_PATH_X11_ROOT)/fixesproto-4.0 \
76 $(VBOX_PATH_X11_ROOT)/libx11-1.1.5-other \
77 $(VBOX_PATH_X11_ROOT)/1.3/xorg \
78 $(VBOX_MESA_INCS) \
79 $(PATH_ROOT)/src/VBox/Additions/x11/x11include/libdrm-2.4.13
80 VBoxOGL_DEFS += VBOX_NO_NATIVEGL
81endif
82
83ifdef VBoxOGL_DRI
84 VBoxOGL_DEFS += VBOXOGL_DRI IN_DRI_DRIVER
85else ifdef VBoxOGL_FAKEDRI
86 VBoxOGL_DEFS += VBOXOGL_FAKEDRI
87 ifdef VBOX_OGL_GLX_USE_CSTUBS
88 VBoxOGL_DEFS += VBOX_OGL_GLX_USE_CSTUBS
89 endif
90endif
91
92ifeq ($(KBUILD_TARGET),win)
93#fixme?, INTERMEDIATES.win ain't working
94 VBoxOGL_INTERMEDIATES += $(VBOX_PATH_CROGL_GENFILES)/cr_gl.h
95endif
96ifdef VBoxOGL_DRI
97 VBoxOGL_INTERMEDIATES += \
98 $(VBOX_PATH_CROGL_GENFILES)/cr_gl.h \
99 $(VBOX_PATH_CROGL_GENFILES)/DD_gl.h
100else ifdef VBoxOGL_FAKEDRI
101 VBoxOGL_INTERMEDIATES += \
102 $(VBOX_PATH_CROGL_GENFILES)/cr_gl.h
103endif
104VBoxOGL_SOURCES += \
105 load.c \
106 stub.c \
107 context.c \
108 $(VBOX_PATH_CROGL_GENFILES)/getprocaddress.c \
109 $(VBOX_PATH_CROGL_GENFILES)/NULLfuncs.c \
110 $(VBOX_PATH_CROGL_GENFILES)/tsfuncs.c
111
112if1of ($(KBUILD_TARGET), linux solaris)
113 VBoxOGL_SOURCES += \
114 glx.c \
115 xfont.c
116 ifdef VBOX_OGL_GLX_USE_CSTUBS
117 VBoxOGL_SOURCES += glx_c_exports.c
118 endif
119
120 ifdef VBoxOGL_DRI
121 VBoxOGL_SOURCES += \
122 $(VBOX_PATH_CROGL_GENFILES)/DD_gl.c \
123 dri_drv.c
124 VBoxOGL_SOURCES.linux += \
125 $(VBOX_PATH_CROGL_GENFILES)/linux_exports_dri.asm
126 VBoxOGL_SOURCES.solaris += \
127 $(VBOX_PATH_CROGL_GENFILES)/solaris_exports_dri.asm
128 else ifdef VBoxOGL_FAKEDRI
129 VBoxOGL_SOURCES += \
130 fakedri_drv.c
131 ifndef VBOX_OGL_GLX_USE_CSTUBS
132 VBoxOGL_SOURCES.solaris += \
133 $(VBOX_PATH_CROGL_GENFILES)/solaris_glxapi_exports.asm \
134 $(VBOX_PATH_CROGL_GENFILES)/solaris_exports_dri.asm
135 VBoxOGL_SOURCES.linux += \
136 $(VBOX_PATH_CROGL_GENFILES)/linux_glxapi_exports.asm \
137 $(VBOX_PATH_CROGL_GENFILES)/linux_exports_dri.asm
138 else
139 VBoxOGL_SOURCES.solaris += \
140 $(VBOX_PATH_CROGL_GENFILES)/solaris_exports.c
141 VBoxOGL_SOURCES.linux += \
142 $(VBOX_PATH_CROGL_GENFILES)/linux_exports.c
143 endif
144 else
145 VBoxOGL_SOURCES.linux += \
146 $(VBOX_PATH_CROGL_GENFILES)/linux_exports.asm
147 VBoxOGL_SOURCES.solaris += \
148 $(VBOX_PATH_CROGL_GENFILES)/solaris_exports.c
149 endif
150endif
151
152VBoxOGL_SOURCES.win = \
153 wgl.c \
154 icd_drv.c \
155 VBoxCROGL.rc \
156 $(VBOX_PATH_CROGL_GENFILES)/windows_exports.asm \
157 $(VBOX_PATH_CROGL_GENFILES)/cropengl.def
158VBoxOGL_CLEAN = \
159 $(VBOX_PATH_CROGL_GENFILES)/getprocaddress.c \
160 $(VBOX_PATH_CROGL_GENFILES)/NULLfuncs.c \
161 $(VBOX_PATH_CROGL_GENFILES)/tsfuncs.c
162VBoxOGL_CLEAN.linux += \
163 $(VBOX_PATH_CROGL_GENFILES)/linux_exports.asm
164VBoxOGL_CLEAN.solaris += \
165 $(VBOX_PATH_CROGL_GENFILES)/solaris_exports.c
166VBoxOGL_CLEAN.win = \
167 $(VBOX_PATH_CROGL_GENFILES)/windows_exports.asm \
168 $(VBOX_PATH_CROGL_GENFILES)/cropengl.def
169if1of ($(KBUILD_TARGET), linux solaris)
170 ifdef VBoxOGL_DRI
171 VBoxOGL_CLEAN += \
172 $(VBOX_PATH_CROGL_GENFILES)/cr_gl.h \
173 $(VBOX_PATH_CROGL_GENFILES)/DD_gl.h \
174 $(VBOX_PATH_CROGL_GENFILES)/DD_gl.c
175 else ifdef VBoxOGL_FAKEDRI
176 VBoxOGL_CLEAN += \
177 $(VBOX_PATH_CROGL_GENFILES)/cr_gl.h
178 VBoxOGL_CLEAN.linux += \
179 $(VBOX_PATH_CROGL_GENFILES)/linux_glxapi_exports.asm
180 VBoxOGL_CLEAN.solaris += \
181 $(VBOX_PATH_CROGL_GENFILES)/solaris_glxapi_exports.asm
182 endif
183endif
184VBoxOGL_LIBS = \
185 $(VBOX_LIB_IPRT_GUEST_R3_SHARED) \
186 $(VBOX_LIB_VBGL_R3_SHARED) \
187 $(VBOX_LIB_OGL_CRUTIL) \
188 $(PATH_LIB)/additions/VBoxOGLspuload$(VBOX_SUFF_LIB)
189if1of ($(KBUILD_TARGET), linux solaris)
190 VBoxOGL_LIBS += \
191 $(PATH_LIB)/libXcomposite.so
192 ifdef VBoxOGL_FAKEDRI
193 VBoxOGL_LIBS += \
194 dl
195 endif
196endif
197
198#
199# Generate files for VBoxOGL.
200#
201$(VBOX_PATH_CROGL_GENFILES)/NULLfuncs.c: $(PATH_SUB_CURRENT)/NULLfuncs.py $(VBOX_CROGL_API_FILES) | $$(dir $$@)
202 $(call MSG_GENERATE,python,$@,$<)
203 $(QUIET)$(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI)
204$(VBOX_PATH_CROGL_GENFILES)/tsfuncs.c: $(PATH_SUB_CURRENT)/tsfuncs.py $(VBOX_CROGL_API_FILES) | $$(dir $$@)
205 $(call MSG_GENERATE,python,$@,$<)
206 $(QUIET)$(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI)
207
208ifeq ($(KBUILD_TARGET),win)
209$(VBOX_PATH_CROGL_GENFILES)/getprocaddress.c: $(PATH_SUB_CURRENT)/windows_getprocaddress.py $(VBOX_CROGL_API_FILES) | $$(dir $$@)
210 $(call MSG_GENERATE,python,$@,$<)
211 $(QUIET)$(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI)
212$(VBOX_PATH_CROGL_GENFILES)/cropengl.def: $(PATH_SUB_CURRENT)/defs.py $(VBOX_CROGL_API_FILES) | $$(dir $$@)
213 $(call MSG_GENERATE,python,$@,$<)
214 $(QUIET)$(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI)
215$(VBOX_PATH_CROGL_GENFILES)/cr_gl.h: $(PATH_SUB_CURRENT)/cr_gl.py $(VBOX_CROGL_API_FILES) | $$(dir $$@)
216 $(call MSG_GENERATE,python,$@,$<)
217 $(QUIET)$(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI)
218$(VBOX_PATH_CROGL_GENFILES)/windows_exports.asm: \
219 $(PATH_SUB_CURRENT)/windows_i386_exports.py \
220 $(VBOX_CROGL_API_FILES) $(PATH_SUB_CURRENT)/entrypoints.py \
221 | $$(dir $$@)
222 $(call MSG_GENERATE,python,$@,$<)
223 $(QUIET)$(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI)
224else if1of ($(KBUILD_TARGET), linux solaris)
225$(VBOX_PATH_CROGL_GENFILES)/getprocaddress.c: $(PATH_SUB_CURRENT)/getprocaddress.py $(VBOX_CROGL_API_FILES) | $$(dir $$@)
226 $(call MSG_GENERATE,python,$@,$<)
227 $(QUIET)$(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI)
228if !defined(VBoxOGL_DRI) && !defined(VBoxOGL_FAKEDRI)
229 ifeq ($(KBUILD_TARGET),solaris)
230$(VBOX_PATH_CROGL_GENFILES)/solaris_exports.c: \
231 $(PATH_SUB_CURRENT)/SunOS_exports.py \
232 $(VBOX_CROGL_API_FILES) $(PATH_SUB_CURRENT)/entrypoints.py \
233 | $$(dir $$@)
234 $(call MSG_GENERATE,python,$@,$<)
235 $(QUIET)$(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI)
236 else
237$(VBOX_PATH_CROGL_GENFILES)/linux_exports.asm: \
238 $(PATH_SUB_CURRENT)/Linux_i386_exports.py \
239 $(VBOX_CROGL_API_FILES) $(PATH_SUB_CURRENT)/entrypoints.py \
240 | $$(dir $$@)
241 $(call MSG_GENERATE,python,$@,$<)
242 $(QUIET)$(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI)
243 endif
244else ifdef VBoxOGL_DRI
245$(VBOX_PATH_CROGL_GENFILES)/cr_gl.h: $(PATH_SUB_CURRENT)/cr_gl.py $(VBOX_CROGL_API_FILES) | $$(dir $$@)
246 $(call MSG_GENERATE,python,$@,$<)
247 $(QUIET)$(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI)
248$(VBOX_PATH_CROGL_GENFILES)/DD_gl.h: $(PATH_SUB_CURRENT)/DD_glh.py $(VBOX_CROGL_API_FILES) | $$(dir $$@)
249 $(call MSG_GENERATE,python,$@,$<)
250 $(QUIET)$(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI)
251$(VBOX_PATH_CROGL_GENFILES)/DD_gl.c: $(PATH_SUB_CURRENT)/DD_glc.py $(VBOX_CROGL_API_FILES) | $$(dir $$@)
252 $(call MSG_GENERATE,python,$@,$<)
253 $(QUIET)$(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI)
254 ifeq ($(KBUILD_TARGET),solaris)
255$(VBOX_PATH_CROGL_GENFILES)/solaris_exports_dri.asm: \
256 $(PATH_SUB_CURRENT)/SunOS_i386_exports_dri.py \
257 $(VBOX_CROGL_API_FILES) $(PATH_SUB_CURRENT)/entrypoints.py \
258 | $$(dir $$@)
259 $(call MSG_GENERATE,python,$@,$<)
260 $(QUIET)$(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI)
261 else
262$(VBOX_PATH_CROGL_GENFILES)/linux_exports_dri.asm: \
263 $(PATH_SUB_CURRENT)/Linux_i386_exports_dri.py \
264 $(VBOX_CROGL_API_FILES) $(PATH_SUB_CURRENT)/entrypoints.py \
265 | $$(dir $$@)
266 $(call MSG_GENERATE,python,$@,$<)
267 $(QUIET)$(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI)
268 endif
269else ifdef VBoxOGL_FAKEDRI
270$(VBOX_PATH_CROGL_GENFILES)/cr_gl.h: $(PATH_SUB_CURRENT)/cr_gl.py $(VBOX_CROGL_API_FILES) | $$(dir $$@)
271 $(call MSG_GENERATE,python,$@,$<)
272 $(QUIET)$(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI)
273 ifndef VBOX_OGL_GLX_USE_CSTUBS
274 ifeq ($(KBUILD_TARGET),solaris)
275$(VBOX_PATH_CROGL_GENFILES)/solaris_exports_dri.asm: \
276 $(PATH_SUB_CURRENT)/SunOS_i386_exports_dri.py \
277 $(VBOX_CROGL_API_FILES) $(PATH_SUB_CURRENT)/entrypoints.py \
278 | $$(dir $$@)
279 $(call MSG_GENERATE,python,$@,$<)
280 $(QUIET)$(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI)
281$(VBOX_PATH_CROGL_GENFILES)/solaris_glxapi_exports.asm: $(PATH_SUB_CURRENT)/SunOS_i386_glxapi_exports.py | $$(dir $$@)
282 $(call MSG_GENERATE,python,$@,$<)
283 $(QUIET)$(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $<
284 else
285$(VBOX_PATH_CROGL_GENFILES)/linux_exports_dri.asm: \
286 $(PATH_SUB_CURRENT)/Linux_i386_exports_dri.py \
287 $(VBOX_CROGL_API_FILES) $(PATH_SUB_CURRENT)/entrypoints.py \
288 | $$(dir $$@)
289 $(call MSG_GENERATE,python,$@,$<)
290 $(QUIET)$(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI)
291$(VBOX_PATH_CROGL_GENFILES)/linux_glxapi_exports.asm: $(PATH_SUB_CURRENT)/Linux_i386_glxapi_exports.py | $$(dir $$@)
292 $(call MSG_GENERATE,python,$@,$<)
293 $(QUIET)$(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $<
294 endif
295 else
296 ifeq ($(KBUILD_TARGET),solaris)
297$(VBOX_PATH_CROGL_GENFILES)/solaris_exports.c: \
298 $(PATH_SUB_CURRENT)/SunOS_exports.py \
299 $(VBOX_CROGL_API_FILES) $(PATH_SUB_CURRENT)/entrypoints.py \
300 | $$(dir $$@)
301 $(call MSG_GENERATE,python,$@,$<)
302 $(QUIET)$(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI)
303 else
304$(VBOX_PATH_CROGL_GENFILES)/linux_exports.c: \
305 $(PATH_SUB_CURRENT)/Linux_exports.py \
306 $(VBOX_CROGL_API_FILES) $(PATH_SUB_CURRENT)/entrypoints.py \
307 | $$(dir $$@)
308 $(call MSG_GENERATE,python,$@,$<)
309 $(QUIET)$(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI)
310 endif
311 endif # VBOX_OGL_GLX_USE_CSTUBS
312endif
313endif
314
315#
316# VBoxOGLarrayspu
317#
318VBoxOGLarrayspu_TEMPLATE = VBOXCROGLR3GUESTDLL
319VBoxOGLarrayspu_INCS = \
320 array
321if1of ($(KBUILD_TARGET), linux solaris)
322 VBoxOGLarrayspu_INCS += \
323 $(VBOX_MESA_INCS)
324endif
325VBoxOGLarrayspu_INCS.darwin += $(PATH_OUT)/obj/VBoxOGL
326VBoxOGLarrayspu_INTERMEDIATES = \
327 $(VBOX_PATH_CROGL_GENFILES)/state/cr_currentpointers.h \
328 $(VBOX_PATH_CROGL_GENFILES)/state/cr_statefuncs.h
329VBoxOGLarrayspu_SOURCES = \
330 array/arrayspu.c \
331 array/arrayspu_config.c \
332 array/arrayspu_init.c
333VBoxOGLarrayspu_SOURCES.win = \
334 array/arrayspu.def \
335 array/arrayspu.rc
336VBoxOGLarrayspu_LIBS = \
337 $(VBOX_LIB_OGL_CRUTIL) \
338 $(PATH_LIB)/additions/VBoxOGLspuload$(VBOX_SUFF_LIB) \
339 $(PATH_LIB)/additions/VBoxOGLcrstate$(VBOX_SUFF_LIB)
340
341#
342# VBoxOGLpassthroughspu
343#
344VBoxOGLpassthroughspu_TEMPLATE = VBOXCROGLR3GUESTDLL
345VBoxOGLpassthroughspu_INCS = \
346 passthrough
347if1of ($(KBUILD_TARGET), linux solaris)
348 VBoxOGLpassthroughspu_INCS += \
349 $(VBOX_MESA_INCS)
350endif
351VBoxOGLpassthroughspu_SOURCES = \
352 passthrough/passthroughspu_init.c \
353 $(VBOX_PATH_CROGL_GENFILES)/passthroughspu.c
354VBoxOGLpassthroughspu_SOURCES.win = \
355 passthrough/passthrough.def \
356 passthrough/passthroughspu.rc
357VBoxOGLpassthroughspu_CLEAN = \
358 $(VBOX_PATH_CROGL_GENFILES)/passthroughspu.c
359VBoxOGLpassthroughspu_LIBS = \
360 $(VBOX_LIB_OGL_CRUTIL)
361
362#
363# Generate files for VBoxOGLpassthroughspu.
364#
365$(VBOX_PATH_CROGL_GENFILES)/passthroughspu.c: $(PATH_SUB_CURRENT)/passthrough/passthrough.py $(VBOX_CROGL_API_FILES) | $$(dir $$@)
366 $(call MSG_GENERATE,python,$@,$<)
367 $(QUIET)$(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI)
368
369#
370# VBoxOGLpackspu
371#
372VBoxOGLpackspu_TEMPLATE = VBOXCROGLR3GUESTDLL
373VBoxOGLpackspu_DEFS = TRACKS_STATE=1 PACKS=1
374VBoxOGLpackspu_INCS = \
375 pack
376if1of ($(KBUILD_TARGET), linux solaris)
377 VBoxOGLpackspu_INCS += \
378 $(VBOX_MESA_INCS)
379endif
380VBoxOGLpackspu_INTERMEDIATES = \
381 $(VBOX_PATH_CROGL_GENFILES)/packspu_proto.h \
382 $(VBOX_PATH_CROGL_GENFILES)/cr_packfunctions.h
383VBoxOGLpackspu_SOURCES = \
384 pack/packspu_bufferobject.c \
385 pack/packspu_client.c \
386 pack/packspu_config.c \
387 pack/packspu_context.c \
388 pack/packspu_getstring.c \
389 pack/packspu_init.c \
390 pack/packspu_misc.c \
391 pack/packspu_net.c \
392 pack/packspu_swapbuf.c \
393 pack/packspu_pixel.c \
394 pack/packspu_texture.c \
395 pack/packspu_getshaders.c \
396 pack/packspu_glsl.c \
397 pack/packspu_framebuffer.c \
398 $(VBOX_PATH_CROGL_GENFILES)/packspu.c \
399 $(VBOX_PATH_CROGL_GENFILES)/packspu_get.c \
400 $(VBOX_PATH_CROGL_GENFILES)/packspu_flush.c \
401 $(VBOX_PATH_CROGL_GENFILES)/packspu_beginend.c
402VBoxOGLpackspu_SOURCES.win = \
403 pack/pack.def \
404 pack/packspu.rc
405VBoxOGLpackspu_CLEAN = \
406 $(VBOX_PATH_CROGL_GENFILES)/packspu_proto.h \
407 $(VBOX_PATH_CROGL_GENFILES)/packspu.c \
408 $(VBOX_PATH_CROGL_GENFILES)/packspu_get.c \
409 $(VBOX_PATH_CROGL_GENFILES)/packspu_flush.c \
410 $(VBOX_PATH_CROGL_GENFILES)/packspu_beginend.c
411VBoxOGLpackspu_LIBS = \
412 $(VBOX_LIB_OGL_CRUTIL) \
413 $(PATH_LIB)/additions/VBoxOGLspuload$(VBOX_SUFF_LIB) \
414 $(PATH_LIB)/additions/VBoxOGLcrstate$(VBOX_SUFF_LIB) \
415 $(PATH_LIB)/additions/VBoxOGLcrpacker$(VBOX_SUFF_LIB)
416
417#
418# Generate files for VBoxOGLpackspu.
419#
420$(VBOX_PATH_CROGL_GENFILES)/packspu.c: $(addprefix $(PATH_SUB_CURRENT)/pack/,pack.py packspu_special packspu_unimplemented_special) $(VBOX_CROGL_API_FILES) | $$(dir $$@)
421 $(call MSG_GENERATE,python,$@,$<)
422 $(QUIET)$(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI) $(<D)
423
424$(VBOX_PATH_CROGL_GENFILES)/packspu_get.c: $(PATH_SUB_CURRENT)/pack/packspu_get.py $(PATH_SUB_CURRENT)/pack/packspu_special $(PATH_ROOT)/src/VBox/HostServices/SharedOpenGL/crserverlib/get_sizes.py $(VBOX_CROGL_API_FILES) | $$(dir $$@)
425 $(call MSG_GENERATE,python,$@,$<)
426 $(QUIET)$(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI) $(<D)
427
428$(VBOX_PATH_CROGL_GENFILES)/packspu_flush.c: $(PATH_SUB_CURRENT)/pack/packspu_flush.py $(PATH_SUB_CURRENT)/pack/packspu_flush_special $(VBOX_CROGL_API_FILES) | $$(dir $$@)
429 $(call MSG_GENERATE,python,$@,$<)
430 $(QUIET)$(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI) $(<D)
431
432$(VBOX_PATH_CROGL_GENFILES)/packspu_beginend.c: $(PATH_SUB_CURRENT)/pack/packspu_beginend.py $(PATH_SUB_CURRENT)/pack/packspu_vertex_special $(VBOX_CROGL_API_FILES) | $$(dir $$@)
433 $(call MSG_GENERATE,python,$@,$<)
434 $(QUIET)$(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI) $(<D)
435
436$(VBOX_PATH_CROGL_GENFILES)/packspu_proto.h: $(addprefix $(PATH_SUB_CURRENT)/pack/,packspu_proto.py packspu_special packspu_unimplemented_special) $(VBOX_CROGL_API_FILES) | $$(dir $$@)
437 $(call MSG_GENERATE,python,$@,$<)
438 $(QUIET)$(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI) $(<D)
439
440#
441# VBoxOGLfeedbackspu
442#
443VBoxOGLfeedbackspu_TEMPLATE = VBOXCROGLR3GUESTDLL
444VBoxOGLfeedbackspu_INCS = \
445 feedback
446if1of ($(KBUILD_TARGET), linux solaris)
447 VBoxOGLfeedbackspu_INCS += \
448 $(VBOX_MESA_INCS)
449endif
450VBoxOGLarrayspu_INTERMEDIATES = \
451 $(VBOX_PATH_CROGL_GENFILES)/feedbackspu_proto.h
452VBoxOGLfeedbackspu_SOURCES = \
453 feedback/feedbackspu_config.c \
454 feedback/feedbackspu_init.c \
455 feedback/feedback_context.c \
456 $(VBOX_PATH_CROGL_GENFILES)/feedbackspu.c \
457 $(VBOX_PATH_CROGL_GENFILES)/feedbackspu_state.c
458VBoxOGLfeedbackspu_SOURCES.win = \
459 feedback/feedback.def \
460 feedback/feedbackspu.rc
461VBoxOGLfeedbackspu_CLEAN = \
462 $(VBOX_PATH_CROGL_GENFILES)/feedbackspu_proto.h \
463 $(VBOX_PATH_CROGL_GENFILES)/feedbackspu.c \
464 $(VBOX_PATH_CROGL_GENFILES)/feedbackspu_state.c
465VBoxOGLfeedbackspu_LIBS = \
466 $(VBOX_LIB_OGL_CRUTIL) \
467 $(PATH_LIB)/additions/VBoxOGLspuload$(VBOX_SUFF_LIB) \
468 $(PATH_LIB)/additions/VBoxOGLcrstate$(VBOX_SUFF_LIB)
469
470#
471# Generate files for VBoxOGLfeedbackspu.
472#
473$(VBOX_PATH_CROGL_GENFILES)/feedbackspu.c: $(addprefix $(PATH_SUB_CURRENT)/feedback/,feedback.py feedback_special select_special feedback_state_special) $(VBOX_CROGL_API_FILES) | $$(dir $$@)
474 $(call MSG_GENERATE,python,$@,$<)
475 $(QUIET)$(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI) $(<D)
476
477$(VBOX_PATH_CROGL_GENFILES)/feedbackspu_state.c: $(addprefix $(PATH_SUB_CURRENT)/feedback/,feedback_state.py feedback_state_special) $(VBOX_CROGL_API_FILES) | $$(dir $$@)
478 $(call MSG_GENERATE,python,$@,$<)
479 $(QUIET)$(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI) $(<D)
480
481$(VBOX_PATH_CROGL_GENFILES)/feedbackspu_proto.h: $(addprefix $(PATH_SUB_CURRENT)/feedback/,feedbackspu_proto.py feedback_special select_special feedback_state_special) $(VBOX_CROGL_API_FILES) | $$(dir $$@)
482 $(call MSG_GENERATE,python,$@,$<)
483 $(QUIET)$(call VBOX_CROGL_PYTHON_ENV,$(VBOX_PATH_CROGL_PYTHON_INCLUDE),$@) $(VBOX_BLD_PYTHON) $< $(VBOX_PATH_CROGL_GLAPI) $(<D)
484
485include $(KBUILD_PATH)/subfooter.kmk
486
Note: See TracBrowser for help on using the repository browser.

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