sbsv2/raptor/lib/flm/e32abiv2var.flm
author timothy.murphy@nokia.com
Thu, 25 Mar 2010 13:43:28 +0000
branchfix
changeset 408 a819f9223567
parent 230 3d05ccc51d1a
permissions -rw-r--r--
fix: stop using "magic" numbers in string operations for the copyannofile2log feature fix: When using the copylogfromannofile workaround, extract the build ID and build duration and add to the log as these are useful for analysis. The log should now be identical to the stdout file. fix: Remove extra blank lines from output in copylogfromannofile mode.

# Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies).
# All rights reserved.
# This component and the accompanying materials are made available
# under the terms of the License "Eclipse Public License v1.0"
# which accompanies this distribution, and is available
# at the URL "http://www.eclipse.org/legal/epl-v10.html".
#
# Initial Contributors:
# Nokia Corporation - initial contribution.
#
# Contributors:
#
# Description:
# ARMv5 EXE/DLL ABIv2 Function Like Makefile (FLM)
# Build an e32 Variant DLL
# 
#

ifeq ($(TARGETTYPE),var)
include $(FLMHOME)/e32abiv2defaults.mk

# Determine what kind of entrypoint option to set
LINKER_ENTRYPOINT_LIBDEP:=$(STATIC_RUNTIME_DIR)/evar.lib
LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION)=_E32Dll $(LINKER_ENTRYPOINT_DECORATION)$(LINKER_SEPARATOR)$(call dblquote,$(STATIC_RUNTIME_DIR)/evar.lib$(LINKER_ENTRYPOINT_ADORNMENT))

ifeq ("$(NEED_ENTRYPOINT_LIBRARY)","True")
LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRYPOINT_SETTING) $(LINKER_ENTRYPOINT_LIBDEP)
endif

LINKER_STUB_LIBRARY:=$(STATIC_RUNTIME_DIR)/edllstub.lib
STATIC_RUNTIME_LIB:=$(KERNEL_STATIC_RUNTIME_LIB)
RUNTIME_LIBS_LIST:=

# Kernel code builds as arm
ALWAYS_BUILD_AS_ARM:=1

# No dedicated library for operator new/delete functions.
HAS_DEDICATED_OP_NEWDEL_LIB:=

# Default Postlinker settings
CANHAVEEXPORTS:=1
POSTLINKTARGETTYPE:=VAR
POSTLINKFILETYPE:=dll
DOPOSTLINK:=1
AUTOEXPORTS:=_Z17VariantInitialisev,1;

# No exception support for kernel code?
EXCEPTIONS:=$(NO_EXCEPTIONS)

# Fixed export TARGETTYPEs should only reference a .def file if an explicit DEFFILE statement is present in the .mmp file
ifneq ($(DEFFILEKEYWORD),)
POSTLINKDEFFILE:=$(DEFFILE)
SUPPORT_FREEZE:=1
ifeq ($(NOEXPORTLIBRARY),)
IMPORTLIBRARYREQUIRED:=1
endif
endif

# We are appending to CDEFS but we don't want this to affect
# other invocations so we are going to save it on a stack
# and restore it afterwards
$(call vsave,CDEFS SYSTEMINCLUDE)
SYSTEMINCLUDE:=$(SYSTEMINCLUDE) $(EPOCROOT)/epoc32/include/nkern $(EPOCROOT)/epoc32/include/kernel/arm $(EPOCROOT)/epoc32/include/memmodel/epoc $(EPOCROOT)/epoc32/include/kernel $(EPOCROOT)/epoc32/include/nkern/arm
CDEFS:=$(CDEFS) __DLL__ __KERNEL_MODE__
include $(FLMHOME)/e32abiv2.flm
$(call vrestore)

else
$(error $e32abiv2var.flm called with wrong TARGETTYPE (should be 'var' but is '$(TARGETTYPE)'))
endif