Makefile.kmk revision 08b99616feefa419e83d5bc3b381f97ff00a9ed1
236b2935f217749893b7034e59da3e3568928acevboxsync# $Id$
236b2935f217749893b7034e59da3e3568928acevboxsync## @file
236b2935f217749893b7034e59da3e3568928acevboxsync# Sub-Makefile for the Cross Platform Guest Addition Services.
236b2935f217749893b7034e59da3e3568928acevboxsync#
236b2935f217749893b7034e59da3e3568928acevboxsync
236b2935f217749893b7034e59da3e3568928acevboxsync#
236b2935f217749893b7034e59da3e3568928acevboxsync# Copyright (C) 2007-2010 Sun Microsystems, Inc.
236b2935f217749893b7034e59da3e3568928acevboxsync#
236b2935f217749893b7034e59da3e3568928acevboxsync# This file is part of VirtualBox Open Source Edition (OSE), as
236b2935f217749893b7034e59da3e3568928acevboxsync# available from http://www.virtualbox.org. This file is free software;
236b2935f217749893b7034e59da3e3568928acevboxsync# you can redistribute it and/or modify it under the terms of the GNU
236b2935f217749893b7034e59da3e3568928acevboxsync# General Public License (GPL) as published by the Free Software
236b2935f217749893b7034e59da3e3568928acevboxsync# Foundation, in version 2 as it comes in the "COPYING" file of the
236b2935f217749893b7034e59da3e3568928acevboxsync# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
236b2935f217749893b7034e59da3e3568928acevboxsync# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
236b2935f217749893b7034e59da3e3568928acevboxsync#
236b2935f217749893b7034e59da3e3568928acevboxsync# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa
236b2935f217749893b7034e59da3e3568928acevboxsync# Clara, CA 95054 USA or visit http://www.sun.com if you need
236b2935f217749893b7034e59da3e3568928acevboxsync# additional information or have any questions.
236b2935f217749893b7034e59da3e3568928acevboxsync#
236b2935f217749893b7034e59da3e3568928acevboxsync
236b2935f217749893b7034e59da3e3568928acevboxsyncSUB_DEPTH = ../../../../..
157093a77f2752732368338110cb50fa6cd7717fvboxsyncinclude $(KBUILD_PATH)/subheader.kmk
236b2935f217749893b7034e59da3e3568928acevboxsync
bc5cd42756b3f98351040bbfccc08dd9bacd103avboxsync#
157093a77f2752732368338110cb50fa6cd7717fvboxsync# Target lists.
bc5cd42756b3f98351040bbfccc08dd9bacd103avboxsync#
bc5cd42756b3f98351040bbfccc08dd9bacd103avboxsyncPROGRAMS += VBoxService
157093a77f2752732368338110cb50fa6cd7717fvboxsyncPROGRAMS.win.x86 += VBoxServiceNT
2ac3892cdc8b16a0dee55e8b4510b8ecea83c95fvboxsync
2ac3892cdc8b16a0dee55e8b4510b8ecea83c95fvboxsync#
2ac3892cdc8b16a0dee55e8b4510b8ecea83c95fvboxsync# VBoxService
2ac3892cdc8b16a0dee55e8b4510b8ecea83c95fvboxsync#
157093a77f2752732368338110cb50fa6cd7717fvboxsyncVBoxService_TEMPLATE = VBOXGUESTR3EXE
236b2935f217749893b7034e59da3e3568928acevboxsyncVBoxService_DEFS = VBOXSERVICE_TIMESYNC
157093a77f2752732368338110cb50fa6cd7717fvboxsyncVBoxService_DEFS.win += _WIN32_WINNT=0x0501
157093a77f2752732368338110cb50fa6cd7717fvboxsyncVBoxService_DEFS.os2 = VBOX_WITH_HGCM VBOXSERVICE_CLIPBOARD
157093a77f2752732368338110cb50fa6cd7717fvboxsyncifdef VBOX_WITH_GUEST_PROPS
157093a77f2752732368338110cb50fa6cd7717fvboxsync VBoxService_DEFS += VBOX_WITH_GUEST_PROPS VBOXSERVICE_VMINFO
157093a77f2752732368338110cb50fa6cd7717fvboxsync if1of ($(KBUILD_TARGET), win)
157093a77f2752732368338110cb50fa6cd7717fvboxsync VBoxService_DEFS += VBOX_WITH_HGCM VBOXSERVICE_EXEC
157093a77f2752732368338110cb50fa6cd7717fvboxsync endif
eca46116c06b850c8c6be84678ba1f9dbdb3f9ddvboxsyncendif
236b2935f217749893b7034e59da3e3568928acevboxsyncif1of ($(KBUILD_TARGET), linux)
236b2935f217749893b7034e59da3e3568928acevboxsync VBoxService_DEFS += VBOXSERVICE_CPUHOTPLUG
236b2935f217749893b7034e59da3e3568928acevboxsyncendif
236b2935f217749893b7034e59da3e3568928acevboxsync
5067a9619d7131c54d4ebb371d9dac91abdd34f6vboxsyncVBoxService_SOURCES = \
eca46116c06b850c8c6be84678ba1f9dbdb3f9ddvboxsync VBoxService.cpp \
eca46116c06b850c8c6be84678ba1f9dbdb3f9ddvboxsync VBoxServiceTimeSync.cpp \
eca46116c06b850c8c6be84678ba1f9dbdb3f9ddvboxsync VBoxServiceUtils.cpp
eca46116c06b850c8c6be84678ba1f9dbdb3f9ddvboxsyncifdef VBOX_WITH_GUEST_PROPS
eca46116c06b850c8c6be84678ba1f9dbdb3f9ddvboxsync VBoxService_SOURCES.win = \
eca46116c06b850c8c6be84678ba1f9dbdb3f9ddvboxsync VBoxServiceVMInfo-win.cpp
eca46116c06b850c8c6be84678ba1f9dbdb3f9ddvboxsync VBoxService_SOURCES += \
eca46116c06b850c8c6be84678ba1f9dbdb3f9ddvboxsync VBoxServiceVMInfo.cpp
eca46116c06b850c8c6be84678ba1f9dbdb3f9ddvboxsync if1of ($(KBUILD_TARGET), win)
eca46116c06b850c8c6be84678ba1f9dbdb3f9ddvboxsync VBoxService_SOURCES += \
eca46116c06b850c8c6be84678ba1f9dbdb3f9ddvboxsync VBoxServiceExec.cpp
eca46116c06b850c8c6be84678ba1f9dbdb3f9ddvboxsync endif
eca46116c06b850c8c6be84678ba1f9dbdb3f9ddvboxsyncendif
157093a77f2752732368338110cb50fa6cd7717fvboxsyncif1of ($(KBUILD_TARGET), linux)
157093a77f2752732368338110cb50fa6cd7717fvboxsync VBoxService_SOURCES += \
157093a77f2752732368338110cb50fa6cd7717fvboxsync VBoxServiceCpuHotPlug.cpp
157093a77f2752732368338110cb50fa6cd7717fvboxsyncendif
157093a77f2752732368338110cb50fa6cd7717fvboxsyncVBoxService_SOURCES.win += \
157093a77f2752732368338110cb50fa6cd7717fvboxsync VBoxService-win.rc \
157093a77f2752732368338110cb50fa6cd7717fvboxsync VBoxService-win.cpp
157093a77f2752732368338110cb50fa6cd7717fvboxsyncVBoxService_SOURCES.os2 = \
157093a77f2752732368338110cb50fa6cd7717fvboxsync VBoxService-os2.def \
eca46116c06b850c8c6be84678ba1f9dbdb3f9ddvboxsync VBoxServiceClipboard-os2.cpp
5067a9619d7131c54d4ebb371d9dac91abdd34f6vboxsync
bc5cd42756b3f98351040bbfccc08dd9bacd103avboxsyncVBoxService_LIBS = \
157093a77f2752732368338110cb50fa6cd7717fvboxsync $(VBOX_LIB_IPRT_GUEST_R3) \
157093a77f2752732368338110cb50fa6cd7717fvboxsync $(VBOX_LIB_VBGL_R3) \
157093a77f2752732368338110cb50fa6cd7717fvboxsync $(VBOX_LIB_IPRT_GUEST_R3)
bc5cd42756b3f98351040bbfccc08dd9bacd103avboxsyncifdef VBOX_WITH_GUEST_PROPS
bc5cd42756b3f98351040bbfccc08dd9bacd103avboxsync VBoxService_LIBS.win += \
bc5cd42756b3f98351040bbfccc08dd9bacd103avboxsync Secur32.lib \
bc5cd42756b3f98351040bbfccc08dd9bacd103avboxsync WtsApi32.lib \
8de3062c5ad947972fb5aa6659de0f6abd5a3f7fvboxsync Psapi.lib
2ac3892cdc8b16a0dee55e8b4510b8ecea83c95fvboxsync VBoxService_LIBS.solaris += \
bc5cd42756b3f98351040bbfccc08dd9bacd103avboxsync nsl
157093a77f2752732368338110cb50fa6cd7717fvboxsyncendif
bc5cd42756b3f98351040bbfccc08dd9bacd103avboxsync
bc5cd42756b3f98351040bbfccc08dd9bacd103avboxsync#
bc5cd42756b3f98351040bbfccc08dd9bacd103avboxsync# VBoxServiceNT - NT4 version of VBoxService.
bc5cd42756b3f98351040bbfccc08dd9bacd103avboxsync#
bc5cd42756b3f98351040bbfccc08dd9bacd103avboxsyncVBoxServiceNT_TEMPLATE = VBOXGUESTR3EXE
bc5cd42756b3f98351040bbfccc08dd9bacd103avboxsyncVBoxServiceNT_EXTENDS = VBoxService
bc5cd42756b3f98351040bbfccc08dd9bacd103avboxsyncVBoxServiceNT_DEFS.win = _WIN32_WINNT=0x0400 TARGET_NT4
bc5cd42756b3f98351040bbfccc08dd9bacd103avboxsync
bc5cd42756b3f98351040bbfccc08dd9bacd103avboxsyncVBoxServiceVMInfo.cpp_DEFS = VBOX_SVN_REV=$(VBOX_SVN_REV)
157093a77f2752732368338110cb50fa6cd7717fvboxsyncVBoxServiceVMInfo.cpp_DEPS = $(VBOX_SVN_REV_KMK)
157093a77f2752732368338110cb50fa6cd7717fvboxsync
157093a77f2752732368338110cb50fa6cd7717fvboxsync#
157093a77f2752732368338110cb50fa6cd7717fvboxsync# The icon is configurable.
157093a77f2752732368338110cb50fa6cd7717fvboxsync#
157093a77f2752732368338110cb50fa6cd7717fvboxsyncVBoxService-win.rc_INCS = $(PATH_VBoxService)
157093a77f2752732368338110cb50fa6cd7717fvboxsyncVBoxService-win.rc_DEPS = $(PATH_VBoxService)/VBoxService-win-icon.rc
157093a77f2752732368338110cb50fa6cd7717fvboxsyncVBoxService-win.rc_CLEAN = $(PATH_VBoxService)/VBoxService-win-icon.rc
157093a77f2752732368338110cb50fa6cd7717fvboxsync
157093a77f2752732368338110cb50fa6cd7717fvboxsync# Icon include file.
157093a77f2752732368338110cb50fa6cd7717fvboxsync$$(PATH_VBoxService)/VBoxService-win-icon.rc: $(VBOX_WINDOWS_ADDITIONS_ICON_FILE) $$(VBoxService_PATH)/Makefile.kmk | $$(dir $$@)
157093a77f2752732368338110cb50fa6cd7717fvboxsync $(RM) -f $@
157093a77f2752732368338110cb50fa6cd7717fvboxsync $(APPEND) $@ 'IDI_VIRTUALBOX ICON DISCARDABLE "$(subst /,\\,$(VBOX_WINDOWS_ADDITIONS_ICON_FILE))"'
d26b6be365a8cdaa266abf40097afb031d4757d2vboxsync
157093a77f2752732368338110cb50fa6cd7717fvboxsyncinclude $(KBUILD_PATH)/subfooter.kmk
157093a77f2752732368338110cb50fa6cd7717fvboxsync
157093a77f2752732368338110cb50fa6cd7717fvboxsync