039cd2c4871a00e51af909222a34695d9cec3000vboxsync# $Id$
039cd2c4871a00e51af909222a34695d9cec3000vboxsync## @file
039cd2c4871a00e51af909222a34695d9cec3000vboxsync# Sub-Makefile for the Shared Clipboard Host Service.
039cd2c4871a00e51af909222a34695d9cec3000vboxsync#
039cd2c4871a00e51af909222a34695d9cec3000vboxsync
039cd2c4871a00e51af909222a34695d9cec3000vboxsync#
772269936494ffaddd0750ba9e28e805ba81398cvboxsync# Copyright (C) 2006-2012 Oracle Corporation
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync#
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync# This file is part of VirtualBox Open Source Edition (OSE), as
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync# available from http://www.virtualbox.org. This file is free software;
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync# you can redistribute it and/or modify it under the terms of the GNU
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync# General Public License (GPL) as published by the Free Software
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync# Foundation, in version 2 as it comes in the "COPYING" file of the
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync#
039cd2c4871a00e51af909222a34695d9cec3000vboxsync
12cd783de945853c8fc377095e8d0bbd4c97d8a1vboxsyncSUB_DEPTH = ../../../..
27537ffef7291d0bb3a24e459a6b94c65586defevboxsyncinclude $(KBUILD_PATH)/subheader.kmk
039cd2c4871a00e51af909222a34695d9cec3000vboxsync
fa995cb0311abdf0d0995b668120baf9dd31aa97vboxsync# Include sub-makefile(s).
fa995cb0311abdf0d0995b668120baf9dd31aa97vboxsyncinclude $(PATH_SUB_CURRENT)/testcase/Makefile.kmk
fa995cb0311abdf0d0995b668120baf9dd31aa97vboxsync
039cd2c4871a00e51af909222a34695d9cec3000vboxsync#
039cd2c4871a00e51af909222a34695d9cec3000vboxsync# The shared folder service DLL.
039cd2c4871a00e51af909222a34695d9cec3000vboxsync#
039cd2c4871a00e51af909222a34695d9cec3000vboxsyncDLLS += VBoxSharedClipboard
039cd2c4871a00e51af909222a34695d9cec3000vboxsyncVBoxSharedClipboard_TEMPLATE = VBOXR3
3f8fa562bb916e87b0beff9ec2a4e241c643dcc8vboxsyncVBoxSharedClipboard_DEFS = VBOX_WITH_HGCM
039cd2c4871a00e51af909222a34695d9cec3000vboxsyncVBoxSharedClipboard_INCS.win = \
039cd2c4871a00e51af909222a34695d9cec3000vboxsync $(VBOX_PATH_SDK)
039cd2c4871a00e51af909222a34695d9cec3000vboxsync
039cd2c4871a00e51af909222a34695d9cec3000vboxsyncVBoxSharedClipboard_SOURCES = \
039cd2c4871a00e51af909222a34695d9cec3000vboxsync service.cpp
039cd2c4871a00e51af909222a34695d9cec3000vboxsyncVBoxSharedClipboard_SOURCES.win = \
85fc7dbf8f928aea2a6fddde85a77950f69284ddvboxsync VBoxClipboard-win.cpp \
85fc7dbf8f928aea2a6fddde85a77950f69284ddvboxsync VBoxSharedClipboard.rc
dc23707aec4dc2ce2c6b6f51af21eef72bb8bf2evboxsyncVBoxSharedClipboard_SOURCES.darwin = \
dc23707aec4dc2ce2c6b6f51af21eef72bb8bf2evboxsync darwin.cpp \
af1bd0025dd5d8be5f1468689d0d77d4839a3be5vboxsync $(PATH_ROOT)/src/VBox/GuestHost/SharedClipboard/clipboard-helper.cpp \
32ded45b3caba42c8a2315a20bbfabb513fa54c1vboxsync darwin-pasteboard.cpp
1032ee3ece58eb60a4d3fb08ff5be8b848eb98bbvboxsyncif1of ($(KBUILD_TARGET), linux solaris freebsd) ## @todo X11
ab9c7333d588df5d6959a3b2c96c60321d26c4b0vboxsync ifndef VBOX_HEADLESS
ab9c7333d588df5d6959a3b2c96c60321d26c4b0vboxsync VBoxSharedClipboard_SOURCES += \
af1bd0025dd5d8be5f1468689d0d77d4839a3be5vboxsync $(PATH_ROOT)/src/VBox/GuestHost/SharedClipboard/clipboard-helper.cpp \
b26977a29bd8af11e3059ef8fb47a92a1241f20dvboxsync $(PATH_ROOT)/src/VBox/GuestHost/SharedClipboard/x11-clipboard.cpp \
64a48ec134be9af6c232948fb8906edc6f385f61vboxsync x11-clipboard.cpp
ab9c7333d588df5d6959a3b2c96c60321d26c4b0vboxsync else
ab9c7333d588df5d6959a3b2c96c60321d26c4b0vboxsync VBoxSharedClipboard_SOURCES += \
3f279f58d7fa1cfb1ef999f80968cf3aefc0680cvboxsync x11-stub.cpp
ab9c7333d588df5d6959a3b2c96c60321d26c4b0vboxsync endif
9e57274211125689926b35d1916c0c5c82b33670vboxsyncendif
039cd2c4871a00e51af909222a34695d9cec3000vboxsync
039cd2c4871a00e51af909222a34695d9cec3000vboxsyncVBoxSharedClipboard_LIBS = \
039cd2c4871a00e51af909222a34695d9cec3000vboxsync $(LIB_VMM) \
039cd2c4871a00e51af909222a34695d9cec3000vboxsync $(LIB_RUNTIME) \
039cd2c4871a00e51af909222a34695d9cec3000vboxsync $(LIB_REM)
e001cafceea8efd540f21109f6ab293f744ebb0bvboxsyncif1of ($(KBUILD_TARGET), linux solaris freebsd)
ab9c7333d588df5d6959a3b2c96c60321d26c4b0vboxsync ifndef VBOX_HEADLESS
ab9c7333d588df5d6959a3b2c96c60321d26c4b0vboxsync VBoxSharedClipboard_LIBPATH = \
53ed059bdb30c2b20a3f329602bb715d75ab7d56vboxsync $(VBOX_LIBPATH_X11)
ab9c7333d588df5d6959a3b2c96c60321d26c4b0vboxsync VBoxSharedClipboard_LIBS += \
53ed059bdb30c2b20a3f329602bb715d75ab7d56vboxsync Xt \
53ed059bdb30c2b20a3f329602bb715d75ab7d56vboxsync X11
ab9c7333d588df5d6959a3b2c96c60321d26c4b0vboxsync endif
9e57274211125689926b35d1916c0c5c82b33670vboxsyncendif
039cd2c4871a00e51af909222a34695d9cec3000vboxsync
1c2c968fd241148110002d75b2c0fdeddc211e14vboxsyncVBoxSharedClipboard_LDFLAGS.darwin = \
1c2c968fd241148110002d75b2c0fdeddc211e14vboxsync -framework ApplicationServices -install_name $(VBOX_DYLD_EXECUTABLE_PATH)/VBoxSharedClipboard.dylib
dc23707aec4dc2ce2c6b6f51af21eef72bb8bf2evboxsync
c4fd771ce163c73d7ac90e267e84de29314f5e97vboxsyncif defined(VBOX_WITH_TESTCASES) && !defined(VBOX_ONLY_ADDITIONS) && !defined(VBOX_ONLY_SDK)
c4fd771ce163c73d7ac90e267e84de29314f5e97vboxsync if1of ($(KBUILD_TARGET), freebsd linux netbsd openbsd solaris)
c4fd771ce163c73d7ac90e267e84de29314f5e97vboxsync #
c4fd771ce163c73d7ac90e267e84de29314f5e97vboxsync # Set this in LocalConfig.kmk if you are working on the X11 clipboard service
c4fd771ce163c73d7ac90e267e84de29314f5e97vboxsync # to automatically run the unit test at build time.
bbc0a3fc49446bf8fa1fcfe669c10875701692bcvboxsync # OTHERS += $(tstClipboardX11-2_0_OUTDIR)/tstClipboardX11-2.run
c4fd771ce163c73d7ac90e267e84de29314f5e97vboxsync PROGRAMS += tstClipboardX11-2
bbc0a3fc49446bf8fa1fcfe669c10875701692bcvboxsync TESTING += $(tstClipboardX11-2_0_OUTDIR)/tstClipboardX11-2.run
c4fd771ce163c73d7ac90e267e84de29314f5e97vboxsync tstClipboardX11-2_TEMPLATE = VBOXR3TSTEXE
c4fd771ce163c73d7ac90e267e84de29314f5e97vboxsync tstClipboardX11-2_DEFS = VBOX_WITH_HGCM TESTCASE
c4fd771ce163c73d7ac90e267e84de29314f5e97vboxsync tstClipboardX11-2_SOURCES = x11-clipboard.cpp
c4fd771ce163c73d7ac90e267e84de29314f5e97vboxsync tstClipboardX11-2_LIBS = $(LIB_RUNTIME)
bbc0a3fc49446bf8fa1fcfe669c10875701692bcvboxsync tstClipboardX11-2_CLEANS = $(tstClipboardX11-2_0_OUTDIR)/tstClipboardX11-2.run
039cd2c4871a00e51af909222a34695d9cec3000vboxsync
6144154d0dabfabf32622da8f5f8afc82f31e763vboxsync$$(tstClipboardX11-2_0_OUTDIR)/tstClipboardX11-2.run: $$(tstClipboardX11-2_1_STAGE_TARGET)
6144154d0dabfabf32622da8f5f8afc82f31e763vboxsync export VBOX_LOG_DEST=nofile; $(tstClipboardX11-2_1_STAGE_TARGET) quiet
8a0ee4ffcd453884e357b4d5984ae3b7146abb6fvboxsync $(QUIET)$(APPEND) -t "$@" "done"
c4fd771ce163c73d7ac90e267e84de29314f5e97vboxsync endif # 1of ($(KBUILD_TARGET),freebsd linux netbsd openbsd solaris)
c4fd771ce163c73d7ac90e267e84de29314f5e97vboxsyncendif
8a0ee4ffcd453884e357b4d5984ae3b7146abb6fvboxsync
772269936494ffaddd0750ba9e28e805ba81398cvboxsyncinclude $(FILE_KBUILD_SUB_FOOTER)