# $Id$
## @file
# Sub-Makefile for VBoxTray.
#
#
# Copyright (C) 2006-2014 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
PROGRAMS += VBoxTray
VBoxTray_TEMPLATE = NewVBoxGuestR3Exe
ifdef VBOX_SIGN_ADDITIONS # (See the parent makefile.)
VBoxTray_INSTTYPE = none
VBoxTray_DEBUG_INSTTYPE = both
endif
VBoxTray_SDKS = ReorderCompilerIncs $(VBOX_WINDDK_GST)
VBoxTray_DEFS = \
VBOX_WITH_HGCM \
VBOX_BUILD_TARGET=\"$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH)\"
VBoxTray_INCS = ../include
VBoxTray_SOURCES = \
VBoxTray.cpp \
VBoxDispIf.cpp \
VBoxSeamless.cpp \
VBoxClipboard.cpp \
VBoxDisplay.cpp \
VBoxVRDP.cpp \
VBoxIPC.cpp \
VBoxHelpers.cpp \
VBoxTray.rc
ifdef VBOX_WITH_DRAG_AND_DROP
VBoxTray_DEFS += \
VBOX_WITH_DRAG_AND_DROP \
$(if $(VBOX_WITH_DRAG_AND_DROP_GH),VBOX_WITH_DRAG_AND_DROP_GH,)
VBoxTray_SOURCES += \
VBoxDnD.cpp \
VBoxDnDDataObject.cpp \
VBoxDnDEnumFormat.cpp \
VBoxDnDDropSource.cpp \
VBoxDnDDropTarget.cpp
VBoxTray_LIBS += \
$(PATH_STAGE_LIB)/additions/VBoxDnDGuestR3Lib$(VBOX_SUFF_LIB)
endif
ifdef VBOX_WITH_GUEST_PROPS
VBoxTray_DEFS += _WIN32_IE=0x500 VBOX_WITH_GUEST_PROPS
VBoxTray_SOURCES += \
VBoxHostVersion.cpp \
VBoxLA.cpp
endif
ifdef VBOX_WITH_SHARED_FOLDERS
VBoxTray_DEFS += VBOX_WITH_SHARED_FOLDERS
VBoxTray_SOURCES += \
VBoxSharedFolders.cpp
VBoxTray_LIBS.win += \
mpr.lib
endif
ifdef VBOX_WITH_WDDM
VBoxTray_DEFS += VBOX_WITH_WDDM
# VBoxTray_DEFS += LOG_ENABLED
VBoxTray_SOURCES += ../Graphics/Video/disp/wddm/VBoxDispKmt.cpp
endif
# VBoxTray.cpp uses VBOX_SVN_REV.
VBoxTray.cpp_DEFS += VBOX_SVN_REV=$(VBOX_SVN_REV)
VBoxTray.cpp_DEPS = $(VBOX_SVN_REV_KMK)
# The icon location is configurable.
VBoxTray.rc_INCS = $(VBoxTray_0_OUTDIR)
VBoxTray.rc_DEPS = $(VBoxTray_0_OUTDIR)/VBoxTray-icon.rc
VBoxTray.rc_CLEAN = $(VBoxTray_0_OUTDIR)/VBoxTray-icon.rc
# Icon include file.
$$(VBoxTray_0_OUTDIR)/VBoxTray-icon.rc: $(VBOX_WINDOWS_ADDITIONS_ICON_FILE) $$(VBoxTray_DEFPATH)/Makefile.kmk | $$(dir $$@)
$(RM) -f $@
$(APPEND) $@ 'IDI_VIRTUALBOX ICON DISCARDABLE "$(subst /,\\,$(VBOX_WINDOWS_ADDITIONS_ICON_FILE))"'
include $(FILE_KBUILD_SUB_FOOTER)