VirtualBox

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

Last change on this file since 28800 was 28800, checked in by vboxsync, 14 years ago

Automated rebranding to Oracle copyright/license strings via filemuncher

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