VirtualBox

source: vbox/trunk/src/VBox/Additions/x11/vboxvideo/Makefile.kmk@ 69079

Last change on this file since 69079 was 69079, checked in by vboxsync, 7 years ago

Additions/x11/vboxvideo: Drop dependency on IPRT header files.
bugref:9017: Additions/x11: put vboxvideo into upstream X.Org

Remove (hopefully) all dependencies on IPRT header files inside of the X.Org
vboxvideo driver and provide the dependencies which are still useful in the
form of a single, local VBoxVideoIPRT.h file. These are mainly definitions
and macros.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 18.3 KB
Line 
1# $Id: Makefile.kmk 69079 2017-10-13 15:27:12Z vboxsync $
2## @file
3# Sub-Makefile for the VBox Linux Additions X.org graphics driver.
4#
5
6#
7# Copyright (C) 2006-2016 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
21vboxvideo_70_DEFS := \
22 IN_MODULE XORG_7X RENDER=1 IN_RT_STATIC X_BYTE_ORDER=X_LITTLE_ENDIAN
23ifeq ($(KBUILD_TARGET),solaris) # don't use .solaris or anything here.
24 vboxvideo_70_DEFS += __EXTENSIONS__ ## @todo Why this?
25endif
26vboxvideo_13_DEFS := $(vboxvideo_70_DEFS) VBOXVIDEO_13
27vboxvideo_15_DEFS := \
28 $(vboxvideo_13_DEFS) NO_ANSIC PCIACCESS XSERVER_LIBPCIACCESS _XORG_SERVER_H_ _DIX_CONFIG_H_
29vboxvideo_xorg_INCS = \
30 $(VBOX_PATH_X11_ROOT)/fontsproto-2.1.0 \
31 $(VBOX_PATH_X11_ROOT)/inputproto-1.9.99.902 \
32 $(VBOX_PATH_X11_ROOT)/kbproto-1.0.6 \
33 $(VBOX_PATH_X11_ROOT)/libpciaccess-0.10.8 \
34 $(VBOX_PATH_X11_ROOT)/libXext-1.3.1 \
35 $(VBOX_PATH_X11_ROOT)/pixman-0.16.0 \
36 $(VBOX_PATH_X11_ROOT)/randrproto-1.3.0 \
37 $(VBOX_PATH_X11_ROOT)/renderproto-0.11 \
38 $(VBOX_PATH_X11_ROOT)/xextproto-7.1.1 \
39 $(VBOX_PATH_X11_ROOT)/xproto-7.0.18 \
40 $(VBOX_GRAPHICS_INCS)
41vboxvideo_override_INCLUDES = \
42 -include $(PATH_ROOT)/src/VBox/Additions/x11/vboxvideo/VBoxVideoIPRT.h \
43 -include $(PATH_ROOT)/src/VBox/Additions/x11/vboxvideo/HGSMIMemAlloc.h
44
45LIBRARIES += vboxvideo_drv_lib
46
47#
48# vboxvideo_drv_lib
49#
50vboxvideo_drv_lib_TEMPLATE = VBOXGUESTR3XORGMOD
51# We are relying in the include guard in the two headers below to stop the more
52# generic ones from being included. Not very nice, I know.
53vboxvideo_drv_lib_CFLAGS += $(vboxvideo_override_INCLUDES)
54vboxvideo_drv_lib_CXXFLAGS += $(vboxvideo_override_INCLUDES)
55ifeq ($(KBUILD_TARGET),solaris) # don't use .solaris or anything here. Do we need this? I don't want to find out.
56 vboxvideo_drv_lib_CFLAGS += -D_XPG6 -Wno-shadow # Use XPG6 until we have moved the C++ bits into a library.
57endif
58vboxvideo_drv_lib_SOURCES = \
59 $(PATH_ROOT)/src/VBox/Additions/common/VBoxVideo/HGSMIBase.cpp \
60 $(PATH_ROOT)/src/VBox/Additions/common/VBoxVideo/HGSMIBuffers.cpp \
61 $(PATH_ROOT)/src/VBox/Additions/common/VBoxVideo/Modesetting.cpp \
62 $(PATH_ROOT)/src/VBox/Additions/common/VBoxVideo/VBVABase.cpp \
63 $(PATH_ROOT)/src/VBox/GuestHost/HGSMI/HGSMICommon.cpp \
64 $(PATH_ROOT)/src/VBox/Additions/x11/vboxvideo/hgsmimemalloc.c
65# $(VBOX_PATH_X11_ROOT)/xorg-server-1.18.0 is for in[blw] and out[blw], xproto
66# for _X_[UN]LIKELY.
67vboxvideo_drv_lib_INCS = \
68 $(VBOX_PATH_X11_ROOT)/xorg-server-1.18.0 \
69 $(VBOX_PATH_X11_ROOT)/xproto-7.0.18 \
70 $(VBOX_PATH_X11_ROOT)/pixman-0.16.0 \
71 $(PATH_ROOT)/src/VBox/Runtime/include \
72 $(VBOX_GRAPHICS_INCS)
73vboxvideo_drv_lib_INST = $(INST_LIB)
74
75#
76# vboxvideo_drv
77#
78if1of ($(KBUILD_TARGET), linux)
79 SYSMODS += vboxvideo_drv
80endif # target linux
81vboxvideo_drv_TEMPLATE = VBOXGUESTR3XF86MOD
82vboxvideo_drv_CFLAGS += $(vboxvideo_override_INCLUDES)
83vboxvideo_drv_CFLAGS += -Wno-shadow # Avoid MBs of warnings in X11 and OpenGL headers (solaris mostly).
84vboxvideo_drv_CXXFLAGS += $(vboxvideo_override_INCLUDES)
85vboxvideo_drv_DEFS.linux = linux
86vboxvideo_drv_DEFS.x86 = __i386__
87# This one has to be defined when building server code on systems where
88# unsigned long is 64bits
89vboxvideo_drv_DEFS.amd64 += _XSERVER64
90vboxvideo_drv_DEFS = \
91 _POSIX_C_SOURCE=199309L _POSIX_SOURCE _XOPEN_SOURCE _DEFAULT_SOURCE \
92 _BSD_SOURCE _SVID_SOURCE _GNU_SOURCE SHAPE XINPUT XKB LBX XAPPGROUP \
93 XCSECURITY TOGCUP XF86BIGFONT DPMSExtension PIXPRIV PANORAMIX RENDER \
94 GCCUSESGAS AVOID_GLYPHBLT PIXPRIV SINGLEDEPTH XFreeXDGA XvExtension \
95 XFree86LOADER XFree86Server XF86VIDMODE XvMCExtension SMART_SCHEDULE \
96 BUILDDEBUG X_BYTE_ORDER=X_LITTLE_ENDIAN DNDEBUG FUNCPROTO=15 NARROWPROTO \
97 IN_MODULE XFree86Module IN_XF86_MODULE IN_RT_STATIC
98vboxvideo_drv_INCS = \
99 $(VBOX_PATH_X11_XFREE_4_3)/include \
100 $(VBOX_PATH_X11_XFREE_4_3)/include/X11 \
101 $(VBOX_PATH_X11_XFREE_4_3)/include/X11/extensions \
102 $(VBOX_PATH_X11_XFREE_4_3)/include/extensions \
103 $(VBOX_PATH_X11_XFREE_4_3)/include/fonts \
104 $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/afb \
105 $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/include \
106 $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/fb \
107 $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86 \
108 $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/common \
109 $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/ddc \
110 $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/int10 \
111 $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/i2c \
112 $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/os-support \
113 $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/vbe \
114 $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/os-support/bus \
115 $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/rac \
116 $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/ramdac \
117 $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/shadowfb \
118 $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/vgahw \
119 $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/xf1bpp \
120 $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/xf24_32bpp \
121 $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/xf4bpp \
122 $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/mfb \
123 $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/mi \
124 $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/miext/shadow \
125 $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/render \
126 $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/randr \
127 $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/Xext
128vboxvideo_drv_INCS += \
129 $(PATH_ROOT)/src/VBox/Runtime/include \
130 $(VBOX_GRAPHICS_INCS)
131vboxvideo_drv_SOURCES = \
132 getmode.c \
133 pointer.c \
134 setmode.c \
135 vboxvideo.c \
136 vbva.c \
137 $(vboxvideo_drv_lib_SOURCES)
138 # Any global symbols in the driver object files will be added to XFree86's
139 # symbol table, which can cause problems if we e.g. define a symbol in two
140 # modules.
141 vboxvideo_drv_POST_CMDS = \
142 objcopy --keep-global-symbol vboxvideoModuleData $(out) $(out)-objcopy$$(NLTAB) \
143 $(MV) -f $(out)-objcopy $(out)
144
145#
146# vboxvideo_drv_70
147#
148# Remark: The other X.org drivers below are derived from this one. So, to make
149# that as simple as possible we do ifeq/if1of test here and extends the
150# base keywords instead of using .solaris or .linux.
151# Also it is *important* to use := and not = when deriving a property.
152#
153DLLS += vboxvideo_drv_70
154vboxvideo_drv_70_TEMPLATE = VBOXGUESTR3XORGMOD
155vboxvideo_drv_70_DEFS = $(vboxvideo_70_DEFS) XORG_VERSION_CURRENT=70000000
156vboxvideo_drv_70_CFLAGS += $(vboxvideo_override_INCLUDES)
157ifeq ($(KBUILD_TARGET),solaris) # don't use .solaris or anything here.
158 vboxvideo_drv_70_CFLAGS += -D_XPG6 -Wno-shadow # Use XPG6 until we have moved the C++ bits into a library.
159endif
160vboxvideo_drv_70_INCS = \
161 $(vboxvideo_xorg_INCS) \
162 $(VBOX_PATH_X11_ROOT)/xorg-server-1.0.1
163vboxvideo_drv_70_INCS += $(PATH_ROOT)/src/VBox/Runtime/include
164vboxvideo_drv_70_SOURCES = $(filter-out $(vboxvideo_drv_lib_SOURCES),$(vboxvideo_drv_SOURCES))
165vboxvideo_drv_70_LIBS = $(PATH_STAGE_LIB)/vboxvideo_drv_lib$(VBOX_SUFF_LIB)
166
167
168#
169# vboxvideo_drv_71
170#
171DLLS += vboxvideo_drv_71
172vboxvideo_drv_71_TEMPLATE = VBOXGUESTR3XORGMOD
173vboxvideo_drv_71_CFLAGS := $(vboxvideo_drv_70_CFLAGS)
174vboxvideo_drv_71_DEFS := $(vboxvideo_70_DEFS) XORG_VERSION_CURRENT=70100000
175vboxvideo_drv_71_INCS = \
176 $(vboxvideo_xorg_INCS) \
177 $(VBOX_PATH_X11_ROOT)/xorg-server-1.1.0
178vboxvideo_drv_71_INCS += $(PATH_ROOT)/src/VBox/Runtime/include
179vboxvideo_drv_71_SOURCES = $(vboxvideo_drv_70_SOURCES)
180vboxvideo_drv_71_LIBS = $(vboxvideo_drv_70_LIBS)
181
182
183#
184# vboxvideo_drv_13
185#
186DLLS += vboxvideo_drv_13
187vboxvideo_drv_13_TEMPLATE = VBOXGUESTR3XORGMOD
188vboxvideo_drv_13_CFLAGS := $(vboxvideo_drv_70_CFLAGS)
189vboxvideo_drv_13_DEFS := $(vboxvideo_13_DEFS) XORG_VERSION_CURRENT=10300000
190vboxvideo_drv_13_INCS = \
191 $(vboxvideo_xorg_INCS) \
192 $(VBOX_PATH_X11_ROOT)/xorg-server-1.3.0.0
193vboxvideo_drv_13_INCS += $(PATH_ROOT)/src/VBox/Runtime/include
194vboxvideo_drv_13_SOURCES = $(vboxvideo_drv_70_SOURCES) edid.c
195vboxvideo_drv_13_LIBS += $(vboxvideo_drv_70_LIBS)
196
197
198#
199# vboxvideo_drv_14
200#
201DLLS += vboxvideo_drv_14
202vboxvideo_drv_14_TEMPLATE = VBOXGUESTR3XORGMOD
203vboxvideo_drv_14_CFLAGS := $(vboxvideo_drv_70_CFLAGS)
204vboxvideo_drv_14_DEFS := $(vboxvideo_13_DEFS) XORG_VERSION_CURRENT=10400000
205vboxvideo_drv_14_INCS = \
206 $(vboxvideo_xorg_INCS) \
207 $(VBOX_PATH_X11_ROOT)/xorg-server-1.4.2
208vboxvideo_drv_14_INCS += $(PATH_ROOT)/src/VBox/Runtime/include
209vboxvideo_drv_14_SOURCES = $(vboxvideo_drv_13_SOURCES)
210vboxvideo_drv_14_LIBS += $(vboxvideo_drv_70_LIBS)
211
212
213#
214# vboxvideo_drv_15
215#
216DLLS += vboxvideo_drv_15
217vboxvideo_drv_15_TEMPLATE = VBOXGUESTR3XORGMOD
218vboxvideo_drv_15_CFLAGS := $(vboxvideo_drv_70_CFLAGS)
219vboxvideo_drv_15_DEFS := $(vboxvideo_15_DEFS) XORG_VERSION_CURRENT=10503000
220vboxvideo_drv_15_INCS = \
221 $(vboxvideo_xorg_INCS) \
222 $(VBOX_PATH_X11_ROOT)/xorg-server-1.5.3
223vboxvideo_drv_15_INCS += $(PATH_ROOT)/src/VBox/Runtime/include
224vboxvideo_drv_15_SOURCES = $(vboxvideo_drv_13_SOURCES)
225vboxvideo_drv_15_LIBS += $(vboxvideo_drv_70_LIBS)
226
227
228#
229# vboxvideo_drv_16
230#
231DLLS += vboxvideo_drv_16
232vboxvideo_drv_16_TEMPLATE = VBOXGUESTR3XORGMOD
233vboxvideo_drv_16_CFLAGS := $(vboxvideo_drv_70_CFLAGS)
234vboxvideo_drv_16_DEFS := $(vboxvideo_15_DEFS) XORG_VERSION_CURRENT=10600000
235vboxvideo_drv_16_INCS = \
236 $(vboxvideo_xorg_INCS) \
237 $(VBOX_PATH_X11_ROOT)/xorg-server-1.6.5 \
238vboxvideo_drv_16_INCS += $(PATH_ROOT)/src/VBox/Runtime/include
239vboxvideo_drv_16_SOURCES := $(vboxvideo_drv_15_SOURCES)
240vboxvideo_drv_16_LIBS += $(vboxvideo_drv_70_LIBS)
241
242
243#
244# vboxvideo_drv_17
245#
246DLLS += vboxvideo_drv_17
247vboxvideo_drv_17_TEMPLATE = VBOXGUESTR3XORGMOD
248vboxvideo_drv_17_CFLAGS := $(vboxvideo_drv_70_CFLAGS)
249vboxvideo_drv_17_DEFS := $(vboxvideo_15_DEFS) XORG_VERSION_CURRENT=10699000
250vboxvideo_drv_17_INCS = \
251 $(vboxvideo_xorg_INCS) \
252 $(VBOX_PATH_X11_ROOT)/xorg-server-1.7.7
253vboxvideo_drv_17_INCS += $(PATH_ROOT)/src/VBox/Runtime/include
254vboxvideo_drv_17_SOURCES := $(vboxvideo_drv_13_SOURCES)
255vboxvideo_drv_17_LIBS += $(vboxvideo_drv_70_LIBS)
256
257
258#
259# vboxvideo_drv_18
260#
261DLLS += vboxvideo_drv_18
262vboxvideo_drv_18_TEMPLATE = VBOXGUESTR3XORGMOD
263vboxvideo_drv_18_CFLAGS := $(vboxvideo_drv_70_CFLAGS)
264vboxvideo_drv_18_DEFS := $(vboxvideo_15_DEFS) XORG_VERSION_CURRENT=10800000
265vboxvideo_drv_18_INCS = \
266 $(vboxvideo_xorg_INCS) \
267 $(VBOX_PATH_X11_ROOT)/xorg-server-1.8.0
268vboxvideo_drv_18_INCS += $(PATH_ROOT)/src/VBox/Runtime/include
269vboxvideo_drv_18_SOURCES := $(vboxvideo_drv_17_SOURCES)
270vboxvideo_drv_18_LIBS += $(vboxvideo_drv_70_LIBS)
271
272
273#
274# vboxvideo_drv_19
275#
276DLLS += vboxvideo_drv_19
277vboxvideo_drv_19_TEMPLATE = VBOXGUESTR3XORGMOD
278vboxvideo_drv_19_CFLAGS := $(vboxvideo_drv_70_CFLAGS)
279vboxvideo_drv_19_DEFS := $(vboxvideo_15_DEFS) XORG_VERSION_CURRENT=10900000
280vboxvideo_drv_19_INCS = \
281 $(vboxvideo_xorg_INCS) \
282 $(VBOX_PATH_X11_ROOT)/xorg-server-1.9.0
283vboxvideo_drv_19_INCS += $(PATH_ROOT)/src/VBox/Runtime/include
284vboxvideo_drv_19_SOURCES := $(vboxvideo_drv_17_SOURCES)
285vboxvideo_drv_19_LIBS += $(vboxvideo_drv_70_LIBS)
286
287
288#
289# vboxvideo_drv_110
290#
291DLLS += vboxvideo_drv_110
292vboxvideo_drv_110_TEMPLATE = VBOXGUESTR3XORGMOD
293vboxvideo_drv_110_CFLAGS := $(vboxvideo_drv_70_CFLAGS)
294vboxvideo_drv_110_DEFS := $(vboxvideo_15_DEFS) XORG_VERSION_CURRENT=11000000
295vboxvideo_drv_110_INCS = \
296 $(vboxvideo_xorg_INCS) \
297 $(VBOX_PATH_X11_ROOT)/xorg-server-1.10.0
298vboxvideo_drv_110_INCS += $(PATH_ROOT)/src/VBox/Runtime/include
299vboxvideo_drv_110_SOURCES := $(vboxvideo_drv_17_SOURCES)
300vboxvideo_drv_110_LIBS += $(vboxvideo_drv_70_LIBS)
301
302
303#
304# vboxvideo_drv_111
305#
306DLLS += vboxvideo_drv_111
307vboxvideo_drv_111_TEMPLATE = VBOXGUESTR3XORGMOD
308vboxvideo_drv_111_CFLAGS := $(vboxvideo_drv_70_CFLAGS)
309vboxvideo_drv_111_DEFS := $(vboxvideo_15_DEFS) XORG_VERSION_CURRENT=11100000
310vboxvideo_drv_111_INCS = \
311 $(vboxvideo_xorg_INCS) \
312 $(VBOX_PATH_X11_ROOT)/xorg-server-1.11.0
313vboxvideo_drv_111_INCS += $(PATH_ROOT)/src/VBox/Runtime/include
314vboxvideo_drv_111_SOURCES := $(vboxvideo_drv_17_SOURCES)
315vboxvideo_drv_111_LIBS += $(vboxvideo_drv_70_LIBS)
316
317
318#
319# vboxvideo_drv_112
320#
321DLLS += vboxvideo_drv_112
322vboxvideo_drv_112_TEMPLATE = VBOXGUESTR3XORGMOD
323vboxvideo_drv_112_CFLAGS := $(vboxvideo_drv_70_CFLAGS)
324vboxvideo_drv_112_DEFS := $(vboxvideo_15_DEFS) XORG_VERSION_CURRENT=11200000
325vboxvideo_drv_112_INCS = \
326 $(vboxvideo_xorg_INCS) \
327 $(VBOX_PATH_X11_ROOT)/xorg-server-1.12.0
328vboxvideo_drv_112_INCS += $(PATH_ROOT)/src/VBox/Runtime/include
329vboxvideo_drv_112_SOURCES := $(vboxvideo_drv_17_SOURCES)
330vboxvideo_drv_112_LIBS += $(vboxvideo_drv_70_LIBS)
331
332
333#
334# vboxvideo_drv_113
335#
336DLLS += vboxvideo_drv_113
337vboxvideo_drv_113_TEMPLATE = VBOXGUESTR3XORGMOD
338vboxvideo_drv_113_CFLAGS := $(vboxvideo_drv_70_CFLAGS)
339vboxvideo_drv_113_DEFS := $(vboxvideo_15_DEFS) XORG_VERSION_CURRENT=11300000
340vboxvideo_drv_113_INCS = \
341 $(vboxvideo_xorg_INCS) \
342 $(VBOX_PATH_X11_ROOT)/xorg-server-1.13.0
343vboxvideo_drv_113_INCS += $(PATH_ROOT)/src/VBox/Runtime/include
344vboxvideo_drv_113_SOURCES := $(vboxvideo_drv_17_SOURCES)
345vboxvideo_drv_113_LIBS += $(vboxvideo_drv_70_LIBS)
346
347
348#
349# vboxvideo_drv_114
350#
351DLLS += vboxvideo_drv_114
352vboxvideo_drv_114_TEMPLATE = VBOXGUESTR3XORGMOD
353vboxvideo_drv_114_CFLAGS := $(vboxvideo_drv_70_CFLAGS)
354vboxvideo_drv_114_DEFS := $(vboxvideo_15_DEFS) XORG_VERSION_CURRENT=11400000
355vboxvideo_drv_114_INCS = \
356 $(vboxvideo_xorg_INCS) \
357 $(VBOX_PATH_X11_ROOT)/xorg-server-1.14.0
358vboxvideo_drv_114_INCS += $(PATH_ROOT)/src/VBox/Runtime/include
359vboxvideo_drv_114_SOURCES := $(vboxvideo_drv_17_SOURCES)
360vboxvideo_drv_114_LIBS += $(vboxvideo_drv_70_LIBS)
361
362
363#
364# vboxvideo_drv_115
365#
366DLLS += vboxvideo_drv_115
367vboxvideo_drv_115_TEMPLATE = VBOXGUESTR3XORGMOD
368vboxvideo_drv_115_CFLAGS := $(vboxvideo_drv_70_CFLAGS)
369vboxvideo_drv_115_DEFS := $(vboxvideo_15_DEFS) XORG_VERSION_CURRENT=11500000
370vboxvideo_drv_115_INCS = \
371 $(vboxvideo_xorg_INCS) \
372 $(VBOX_PATH_X11_ROOT)/xorg-server-1.15.0
373vboxvideo_drv_115_INCS += $(PATH_ROOT)/src/VBox/Runtime/include
374vboxvideo_drv_115_SOURCES := $(vboxvideo_drv_17_SOURCES)
375vboxvideo_drv_115_LIBS += $(vboxvideo_drv_70_LIBS)
376
377
378#
379# vboxvideo_drv_116
380#
381DLLS += vboxvideo_drv_116
382vboxvideo_drv_116_TEMPLATE = VBOXGUESTR3XORGMOD
383vboxvideo_drv_116_CFLAGS := $(vboxvideo_drv_70_CFLAGS)
384vboxvideo_drv_116_DEFS := $(vboxvideo_15_DEFS) XORG_VERSION_CURRENT=11600000
385vboxvideo_drv_116_INCS = \
386 $(vboxvideo_xorg_INCS) \
387 $(VBOX_PATH_X11_ROOT)/xorg-server-1.16.0
388vboxvideo_drv_116_INCS += $(PATH_ROOT)/src/VBox/Runtime/include
389vboxvideo_drv_116_SOURCES := $(vboxvideo_drv_17_SOURCES)
390vboxvideo_drv_116_LIBS += $(vboxvideo_drv_70_LIBS)
391
392
393#
394# vboxvideo_drv_117
395#
396DLLS += vboxvideo_drv_117
397vboxvideo_drv_117_TEMPLATE = VBOXGUESTR3XORGMOD
398vboxvideo_drv_117_CFLAGS := $(vboxvideo_drv_70_CFLAGS)
399vboxvideo_drv_117_DEFS := $(vboxvideo_15_DEFS) XORG_VERSION_CURRENT=11700000
400vboxvideo_drv_117_INCS = \
401 $(vboxvideo_xorg_INCS) \
402 $(VBOX_PATH_X11_ROOT)/xorg-server-1.17.1
403vboxvideo_drv_117_INCS += $(PATH_ROOT)/src/VBox/Runtime/include
404vboxvideo_drv_117_SOURCES := $(vboxvideo_drv_17_SOURCES)
405vboxvideo_drv_117_LIBS += $(vboxvideo_drv_70_LIBS)
406
407
408#
409# vboxvideo_drv_118
410#
411DLLS += vboxvideo_drv_118
412vboxvideo_drv_118_TEMPLATE = VBOXGUESTR3XORGMOD
413vboxvideo_drv_118_CFLAGS := $(vboxvideo_drv_70_CFLAGS)
414vboxvideo_drv_118_DEFS := $(vboxvideo_15_DEFS) XORG_VERSION_CURRENT=11800000
415vboxvideo_drv_118_INCS = \
416 $(vboxvideo_xorg_INCS) \
417 $(VBOX_PATH_X11_ROOT)/xorg-server-1.18.0
418vboxvideo_drv_118_INCS += $(PATH_ROOT)/src/VBox/Runtime/include
419vboxvideo_drv_118_SOURCES := $(vboxvideo_drv_17_SOURCES)
420vboxvideo_drv_118_LIBS += $(vboxvideo_drv_70_LIBS)
421
422ifdef VBOX_USE_SYSTEM_XORG_HEADERS
423 # Build using local X.Org headers. We assume X.Org Server 1.7 or later.
424 DLLS := $(filter-out vboxvideo_drv_%,$(DLLS)) vboxvideo_drv_system
425 SYSMODS := $(filter-out vboxvideo_drv%,$(SYSMODS))
426 vboxvideo_drv_system_TEMPLATE = VBOXGUESTR3XORGMOD
427 vboxvideo_drv_system_CFLAGS := \
428 $(vboxvideo_drv_70_CFLAGS) -include xorg-server.h
429 vboxvideo_drv_system_DEFS := $(filter-out _XORG_SERVER_H_ _DIX_CONFIG_H_, $(vboxvideo_15_DEFS))
430 vboxvideo_drv_system_INCS += \
431 $(PATH_ROOT)/src/VBox/Runtime/include \
432 $(VBOX_GRAPHICS_INCS) \
433 /usr/include/x11 \
434 /usr/include/xorg \
435 /usr/include/pixman-1
436 vboxvideo_drv_system_SOURCES := $(vboxvideo_drv_17_SOURCES)
437endif
438
439
440# Check the undefined symbols in the X.Org modules against lists of allowed
441# symbols. Not very elegant, but it will catch problems early.
442
443ifdef VBOX_WITH_TESTCASES
444# ifndef VBOX_ONLY_ADDITIONS
445 ifndef VBOX_USE_SYSTEM_XORG_HEADERS
446 if1of ($(KBUILD_TARGET),linux solaris)
447 ifeq ($(KBUILD_HOST_ARCH),$(KBUILD_TARGET_ARCH))
448 ifndef VBOX_ONLY_SDK
449 VBOXVIDEO_SRC_PATH := $(PATH_SUB_CURRENT)
450
451 ifeq ($(KBUILD_TARGET),linux)
452 TESTING += $(vboxvideo_drv_0_OUTDIR)/tstvboxvideo68.run
453 OTHERS += $(vboxvideo_drv_0_OUTDIR)/tstvboxvideo68.run
454$$(vboxvideo_drv_0_OUTDIR)/tstvboxvideo68.run: $$(vboxvideo_drv_1_STAGE_TARGET)
455 $(QUIET)$(call MSG_L1,Checking for unresolved symbols in $<)
456 $(QUIET)$(ASH) $(PATH_ROOT)/src/bldprogs/checkUndefined.sh $(KBUILD_HOST) \
457 $(vboxvideo_drv_1_STAGE_TARGET) --static $(VBOXVIDEO_SRC_PATH)/../undefined_xfree86 $(VBOXVIDEO_SRC_PATH)/../undefined_xfree86_modules
458 $(QUIET)$(APPEND) -t "$@" "done"
459 endif
460
461##
462# Using the extra expansion to replace $(ver) before eval, thus everything
463# else needs escaped dollars.
464 define def_vboxvideo_test
465 TESTING += $$(vboxvideo_drv$(ver)_0_OUTDIR)/tstvboxvideo$(ver).run
466 OTHERS += $$(vboxvideo_drv$(ver)_0_OUTDIR)/tstvboxvideo$(ver).run
467 $$$$(vboxvideo_drv$(ver)_0_OUTDIR)/tstvboxvideo$(ver).run: $$$$(vboxvideo_drv$(ver)_1_STAGE_TARGET)
468 $$(QUIET)$$(call MSG_L1,Checking for unresolved symbols in $$<)
469 $$(QUIET)$$(ASH) $$(PATH_ROOT)/src/bldprogs/checkUndefined.sh $$(KBUILD_HOST) \
470 $$(vboxvideo_drv$(ver)_1_STAGE_TARGET) $$(VBOXVIDEO_SRC_PATH)/../undefined_xfree86 $(VBOXVIDEO_SRC_PATH)/../undefined_xfree86_modules $$(VBOXVIDEO_SRC_PATH)/../undefined_xorg
471 $$(QUIET)$$(APPEND) -t "$$@" "done"
472 endef
473
474 $(foreach ver, _70 _71 _13 _14 _15 _16 _17 _18 _19 _110 _111 _112 _113 _114 _115 _116 _117 _118, $(eval $(def_vboxvideo_test)))
475
476 endif # ! VBOX_ONLY_SDK
477 endif # eq ($(KBUILD_HOST_ARCH),$(KBUILD_TARGET_ARCH))
478 endif # 1of ($(KBUILD_TARGET),linux solaris)
479 endif # ! VBOX_USE_SYSTEM_XORG_HEADERS
480# endif # ! VBOX_ONLY_ADDITIONS
481endif # VBOX_WITH_TESTCASES
482
483include $(FILE_KBUILD_SUB_FOOTER)
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