Makefile.kmk revision bbc0a3fc49446bf8fa1fcfe669c10875701692bc
78a072e1b56619e3230735ae073668311232ec94vboxsync# $Id$
78a072e1b56619e3230735ae073668311232ec94vboxsync## @file
78a072e1b56619e3230735ae073668311232ec94vboxsync# Sub-Makefile for the Guest Additions loader.
78a072e1b56619e3230735ae073668311232ec94vboxsync#
78a072e1b56619e3230735ae073668311232ec94vboxsync
78a072e1b56619e3230735ae073668311232ec94vboxsync#
78a072e1b56619e3230735ae073668311232ec94vboxsync# Copyright (C) 2008 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 = ../../../../../..
78a072e1b56619e3230735ae073668311232ec94vboxsyncinclude $(KBUILD_PATH)/subheader.kmk
78a072e1b56619e3230735ae073668311232ec94vboxsync
78a072e1b56619e3230735ae073668311232ec94vboxsync# This has to be 32-bit, so don't include it in the 64-bit build.
78a072e1b56619e3230735ae073668311232ec94vboxsyncif "$(KBUILD_TARGET_ARCH)" == "x86"
78a072e1b56619e3230735ae073668311232ec94vboxsync PROGRAMS.x86 += VBoxWindowsAdditions
78a072e1b56619e3230735ae073668311232ec94vboxsync VBoxWindowsAdditions_TEMPLATE= VBOXGUESTR3EXE
78a072e1b56619e3230735ae073668311232ec94vboxsync VBoxWindowsAdditions_DEFS = _WIN32_WINNT=0x0400 _UNICODE UNICODE
78a072e1b56619e3230735ae073668311232ec94vboxsync VBoxWindowsAdditions_SOURCES = \
78a072e1b56619e3230735ae073668311232ec94vboxsync VBoxWindowsAdditions.cpp \
78a072e1b56619e3230735ae073668311232ec94vboxsync VBoxWindowsAdditions.rc
78a072e1b56619e3230735ae073668311232ec94vboxsync
78a072e1b56619e3230735ae073668311232ec94vboxsync VBoxWindowsAdditions_LDFLAGS = \
78a072e1b56619e3230735ae073668311232ec94vboxsync /DISALLOWLIB:msvcrt.lib \
78a072e1b56619e3230735ae073668311232ec94vboxsync /DISALLOWLIB:msvcprt.lib \
78a072e1b56619e3230735ae073668311232ec94vboxsync /DISALLOWLIB:libcmt.lib
78a072e1b56619e3230735ae073668311232ec94vboxsync
78a072e1b56619e3230735ae073668311232ec94vboxsync VBoxWindowsAdditions_LIBS = \
cfe32d9a5889dd6fbe96a4d39591ee819e75ce11vboxsync $(PATH_TOOL_$(TEMPLATE_VBOXR3EXE_TOOL.win.$(BUILD_TARGET_ARCH))_LIB)/oldnames.lib \
cfe32d9a5889dd6fbe96a4d39591ee819e75ce11vboxsync $(PATH_TOOL_$(TEMPLATE_VBOXR3EXE_TOOL.win.$(BUILD_TARGET_ARCH))_LIB)/libcmt.lib \
cfe32d9a5889dd6fbe96a4d39591ee819e75ce11vboxsync $(PATH_TOOL_$(TEMPLATE_VBOXR3EXE_TOOL.win.$(BUILD_TARGET_ARCH))_LIB)/libcpmt.lib
78a072e1b56619e3230735ae073668311232ec94vboxsync
78a072e1b56619e3230735ae073668311232ec94vboxsync # Version stuff.
78a072e1b56619e3230735ae073668311232ec94vboxsync VBoxWindowsAdditions.cpp_DEFS += VBOX_SVN_REV=$(VBOX_SVN_REV)
78a072e1b56619e3230735ae073668311232ec94vboxsync VBoxWindowsAdditions.cpp_DEPS = $(VBOX_SVN_REV_KMK)
78a072e1b56619e3230735ae073668311232ec94vboxsync
78a072e1b56619e3230735ae073668311232ec94vboxsync # The icon location is configurable.
bbc0a3fc49446bf8fa1fcfe669c10875701692bcvboxsync VBoxWindowsAdditions.rc_INCS += $(VBoxWindowsAdditions_0_OUTDIR)
bbc0a3fc49446bf8fa1fcfe669c10875701692bcvboxsync VBoxWindowsAdditions.rc_DEPS += $(VBoxWindowsAdditions_0_OUTDIR)/VBoxWindowsAdditions-icon.rc
bbc0a3fc49446bf8fa1fcfe669c10875701692bcvboxsync VBoxWindowsAdditions.rc_CLEAN = $(VBoxWindowsAdditions_0_OUTDIR)/VBoxWindowsAdditions-icon.rc
78a072e1b56619e3230735ae073668311232ec94vboxsync
78a072e1b56619e3230735ae073668311232ec94vboxsync
78a072e1b56619e3230735ae073668311232ec94vboxsync # 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
78a072e1b56619e3230735ae073668311232ec94vboxsyncendif # x86 only
78a072e1b56619e3230735ae073668311232ec94vboxsync
78a072e1b56619e3230735ae073668311232ec94vboxsyncinclude $(KBUILD_PATH)/subfooter.kmk
78a072e1b56619e3230735ae073668311232ec94vboxsync