VirtualBox

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

Last change on this file since 54163 was 54163, checked in by vboxsync, 10 years ago

Additions/x11/vboxvideo: support X.Org Server 1.17 (still untested).

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