78a072e1b56619e3230735ae073668311232ec94vboxsync# $Id$
78a072e1b56619e3230735ae073668311232ec94vboxsync## @file
78a072e1b56619e3230735ae073668311232ec94vboxsync# Sub-Makefile for the Guest Additions loader.
78a072e1b56619e3230735ae073668311232ec94vboxsync#
78a072e1b56619e3230735ae073668311232ec94vboxsync
78a072e1b56619e3230735ae073668311232ec94vboxsync#
772269936494ffaddd0750ba9e28e805ba81398cvboxsync# Copyright (C) 2008-2012 Oracle Corporation
78a072e1b56619e3230735ae073668311232ec94vboxsync#
2f139cbf73f9adba01382892f33558ad7bcb40cbvboxsync# This file is part of VirtualBox Open Source Edition (OSE), as
2f139cbf73f9adba01382892f33558ad7bcb40cbvboxsync# available from http://www.virtualbox.org. This file is free software;
2f139cbf73f9adba01382892f33558ad7bcb40cbvboxsync# you can redistribute it and/or modify it under the terms of the GNU
2f139cbf73f9adba01382892f33558ad7bcb40cbvboxsync# General Public License (GPL) as published by the Free Software
2f139cbf73f9adba01382892f33558ad7bcb40cbvboxsync# Foundation, in version 2 as it comes in the "COPYING" file of the
2f139cbf73f9adba01382892f33558ad7bcb40cbvboxsync# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
2f139cbf73f9adba01382892f33558ad7bcb40cbvboxsync# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
78a072e1b56619e3230735ae073668311232ec94vboxsync#
78a072e1b56619e3230735ae073668311232ec94vboxsync
78a072e1b56619e3230735ae073668311232ec94vboxsyncSUB_DEPTH = ../../../../../..
772269936494ffaddd0750ba9e28e805ba81398cvboxsyncinclude $(KBUILD_PATH)/subheader.kmk
78a072e1b56619e3230735ae073668311232ec94vboxsync
7519a1c4323fa86fbb19a36a91cd25abfd7af714vboxsyncifeq ($(KBUILD_TARGET_ARCH),x86)
7519a1c4323fa86fbb19a36a91cd25abfd7af714vboxsync
78a072e1b56619e3230735ae073668311232ec94vboxsync# This has to be 32-bit, so don't include it in the 64-bit build.
7519a1c4323fa86fbb19a36a91cd25abfd7af714vboxsyncPROGRAMS.x86 += VBoxWindowsAdditions
01b927bd5e6f4ed282b59586dbadeb7739e5fa37vboxsyncVBoxWindowsAdditions_TEMPLATE= NewVBoxGuestR3Exe
7519a1c4323fa86fbb19a36a91cd25abfd7af714vboxsyncVBoxWindowsAdditions_DEFS = _WIN32_WINNT=0x0400 _UNICODE UNICODE
7519a1c4323fa86fbb19a36a91cd25abfd7af714vboxsyncVBoxWindowsAdditions_SOURCES = \
7519a1c4323fa86fbb19a36a91cd25abfd7af714vboxsync VBoxWindowsAdditions.cpp \
7519a1c4323fa86fbb19a36a91cd25abfd7af714vboxsync VBoxWindowsAdditions.rc
7519a1c4323fa86fbb19a36a91cd25abfd7af714vboxsync
7519a1c4323fa86fbb19a36a91cd25abfd7af714vboxsyncVBoxWindowsAdditions_LDFLAGS = \
7519a1c4323fa86fbb19a36a91cd25abfd7af714vboxsync /DISALLOWLIB:msvcrt.lib \
7519a1c4323fa86fbb19a36a91cd25abfd7af714vboxsync /DISALLOWLIB:msvcprt.lib \
7519a1c4323fa86fbb19a36a91cd25abfd7af714vboxsync /DISALLOWLIB:libcmt.lib
7519a1c4323fa86fbb19a36a91cd25abfd7af714vboxsync
7519a1c4323fa86fbb19a36a91cd25abfd7af714vboxsyncVBoxWindowsAdditions_LIBS = \
7519a1c4323fa86fbb19a36a91cd25abfd7af714vboxsync $(PATH_TOOL_$(TEMPLATE_VBOXR3EXE_TOOL.win.$(KBUILD_TARGET_ARCH))_LIB)/oldnames.lib \
7519a1c4323fa86fbb19a36a91cd25abfd7af714vboxsync $(PATH_TOOL_$(TEMPLATE_VBOXR3EXE_TOOL.win.$(KBUILD_TARGET_ARCH))_LIB)/libcmt.lib \
dc5cd2ea4ab36898ba3231203f52460a39189263vboxsync $(PATH_TOOL_$(TEMPLATE_VBOXR3EXE_TOOL.win.$(KBUILD_TARGET_ARCH))_LIB)/libcpmt.lib
78a072e1b56619e3230735ae073668311232ec94vboxsync
7519a1c4323fa86fbb19a36a91cd25abfd7af714vboxsync# Version stuff.
7519a1c4323fa86fbb19a36a91cd25abfd7af714vboxsyncVBoxWindowsAdditions.cpp_DEFS += VBOX_SVN_REV=$(VBOX_SVN_REV)
7519a1c4323fa86fbb19a36a91cd25abfd7af714vboxsyncVBoxWindowsAdditions.cpp_DEPS = $(VBOX_SVN_REV_KMK)
78a072e1b56619e3230735ae073668311232ec94vboxsync
7519a1c4323fa86fbb19a36a91cd25abfd7af714vboxsync# The icon location is configurable.
7519a1c4323fa86fbb19a36a91cd25abfd7af714vboxsyncVBoxWindowsAdditions.rc_INCS += $(VBoxWindowsAdditions_0_OUTDIR)
7519a1c4323fa86fbb19a36a91cd25abfd7af714vboxsyncVBoxWindowsAdditions.rc_DEPS += $(VBoxWindowsAdditions_0_OUTDIR)/VBoxWindowsAdditions-icon.rc
7519a1c4323fa86fbb19a36a91cd25abfd7af714vboxsyncVBoxWindowsAdditions.rc_CLEAN = $(VBoxWindowsAdditions_0_OUTDIR)/VBoxWindowsAdditions-icon.rc
78a072e1b56619e3230735ae073668311232ec94vboxsync
78a072e1b56619e3230735ae073668311232ec94vboxsync
7519a1c4323fa86fbb19a36a91cd25abfd7af714vboxsync# Icon include file.
bbc0a3fc49446bf8fa1fcfe669c10875701692bcvboxsync$$(VBoxWindowsAdditions_0_OUTDIR)/VBoxWindowsAdditions-icon.rc: $(VBOX_WINDOWS_ADDITIONS_ICON_FILE) Makefile.kmk | $$(dir $$@)
78a072e1b56619e3230735ae073668311232ec94vboxsync $(RM) -f $@
78a072e1b56619e3230735ae073668311232ec94vboxsync $(APPEND) $@ 'IDI_VIRTUALBOX ICON DISCARDABLE "$(subst /,\\,$(VBOX_WINDOWS_ADDITIONS_ICON_FILE))"'
78a072e1b56619e3230735ae073668311232ec94vboxsync
7519a1c4323fa86fbb19a36a91cd25abfd7af714vboxsyncendif # (x86 only because of the above rule)
7519a1c4323fa86fbb19a36a91cd25abfd7af714vboxsync
78a072e1b56619e3230735ae073668311232ec94vboxsync
772269936494ffaddd0750ba9e28e805ba81398cvboxsyncinclude $(FILE_KBUILD_SUB_FOOTER)
78a072e1b56619e3230735ae073668311232ec94vboxsync