VirtualBox

source: vbox/trunk/src/VBox/Additions/3D/win/VBoxGL/Makefile.kmk

Last change on this file was 103999, checked in by vboxsync, 8 weeks ago

Addition/3D,Additions/WINNT/Graphics: Updates for mesa-24.0.2 (not enabled yet). bugref:10606

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 4.5 KB
Line 
1# $Id: Makefile.kmk 103999 2024-03-22 12:38:39Z vboxsync $
2## @file
3# Sub-Makefile for VBoxGL OpenGL state tracker.
4#
5
6#
7# Copyright (C) 2018-2023 Oracle and/or its affiliates.
8#
9# This file is part of VirtualBox base platform packages, as
10# available from https://www.virtualbox.org.
11#
12# This program is free software; you can redistribute it and/or
13# modify it under the terms of the GNU General Public License
14# as published by the Free Software Foundation, in version 3 of the
15# License.
16#
17# This program is distributed in the hope that it will be useful, but
18# WITHOUT ANY WARRANTY; without even the implied warranty of
19# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
20# General Public License for more details.
21#
22# You should have received a copy of the GNU General Public License
23# along with this program; if not, see <https://www.gnu.org/licenses>.
24#
25# SPDX-License-Identifier: GPL-3.0-only
26#
27
28SUB_DEPTH = ../../../../../..
29include $(KBUILD_PATH)/subheader.kmk
30
31DLLS += VBoxGL
32DLLS.amd64 += VBoxGL-x86
33
34VBoxGL_TEMPLATE = VBoxMesa3DGuestR3DllMinVista
35VBoxGL_DEFS = VBOXGL
36if $(VBOX_MESA_V_MAJOR) >= 24
37 VBoxGL_DEFS += \
38 VBOX_MESA_STATIC_DRIVER
39endif
40# -wd4005: '__useHeader' : redefinition
41VBOXGL_DISABLED_WARNINGS := -wd4005
42# -wd4100: 'api': unreferenced formal parameter
43# -wd4204: nonstandard extension used: non-constant aggregate initializer
44# -wd4245: 'return': conversion from 'int' to 'unsigned int', signed/unsigned mismatch
45# -wd4267: 'initializing': conversion from 'size_t' to 'unsigned int', possible loss of data
46# -wd4459: stw_device.h(102): warning C4459: declaration of 'stw_dev' hides global declaration
47# -wd4668: c99_compat.h(99): warning C4668: '__STDC_VERSION__' is not defined as a preprocessor macro, replacing with '0' for '#if/#elif'
48VBOXGL_DISABLED_WARNINGS += -wd4100 -wd4204 -wd4245 -wd4267 -wd4459 -wd4668
49VBoxGL_CFLAGS = $(VBOXGL_DISABLED_WARNINGS)
50VBoxGL_CXXFLAGS = $(VBOXGL_DISABLED_WARNINGS)
51VBoxGL_INCS = \
52 $(VBOX_PATH_3D)/win/include \
53 $(VBOX_PATH_MESA)/include/GL \
54 $(VBOX_PATH_MESA)/src/gallium/frontends/wgl \
55 $(VBOX_PATH_MESA)/src/gallium/winsys/sw \
56 $(VBOX_PATH_MESA)/src/gallium/drivers \
57 $(PATH_ROOT)/src/VBox/Additions/WINNT/Graphics/Video \
58 $(PATH_ROOT)/src/VBox/Runtime/common/table \
59 $(VBOX_PATH_VMSVGA_INC) \
60 $(VBOX_GRAPHICS_INCS)
61if $(VBOX_MESA_V_MAJOR) >= 24
62 VBoxGL_INCS += \
63 $(VBOX_PATH_3D)/win/VBoxSVGA \
64 $(VBOX_PATH_MESA)/src/mapi \
65 $(VBOX_PATH_MESA)/src/gallium/drivers/svga \
66 $(VBOX_PATH_MESA)/src/gallium/winsys/svga/drm
67endif
68VBoxGL_SOURCES = \
69 GaDrvEnvKMT.cpp \
70 VBoxGL.c \
71 VBoxGL.rc
72if $(VBOX_MESA_V_MAJOR) >= 24
73 VBoxGL_SOURCES += \
74 ../VBoxSVGA/VBoxSVGA.c \
75 ../VBoxSVGA/winsys/vmw_screen.c \
76 ../VBoxSVGA/winsys/vmw_screen_wddm.c \
77 ../VBoxSVGA/winsys/vmw_screen_ioctl.c \
78 $(VBoxGL_0_OUTDIR)/opengl32.def
79else
80 VBoxGL_SOURCES += \
81 $(VBOX_PATH_MESA)/src/gallium/targets/libgl-gdi/opengl32.def
82endif
83VBoxGL_LIBS = \
84 $(VBOX_PATH_ADDITIONS_LIB)/VBoxWddmUmHlp$(VBOX_SUFF_LIB) \
85 $(VBOX_PATH_ADDITIONS_LIB)/VBoxMesaGalliumAuxLib$(VBOX_SUFF_LIB) \
86 $(VBOX_PATH_ADDITIONS_LIB)/VBoxMesaWglLib$(VBOX_SUFF_LIB) \
87 $(VBOX_PATH_ADDITIONS_LIB)/VBoxMesaUtilLib$(VBOX_SUFF_LIB) \
88 $(VBOX_PATH_ADDITIONS_LIB)/VBoxMesaLib$(VBOX_SUFF_LIB)
89if $(VBOX_MESA_V_MAJOR) >= 24
90 VBoxGL_LIBS += \
91 $(VBOX_PATH_ADDITIONS_LIB)/VBoxMesaSVGAWinsysLib$(VBOX_SUFF_LIB) \
92 $(VBOX_PATH_ADDITIONS_LIB)/VBoxMesaSVGALib$(VBOX_SUFF_LIB)
93endif
94
95$$(VBoxGL_0_OUTDIR)/opengl32.def: \
96 $(PATH_SUB_CURRENT)/opengl32_defs.py \
97 $(VBOX_PATH_MESA)/src/gallium/targets/libgl-gdi/opengl32.def.in | $$(dir $$@)
98 $(call MSG_GENERATE,python,$@,$$@)
99 $(QUIET)$(VBOX_BLD_PYTHON) $< $(VBOX_PATH_MESA)/src/gallium/targets/libgl-gdi/opengl32.def.in $@
100
101if defined(VBOX_SIGNING_MODE) && defined(VBOX_SIGN_ADDITIONS)
102 VBoxGL_INSTTYPE = none
103 VBoxGL_DEBUG_INSTTYPE = both
104endif
105
106#
107# VBoxGL-x86 - x86 version of VBoxGL built for amd64 build
108#
109VBoxGL-x86_EXTENDS = VBoxGL
110VBoxGL-x86_BLD_TRG_ARCH = x86
111VBoxGL-x86_LIBS = \
112 $(VBOX_PATH_ADDITIONS_LIB)/VBoxWddmUmHlp-x86$(VBOX_SUFF_LIB) \
113 $(VBOX_PATH_ADDITIONS_LIB)/VBoxMesaGalliumAuxLib-x86$(VBOX_SUFF_LIB) \
114 $(VBOX_PATH_ADDITIONS_LIB)/VBoxMesaWglLib-x86$(VBOX_SUFF_LIB) \
115 $(VBOX_PATH_ADDITIONS_LIB)/VBoxMesaUtilLib-x86$(VBOX_SUFF_LIB) \
116 $(VBOX_PATH_ADDITIONS_LIB)/VBoxMesaLib-x86$(VBOX_SUFF_LIB)
117if $(VBOX_MESA_V_MAJOR) >= 24
118 VBoxGL-x86_LIBS += \
119 $(VBOX_PATH_ADDITIONS_LIB)/VBoxMesaSVGAWinsysLib-x86$(VBOX_SUFF_LIB) \
120 $(VBOX_PATH_ADDITIONS_LIB)/VBoxMesaSVGALib-x86$(VBOX_SUFF_LIB)
121endif
122VBoxGL-x86_DEFS = $(VBoxGL_DEFS) VBOX_WOW64
123
124include $(FILE_KBUILD_SUB_FOOTER)
125
Note: See TracBrowser for help on using the repository browser.

© 2023 Oracle
ContactPrivacy policyTerms of Use