Makefile.kmk revision 3448d69ec2f383fbcb48c0c8e395cd8661103c3c
# $Id$
## @file
# Sub-Makefile for VBoxVideo.
#
#
# Copyright (C) 2006-2007 Oracle Corporation
#
# 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.
#
SUB_DEPTH = ../../../../../..
include $(KBUILD_PATH)/subheader.kmk
#
# VBoxVideo
#
# Note. This has to run on NT4!
# (VBOX_LIB_IPRT_GUEST_R0_NT4 == VBOX_LIB_IPRT_GUEST_R0 on 64-bit)
#
SYSMODS += VBoxVideo
VBoxVideo_TEMPLATE = VBOXGUESTR0
ifdef VBOX_SIGN_ADDITIONS # (See the parent makefile.)
VBoxVideo_NOINST = true
endif
VBoxVideo_DEFS = LOG_TO_BACKDOOR VBOX_WITH_8BPP_MODES
ifdef VBOX_WITH_HGSMI
VBoxVideo_DEFS += VBOX_WITH_HGSMI
endif
ifdef VBOX_WITH_VIDEOHWACCEL
VBoxVideo_DEFS += VBOX_WITH_VIDEOHWACCEL
endif
VBoxVideo_DEFS += VBOX_WITH_MULTIMONITOR_FIX
#VBoxVideo_DEFS += LOG_ENABLED
VBoxVideo_INCS = ../../include
VBoxVideo_LDFLAGS.x86 = /Entry:DriverEntry@8
VBoxVideo_LDFLAGS.amd64 = /Entry:DriverEntry
VBoxVideo_SOURCES = \
VBoxVideo.cpp \
Helper.cpp \
VBoxVideo.def \
VBoxVideo.rc
ifdef VBOX_WITH_HGSMI
VBoxVideo_SOURCES += \
VBoxVideoHGSMI.cpp
endif
VBoxVideo_LIBS.x86 = \
$(PATH_SDK_W2K3DDK_LIB)/exsup.lib
VBoxVideo_LIBS = \
$(PATH_SDK_W2K3DDK_LIB)/videoprt.lib \
$(PATH_SDK_W2K3DDK_LIB)/ntoskrnl.lib \
$(PATH_SDK_W2K3DDK_LIB)/hal.lib \
$(VBOX_LIB_VBGL_R0) \
$(VBOX_LIB_IPRT_GUEST_R0_NT4)
ifdef VBOX_WITH_HGSMI
VBoxVideo_LIBS += \
$(VBOX_PATH_ADDITIONS_LIB)/HGSMIGuestR0Lib$(VBOX_SUFF_LIB)
endif
ifdef VBOX_WITH_WDDM
#
# VBoxVideoWddm
#
SYSMODS += VBoxVideoWddm
VBoxVideoWddm_TEMPLATE = VBOXGUESTR0
ifdef VBOX_SIGN_ADDITIONS # (See the parent makefile.)
VBoxVideoWddm_NOINST = true
endif
VBoxVideoWddm_SDKS=WINDDKWLH
VBoxVideoWddm_DEFS += VBOX_WITH_8BPP_MODES
VBoxVideoWddm_DEFS += VBOX_WITH_HGSMI VBOX_WITH_WDDM
ifdef VBOX_WITH_VIDEOHWACCEL
VBoxVideoWddm_DEFS += VBOX_WITH_VIDEOHWACCEL
endif
ifdef VBOXWDDM_WITH_VBVA
VBoxVideoWddm_DEFS += VBOXWDDM_WITH_VBVA
VBoxVideoWddm_DEFS += VBOXWDDM_RENDER_FROM_SHADOW
ifdef VBOXVDMA_WITH_VBVA
VBoxVideoWddm_DEFS += VBOXVDMA_WITH_VBVA
endif
endif
ifdef VBOX_WITH_VDMA
VBoxVideoWddm_DEFS += VBOX_WITH_VDMA
endif
ifdef DEBUG_misha
VBoxVideoWddm_DEFS += LOG_ENABLED
endif
#VBoxVideoWddm_DEFS += VBOX_WITH_MULTIMONITOR_FIX
#VBoxVideoWddm_DEFS += LOG_TO_BACKDOOR
VBoxVideoWddm_INCS += ../../include
VBoxVideoWddm_LDFLAGS.x86 += /Entry:DriverEntry@8
VBoxVideoWddm_LDFLAGS.amd64 += /Entry:DriverEntry
VBoxVideoWddm_SOURCES = \
VBoxVideoHGSMI.cpp \
VBoxVideo.cpp \
Helper.cpp \
wddm/VBoxVideoWddm.cpp \
wddm/VBoxVideoVidPn.cpp \
wddm/VBoxVideoVdma.cpp \
wddm/VBoxVideoShgsmi.cpp \
wddm/VBoxVideoCm.cpp \
wddm/VBoxVideoMisc.cpp \
wddm/VBoxVideoWddm.rc
ifdef VBOXWDDM_WITH_VBVA
VBoxVideoWddm_SOURCES += \
wddm/VBoxVideoVbva.cpp
endif
ifdef VBOX_WITH_VIDEOHWACCEL
VBoxVideoWddm_SOURCES += \
wddm/VBoxVideoVhwa.cpp
endif
VBoxVideoWddm_LIBS.x86 = \
$(PATH_SDK_WINDDKWLH_LIB)/BufferOverflowK.lib
#VBoxVideoWddm_LIBS.x86 += \
# $(PATH_SDK_WINDDKWLH_LIB)/exsup.lib
VBoxVideoWddm_LIBS = \
$(PATH_SDK_WINDDKWLH_LIB)/ntoskrnl.lib \
$(PATH_SDK_WINDDKWLH_LIB)/hal.lib \
$(PATH_SDK_WINDDKWLH_LIB)/displib.lib \
$(VBOX_LIB_VBGL_R0) \
$(VBOX_LIB_IPRT_GUEST_R0_NT4) \
$(VBOX_PATH_ADDITIONS_LIB)/HGSMIGuestR0Lib$(VBOX_SUFF_LIB)
endif # VBOX_WITH_WDDM
include $(KBUILD_PATH)/subfooter.kmk