VirtualBox

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

Last change on this file since 58944 was 58944, checked in by vboxsync, 9 years ago

xpcom, Additions/x11: _BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE

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