Config.kmk revision 702ded37444d1081164b40c522bdea2afd928ac5
2dfda90468c5653309a3e93423313e0ec0e627a2vboxsync# $Id$
2b8bde865e119318ffd56bfeb9ba0d05988deb5fvboxsync## @file
2dfda90468c5653309a3e93423313e0ec0e627a2vboxsync# kBuild Configuration file for the OS/2 Guest Additions.
2dfda90468c5653309a3e93423313e0ec0e627a2vboxsync#
2dfda90468c5653309a3e93423313e0ec0e627a2vboxsync
2dfda90468c5653309a3e93423313e0ec0e627a2vboxsync#
2c07c1fedb046186887479cc69f283d83e70b268vboxsync# Copyright (C) 2006-2014 Oracle Corporation
126e63c656a41ec75acd5f21680dffba0058db47vboxsync#
2b8bde865e119318ffd56bfeb9ba0d05988deb5fvboxsync# This file is part of VirtualBox Open Source Edition (OSE), as
3baadeafd9922582dad9b32431362e6296417dd8vboxsync# available from http://www.virtualbox.org. This file is free software;
1d98526a7c32ecd4d197158fc5390ac8e8d714fevboxsync# you can redistribute it and/or modify it under the terms of the GNU
2dfda90468c5653309a3e93423313e0ec0e627a2vboxsync# General Public License (GPL) as published by the Free Software
2dfda90468c5653309a3e93423313e0ec0e627a2vboxsync# Foundation, in version 2 as it comes in the "COPYING" file of the
2dfda90468c5653309a3e93423313e0ec0e627a2vboxsync# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
2dfda90468c5653309a3e93423313e0ec0e627a2vboxsync# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
2dfda90468c5653309a3e93423313e0ec0e627a2vboxsync#
2dfda90468c5653309a3e93423313e0ec0e627a2vboxsync
2dfda90468c5653309a3e93423313e0ec0e627a2vboxsyncifdef VBOX_ADDITIONS_OS2_CONFIG_KMK_INCLUDED
2dfda90468c5653309a3e93423313e0ec0e627a2vboxsync $(error oops.)
2dfda90468c5653309a3e93423313e0ec0e627a2vboxsyncendif
VBOX_ADDITIONS_OS2_CONFIG_KMK_INCLUDED = true
# Include the top-level configure file.
ifndef VBOX_ROOT_CONFIG_KMK_INCLUDED
include $(PATH_ROOT)/Config.kmk
endif
## FIXME
PATH_DDKVIDEO ?= D:/ddk/200402/video
PATH_DDKBASE ?= D:/ddk/200402/base
TOOL_MASM510_AS ?= $(PATH_DDKBASE)/tools/masm.exe
TOOL_MSLINK510_LD ?= $(PATH_DDKBASE)/tools/link.exe
PATH_TOOL_VAC308 ?= D:/VACpp/v3.08
PATH_TOOL_ALP ?= D:/Toolkit/v4.52/bin
#
# Template for VAC308 Gradd stuff.
#
TEMPLATE_VBOXOS2VAC308 = Template for VisualAge for C++ v3.08 / Gradd
TEMPLATE_VBOXOS2VAC308_TOOL = VAC308
TEMPLATE_VBOXOS2VAC308_ASTOOL = ALP
TEMPLATE_VBOXOS2VAC308_INST = $(INST_ADDITIONS)
TEMPLATE_VBOXOS2VAC308_DEFS = RT_OS_OS2 IN_RING3 ## @todo IN_GUEST IN_GUEST_R3 IN_RT_R3
TEMPLATE_VBOXOS2VAC308_CFLAGS += /Gn+ # Do not generate default libraries in object.
TEMPLATE_VBOXOS2VAC308_CFLAGS += /Gr+ # Allow object code to run at ring 0.
TEMPLATE_VBOXOS2VAC308_CFLAGS += /Rn # Produce code to run with no runtime environment.
TEMPLATE_VBOXOS2VAC308_CFLAGS += /Sp1 # Pack aggregate members on 1 byte alignment.
TEMPLATE_VBOXOS2VAC308_CFLAGS += /Tm- # No debug memory management.
TEMPLATE_VBOXOS2VAC308_CFLAGS += /Q+ # Suppress the logo. (in VAC308.kmk?)
TEMPLATE_VBOXOS2VAC308_CFLAGS += /C+ # Perform compile only, no link. (in VAC308.kmk?)
TEMPLATE_VBOXOS2VAC308_CFLAGS += /Ss+ # Allow the double slash (//) format to be used for comments. (C only)
TEMPLATE_VBOXOS2VAC308_CFLAGS += /G5 # Generate code optimized for use on a Pentium processor.
TEMPLATE_VBOXOS2VAC308_CFLAGS += /Ti+ # Generate debugging information.
TEMPLATE_VBOXOS2VAC308_CFLAGS += /O+ # Optimize generated code.
TEMPLATE_VBOXOS2VAC308_CFLAGS += /Oi+ # Turn on function inlining.
TEMPLATE_VBOXOS2VAC308_CFLAGS += /Ge- # Use the version of the runtime library that assumes a DLL is being built. (_DLL_InitTerm++)
TEMPLATE_VBOXOS2VAC308_CFLAGS := $(strip $(TEMPLATE_VBOXOS2VAC308_CFLAGS))
TEMPLATE_VBOXOS2VAC308_CXXFLAGS = $(VBoxGradd_CFLAGS)
TEMPLATE_VBOXOS2VAC308_LDFLAGS += -B"/Nologo" # Quiet! (ILINK308.kmk?)
TEMPLATE_VBOXOS2VAC308_LDFLAGS += -B"/Debug" # Debug info (ILINK308.kmk?)
TEMPLATE_VBOXOS2VAC308_LDFLAGS += -B"/Map" # Generate map file (ILINK308.kmk?)
TEMPLATE_VBOXOS2VAC308_LDFLAGS += -B"/Linenumbers" # Map file with linenumbers.
TEMPLATE_VBOXOS2VAC308_LDFLAGS += -B"/Exepack:2" # Compress the file using exepack 2.
TEMPLATE_VBOXOS2VAC308_LDFLAGS += -B"/Alignment:32" # Pack LX pages on 32 byte boundaries (default is 512 bytes).
TEMPLATE_VBOXOS2VAC308_LDFLAGS += -B"/NoDefaultLibrarySearch"
TEMPLATE_VBOXOS2VAC308_LDFLAGS := $(strip $(TEMPLATE_VBOXOS2VAC308_LDFLAGS))
TEMPLATE_VBOXOS2VAC308_INCS = \
$(PATH_DDKVIDEO)/rel/os2c/include/base/os2 \
$(PATH_DDKVIDEO)/rel/os2c/include/base/os2/16bit
TEMPLATE_VBOXOS2VAC308_LIBS = \
$(PATH_DDKVIDEO)/rel/os2c/lib/os2/os2386.lib \
$(PATH_TOOL_VAC308_LIB)/cppon30.lib