# $Id: Makefile.kmk 80862 2019-09-17 14:45:21Z vboxsync $ ## @file # Sub-Makefile for VBoxTray. # # # Copyright (C) 2006-2019 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 = VBoxGuestR3Exe 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 \ $(PATH_ROOT)/src/VBox/Additions/WINNT/Graphics/Video/disp/wddm/shared \ $(VBOX_GRAPHICS_INCS) VBoxTray_SOURCES = \ VBoxTray.cpp \ VBoxDispIf.cpp \ VBoxSeamless.cpp \ VBoxDisplay.cpp \ VBoxVRDP.cpp \ VBoxIPC.cpp \ VBoxHelpers.cpp \ VBoxTray.rc VBoxTray_USES.win = vboximportchecker VBoxTray_VBOX_IMPORT_CHECKER.win.x86 = nt4 #nt350 VBoxTray_VBOX_IMPORT_CHECKER.win.amd64 = xp64 ifdef VBOX_WITH_SHARED_CLIPBOARD VBoxTray_DEFS += \ $(if $(VBOX_WITH_SHARED_CLIPBOARD),VBOX_WITH_SHARED_CLIPBOARD,) \ $(if $(VBOX_WITH_SHARED_CLIPBOARD_TRANSFERS),VBOX_WITH_SHARED_CLIPBOARD_TRANSFERS,) VBoxTray_SOURCES += \ VBoxClipboard.cpp \ $(PATH_ROOT)/src/VBox/GuestHost/SharedClipboard/clipboard-win.cpp \ $(PATH_ROOT)/src/VBox/GuestHost/SharedClipboard/clipboard-common.cpp ifdef VBOX_WITH_SHARED_CLIPBOARD_TRANSFERS VBoxTray_DEFS += VBOX_WITH_SHARED_CLIPBOARD_GUEST VBoxTray_SOURCES += \ $(PATH_ROOT)/src/VBox/GuestHost/SharedClipboard/ClipboardArea.cpp \ $(PATH_ROOT)/src/VBox/GuestHost/SharedClipboard/ClipboardDataObjectImpl-win.cpp \ $(PATH_ROOT)/src/VBox/GuestHost/SharedClipboard/ClipboardEnumFormatEtcImpl-win.cpp \ $(PATH_ROOT)/src/VBox/GuestHost/SharedClipboard/ClipboardPath.cpp \ $(PATH_ROOT)/src/VBox/GuestHost/SharedClipboard/ClipboardStreamImpl-win.cpp \ $(PATH_ROOT)/src/VBox/GuestHost/SharedClipboard/clipboard-transfers.cpp endif endif 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_WDDM VBoxTray_DEFS += VBOX_WITH_WDDM # VBoxTray_DEFS += LOG_ENABLED VBoxTray_SOURCES += $(PATH_ROOT)/src/VBox/Additions/WINNT/Graphics/Video/disp/wddm/shared/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)