summaryrefslogtreecommitdiff
path: root/src/VBox/Additions/3D/win/VBoxGL/Makefile.kmk
blob: 0c5a2ee5ebf23963f32c4d71df31b38c9ba40477 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
# $Id$
## @file
# Sub-Makefile for VBoxGL OpenGL state tracker.
#

#
# Copyright (C) 2018-2019 Oracle Corporation
#
# This file is part of VirtualBox Open Source Edition (OSE), as
# available from http://www.virtualbox.org. This file is free software;
# you can redistribute it and/or modify it under the terms of the GNU
# General Public License (GPL) as published by the Free Software
# Foundation, in version 2 as it comes in the "COPYING" file of the
# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
#

SUB_DEPTH = ../../../../../..
include $(KBUILD_PATH)/subheader.kmk

# Define this to build software OpenGL driver
#VBOX_WITH_MESA3D_GL_SOFTWARE = 1

DLLS       += VBoxGL
DLLS.amd64 += VBoxGL-x86

VBoxGL_TEMPLATE = VBoxMesa3DGuestR3DllMinVista
# -wd4005: '__useHeader' : redefinition
VBoxGL_CFLAGS   = -wd4005
VBoxGL_INCS     = \
	$(VBOX_PATH_3D)/win/include \
	$(VBOX_PATH_MESA)/include/GL \
	$(VBOX_PATH_MESA)/src/gallium/state_trackers/wgl \
	$(VBOX_PATH_MESA)/src/gallium/winsys/sw \
	$(VBOX_PATH_MESA)/src/gallium/drivers \
	$(PATH_ROOT)/src/VBox/Additions/WINNT/Graphics/Video \
	$(PATH_ROOT)/src/VBox/Runtime/common/table \
	$(VBOX_PATH_VMSVGA_INC) \
	$(VBOX_GRAPHICS_INCS)
VBoxGL_SOURCES  = \
	$(VBOX_PATH_MESA)/src/gallium/state_trackers/wgl/opengl32.def \
	VBoxGL.rc
ifndef VBOX_WITH_MESA3D_GL_SOFTWARE
VBoxGL_SOURCES += \
	GaDrvEnvKMT.cpp \
	VBoxGL.c
else
VBoxGL_SOURCES += \
	$(VBOX_PATH_MESA)/src/gallium/targets/libgl-gdi/libgl_gdi.c
VBoxGL_SOURCES += \
	$(VBOX_PATH_MESA)/src/gallium/winsys/sw/gdi/gdi_sw_winsys.c
VBoxGL_SOURCES += \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_buffer.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_clear.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_context.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_compute.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_draw_arrays.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_fence.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_flush.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_fs_exec.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_image.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_prim_vbuf.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_quad_blend.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_quad_depth_test.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_quad_fs.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_quad_pipe.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_quad_stipple.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_query.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_screen.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_setup.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_state_blend.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_state_clip.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_state_derived.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_state_image.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_state_rasterizer.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_state_sampler.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_state_shader.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_state_so.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_state_surface.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_state_vertex.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_surface.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_tex_sample.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_tex_tile_cache.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_texture.c \
	$(VBOX_PATH_MESA)/src/gallium/drivers/softpipe/sp_tile_cache.c
endif
VBoxGL_LIBS     = \
	$(VBOX_PATH_ADDITIONS_LIB)/VBoxWddmUmHlp$(VBOX_SUFF_LIB) \
	$(VBOX_PATH_ADDITIONS_LIB)/VBoxMesaGalliumAuxLib$(VBOX_SUFF_LIB) \
	$(VBOX_PATH_ADDITIONS_LIB)/VBoxMesaWglLib$(VBOX_SUFF_LIB) \
	$(VBOX_PATH_ADDITIONS_LIB)/VBoxMesaUtilLib$(VBOX_SUFF_LIB) \
	$(VBOX_PATH_ADDITIONS_LIB)/VBoxMesaLib$(VBOX_SUFF_LIB)

ifdef VBOX_SIGN_ADDITIONS
 VBoxGL_INSTTYPE       = none
 VBoxGL_DEBUG_INSTTYPE = both
endif

#
# VBoxGL-x86 - x86 version of VBoxGL built for amd64 build
#
VBoxGL-x86_EXTENDS      = VBoxGL
VBoxGL-x86_BLD_TRG_ARCH = x86
VBoxGL-x86_LIBS         = \
	$(VBOX_PATH_ADDITIONS_LIB)/VBoxWddmUmHlp-x86$(VBOX_SUFF_LIB) \
	$(VBOX_PATH_ADDITIONS_LIB)/VBoxMesaGalliumAuxLib-x86$(VBOX_SUFF_LIB) \
	$(VBOX_PATH_ADDITIONS_LIB)/VBoxMesaWglLib-x86$(VBOX_SUFF_LIB) \
	$(VBOX_PATH_ADDITIONS_LIB)/VBoxMesaUtilLib-x86$(VBOX_SUFF_LIB) \
	$(VBOX_PATH_ADDITIONS_LIB)/VBoxMesaLib-x86$(VBOX_SUFF_LIB)
VBoxGL-x86_DEFS         = $(VBoxGL_DEFS) VBOX_WOW64

include $(FILE_KBUILD_SUB_FOOTER)