Makefile.kmk revision 82391de567696f10b21a762fde6a06fe3c266d28
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync# $Id$
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync## @file
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync# Sub-Makefile for VBoxTray.
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync#
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync#
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync# Copyright (C) 2006-2014 Oracle Corporation
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync#
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync# This file is part of VirtualBox Open Source Edition (OSE), as
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync# available from http://www.virtualbox.org. This file is free software;
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync# you can redistribute it and/or modify it under the terms of the GNU
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync# General Public License (GPL) as published by the Free Software
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync# Foundation, in version 2 as it comes in the "COPYING" file of the
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync#
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsyncSUB_DEPTH = ../../../../..
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsyncinclude $(KBUILD_PATH)/subheader.kmk
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsyncPROGRAMS += VBoxTray
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsyncVBoxTray_TEMPLATE = NewVBoxGuestR3Exe
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsyncifdef VBOX_SIGN_ADDITIONS # (See the parent makefile.)
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxTray_INSTTYPE = none
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxTray_DEBUG_INSTTYPE = both
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsyncendif
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsyncVBoxTray_SDKS = ReorderCompilerIncs $(VBOX_WINDDK_GST)
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsyncVBoxTray_DEFS = \
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBOX_WITH_HGCM \
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBOX_BUILD_TARGET=\"$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH)\"
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsyncVBoxTray_INCS = ../include
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsyncVBoxTray_SOURCES = \
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxTray.cpp \
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxDispIf.cpp \
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxSeamless.cpp \
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxClipboard.cpp \
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxDisplay.cpp \
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxVRDP.cpp \
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxRestore.cpp \
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxIPC.cpp \
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxHelpers.cpp \
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxTray.rc
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsyncifdef VBOX_WITH_DRAG_AND_DROP
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxTray_DEFS += \
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBOX_WITH_DRAG_AND_DROP \
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync $(if $(VBOX_WITH_DRAG_AND_DROP_GH),VBOX_WITH_DRAG_AND_DROP_GH,)
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxTray_SOURCES += \
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxDnD.cpp \
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxDnDDataObject.cpp \
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxDnDEnumFormat.cpp \
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxDnDDropSource.cpp \
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxDnDDropTarget.cpp
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxTray_LIBS += \
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync $(PATH_STAGE_LIB)/additions/VBoxDnDGuestR3Lib$(VBOX_SUFF_LIB)
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsyncendif
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsyncifdef VBOX_WITH_GUEST_PROPS
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxTray_DEFS += _WIN32_IE=0x500 VBOX_WITH_GUEST_PROPS
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxTray_SOURCES += \
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxHostVersion.cpp \
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxLA.cpp
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsyncendif
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsyncifdef VBOX_WITH_SHARED_FOLDERS
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxTray_DEFS += VBOX_WITH_SHARED_FOLDERS
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxTray_SOURCES += \
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxSharedFolders.cpp
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxTray_LIBS.win += \
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync mpr.lib
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsyncendif
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsyncifdef VBOX_WITH_MMR
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxTray_DEFS += VBOX_WITH_MMR
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxTray_SOURCES += \
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxMMR.cpp
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsyncendif
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsyncifdef VBOX_WITH_WDDM
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxTray_DEFS += VBOX_WITH_WDDM
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync # VBoxTray_DEFS += LOG_ENABLED
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync VBoxTray_SOURCES += ../Graphics/Video/disp/wddm/VBoxDispKmt.cpp
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsyncendif
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync# VBoxTray.cpp uses VBOX_SVN_REV.
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsyncVBoxTray.cpp_DEFS += VBOX_SVN_REV=$(VBOX_SVN_REV)
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsyncVBoxTray.cpp_DEPS = $(VBOX_SVN_REV_KMK)
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync# The icon location is configurable.
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsyncVBoxTray.rc_INCS = $(VBoxTray_0_OUTDIR)
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsyncVBoxTray.rc_DEPS = $(VBoxTray_0_OUTDIR)/VBoxTray-icon.rc
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsyncVBoxTray.rc_CLEAN = $(VBoxTray_0_OUTDIR)/VBoxTray-icon.rc
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync# Icon include file.
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync$$(VBoxTray_0_OUTDIR)/VBoxTray-icon.rc: $(VBOX_WINDOWS_ADDITIONS_ICON_FILE) $$(VBoxTray_DEFPATH)/Makefile.kmk | $$(dir $$@)
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync $(RM) -f $@
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync $(APPEND) $@ 'IDI_VIRTUALBOX ICON DISCARDABLE "$(subst /,\\,$(VBOX_WINDOWS_ADDITIONS_ICON_FILE))"'
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsyncinclude $(FILE_KBUILD_SUB_FOOTER)
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync
0c64f283f499a1ec6e8861ea98e7f252284e8358vboxsync