Makefile.kmk revision 80523be8dba75b5eb32569fd72ddf54f3b009025
# $Id$
## @file
# Makefile for the VBox Linux Additions X.org graphics driver.
#
#
# Copyright (C) 2006-2007 innotek GmbH
#
# 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.
#
DEPTH = ../../../../..
include $(PATH_KBUILD)/header.kmk
if1of ($(BUILD_TARGET),linux l4)
SYSMODS = vboxvideo_drv
DLLS = vboxvideo_drv_70 vboxvideo_drv_71 vboxvideo_drv_13 vboxvideo_drv_14
# for BUILD_TARGET=l4
SUFF_DLL = .so
## @todo clean up this by switching to VBoxGuestR3Lib
VBOX_LIB_VBGL_R3 := $(PATH_LIB)/VBoxGuestR3LibLinux.a
vboxvideo_drv_TEMPLATE = VBOXLNX32GUESTR3EXE
vboxvideo_drv_SYSSUFF = .o
vboxvideo_drv_DEFS = \
linux __i386__ _POSIX_C_SOURCE=199309L _POSIX_SOURCE _XOPEN_SOURCE \
_BSD_SOURCE _SVID_SOURCE _GNU_SOURCE SHAPE XINPUT XKB LBX XAPPGROUP \
XCSECURITY TOGCUP XF86BIGFONT DPMSExtension PIXPRIV PANORAMIX RENDER \
GCCUSESGAS AVOID_GLYPHBLT PIXPRIV SINGLEDEPTH XFreeXDGA XvExtension \
XFree86LOADER XFree86Server XF86VIDMODE XvMCExtension SMART_SCHEDULE \
BUILDDEBUG X_BYTE_ORDER=X_LITTLE_ENDIAN DNDEBUG FUNCPROTO=15 NARROWPROTO \
IN_MODULE XFree86Module \
IN_RING3 VBOX
vboxvideo_drv_CFLAGS.linux := \
-fno-merge-constants -Wno-conversion -Wno-unused-parameter \
$(VBOX_GCC_Wno-variadic-macros)
vboxvideo_drv_LDFLAGS.release = -S
ARGB_CURSORS=1
ifdef ARGB_CURSORS
vboxvideo_drv_INCS = \
../x11include/4.3/include \
../x11include/4.3/include/extensions \
../x11include/4.3/include/fonts \
../x11include/4.3/programs/Xserver/afb \
../x11include/4.3/programs/Xserver/include \
../x11include/4.3/programs/Xserver/fb \
../x11include/4.3/programs/Xserver/hw/xfree86 \
../x11include/4.3/programs/Xserver/hw/xfree86/common \
../x11include/4.3/programs/Xserver/hw/xfree86/ddc \
../x11include/4.3/programs/Xserver/hw/xfree86/int10 \
../x11include/4.3/programs/Xserver/hw/xfree86/i2c \
../x11include/4.3/programs/Xserver/hw/xfree86/os-support \
../x11include/4.3/programs/Xserver/hw/xfree86/vbe \
../x11include/4.3/programs/Xserver/hw/xfree86/os-support/bus \
../x11include/4.3/programs/Xserver/hw/xfree86/rac \
../x11include/4.3/programs/Xserver/hw/xfree86/ramdac \
../x11include/4.3/programs/Xserver/hw/xfree86/shadowfb \
../x11include/4.3/programs/Xserver/hw/xfree86/vgahw \
../x11include/4.3/programs/Xserver/hw/xfree86/xf1bpp \
../x11include/4.3/programs/Xserver/hw/xfree86/xf24_32bpp \
../x11include/4.3/programs/Xserver/hw/xfree86/xf4bpp \
../x11include/4.3/programs/Xserver/mfb \
../x11include/4.3/programs/Xserver/mi \
../x11include/4.3/programs/Xserver/miext/shadow \
../x11include/4.3/programs/Xserver/render \
../x11include/4.3/programs/Xserver/Xext
else
vboxvideo_drv_INCS = \
../x11include/4.2/exports/include/X11 \
../x11include/4.2/include \
../x11include/4.2/include/extensions \
../x11include/4.2/include/fonts \
../x11include/4.2/programs/Xserver/afb \
../x11include/4.2/programs/Xserver/include \
../x11include/4.2/programs/Xserver/fb \
../x11include/4.2/programs/Xserver/hw/xfree86/common \
../x11include/4.2/programs/Xserver/hw/xfree86/ddc \
../x11include/4.2/programs/Xserver/hw/xfree86/int10 \
../x11include/4.2/programs/Xserver/hw/xfree86/i2c \
../x11include/4.2/programs/Xserver/hw/xfree86/os-support \
../x11include/4.2/programs/Xserver/hw/xfree86/os-support/bus \
../x11include/4.2/programs/Xserver/hw/xfree86/os-support/vbe \
../x11include/4.2/programs/Xserver/hw/xfree86/rac \
../x11include/4.2/programs/Xserver/hw/xfree86/ramdac \
../x11include/4.2/programs/Xserver/hw/xfree86/shadowfb \
../x11include/4.2/programs/Xserver/hw/xfree86/vgahw \
../x11include/4.2/programs/Xserver/hw/xfree86/xf1bpp \
../x11include/4.2/programs/Xserver/hw/xfree86/xf24_32bpp \
../x11include/4.2/programs/Xserver/hw/xfree86/xf4bpp \
../x11include/4.2/programs/Xserver/mfb \
../x11include/4.2/programs/Xserver/mi \
../x11include/4.2/programs/Xserver/miext/shadow \
../x11include/4.2/programs/Xserver/render \
../x11include/4.2/programs/Xserver/Xext
endif
vboxvideo_drv_SOURCES = \
vboxvideo_68.c \
vboxutils-new.c
vboxvideo_drv_LIBS = \
$(VBOX_LIB_VBGL_R3_XFREE86)
vboxvideo_drv_70_TEMPLATE = VBOXLNX32GUESTR3DLLNOCPP
vboxvideo_drv_70_DEFS := \
XFree86Server IN_MODULE XFree86Module XFree86LOADER \
IN_RING3 VBOX XORG_7X PIC RENDER=1
vboxvideo_drv_70_CFLAGS.linux := \
-Wno-conversion -Wno-unused-parameter \
$(VBOX_GCC_Wno-variadic-macros) -std=c99
vboxvideo_drv_70_LDFLAGS = -s
vboxvideo_drv_70_INCS = \
../x11include/7.0 \
../x11include/7.0/X11 \
../x11include/7.0/xorg
vboxvideo_drv_70_SOURCES = \
vboxvideo_70.c \
vboxutils-new.c
vboxvideo_drv_70_LIBS = \
$(VBOX_LIB_VBGL_R3) \
$(VBOX_LIB_IPRT_GUEST_R3_MINI) \
$(VBOX_LIB_VBGL_R3)
vboxvideo_drv_71_TEMPLATE = VBOXLNX32GUESTR3DLLNOCPP
vboxvideo_drv_71_DEFS := $(vboxvideo_drv_70_DEFS)
vboxvideo_drv_71_CFLAGS.linux := $(vboxvideo_drv_70_CFLAGS.linux)
vboxvideo_drv_71_LDFLAGS = -s
vboxvideo_drv_71_INCS = \
../x11include/7.1 \
../x11include/7.1/X11 \
../x11include/7.1/xorg
vboxvideo_drv_71_SOURCES = \
vboxvideo_70.c \
vboxutils-new.c
vboxvideo_drv_71_LIBS = \
$(VBOX_LIB_VBGL_R3) \
$(VBOX_LIB_IPRT_GUEST_R3_MINI) \
$(VBOX_LIB_VBGL_R3)
vboxvideo_drv_13_TEMPLATE = VBOXLNX32GUESTR3DLLNOCPP
vboxvideo_drv_13_DEFS := $(vboxvideo_drv_70_DEFS)
vboxvideo_drv_13_CFLAGS.linux := $(vboxvideo_drv_70_CFLAGS.linux)
vboxvideo_drv_13_LDFLAGS = -s
vboxvideo_drv_13_INCS = \
../x11include/1.3 \
../x11include/1.3/X11 \
../x11include/1.3/xorg
vboxvideo_drv_13_SOURCES = \
vboxvideo_13.c \
vboxutils-new.c
vboxvideo_drv_13_LIBS = \
$(VBOX_LIB_VBGL_R3) \
$(VBOX_LIB_IPRT_GUEST_R3_MINI) \
$(VBOX_LIB_VBGL_R3)
vboxvideo_drv_14_TEMPLATE = VBOXLNX32GUESTR3DLLNOCPP
vboxvideo_drv_14_DEFS := $(vboxvideo_drv_70_DEFS)
vboxvideo_drv_14_CFLAGS.linux := $(vboxvideo_drv_70_CFLAGS.linux)
vboxvideo_drv_14_LDFLAGS = -s
vboxvideo_drv_14_INCS = \
../x11include/1.4 \
../x11include/1.4/X11 \
../x11include/1.4/xorg
# The actual source has not changed from the 1.3 driver, but the headers
# have. To be safe, build the driver for 1.4 separately.
vboxvideo_drv_14_SOURCES = \
vboxvideo_13.c \
vboxutils-new.c
vboxvideo_drv_14_LIBS = \
$(VBOX_LIB_VBGL_R3) \
$(VBOX_LIB_IPRT_GUEST_R3_MINI) \
$(VBOX_LIB_VBGL_R3)
endif
ifeq ($(BUILD_TARGET),solaris)
DLLS = vboxvideo_drv
vboxvideo_drv_TEMPLATE = VBOXGUESTR3DLL
vboxvideo_drv_DEFS := \
XFree86Server IN_MODULE XFree86Module XFree86LOADER \
IN_RING3 VBOX XORG_7X RENDER=1
vboxvideo_drv_INCS = \
../x11include/7.1 \
../x11include/7.1/X11 \
../x11include/7.1/xorg
vboxvideo_drv_SOURCES = \
vboxvideo_70.c \
vboxutils-new.c
vboxvideo_drv_LIBS = \
$(VBOX_LIB_VBGL_R3) \
$(VBOX_LIB_IPRT_GUEST_R3_MINI) \
$(VBOX_LIB_VBGL_R3)
## @todo Use VBOX_LIB_IPRT_GUEST_R3_MINI instead of VBOX_LIB_IPRT_GUEST_R3?
endif
include $(PATH_KBUILD)/footer.kmk