|
1 # Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). |
|
2 # All rights reserved. |
|
3 # This component and the accompanying materials are made available |
|
4 # under the terms of the License "Eclipse Public License v1.0" |
|
5 # which accompanies this distribution, and is available |
|
6 # at the URL "http://www.eclipse.org/legal/epl-v10.html". |
|
7 # |
|
8 # Initial Contributors: |
|
9 # Nokia Corporation - initial contribution. |
|
10 # |
|
11 # Contributors: |
|
12 # |
|
13 # Description: |
|
14 # ARMv5 EXE/DLL ABIv2 Function Like Makefile (FLM) |
|
15 # Build an ECOM plugin |
|
16 # |
|
17 # |
|
18 |
|
19 ifeq ($(TARGETTYPE),plugin) |
|
20 include $(FLMHOME)/e32abiv2defaults.mk |
|
21 |
|
22 # This is basically a DLL with some tweaks |
|
23 # If DEFFILE keyword is specified in the MMP, set the POSTLINKDEFFILE |
|
24 # and guarantee the generation of import library; if not specified import library |
|
25 # won't be generated for plugin (default) |
|
26 ifneq ($(DEFFILEKEYWORD),) |
|
27 POSTLINKDEFFILE:=$(DEFFILE) |
|
28 SUPPORT_FREEZE:=1 |
|
29 IMPORTLIBRARYREQUIRED:=1 |
|
30 endif |
|
31 |
|
32 # Default Linker settings for this target type |
|
33 LINKER_ENTRYPOINT_LIBDEP:=$(STATIC_RUNTIME_DIR)/edll.lib |
|
34 LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION) _E32Dll $(LINKER_ENTRYPOINT_DECORATION) $(call dblquote,$(STATIC_RUNTIME_DIR)/edll.lib$(LINKER_ENTRYPOINT_ADORNMENT)) |
|
35 |
|
36 ifeq ("$(NEED_ENTRYPOINT_LIBRARY)","True") |
|
37 LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRYPOINT_SETTING) $(LINKER_ENTRYPOINT_LIBDEP) |
|
38 endif |
|
39 |
|
40 LINKER_STUB_LIBRARY:=$(STATIC_RUNTIME_DIR)/edllstub.lib |
|
41 STATIC_RUNTIME_LIB:=$(USER_STATIC_RUNTIME_LIB) |
|
42 |
|
43 # Default Postlinker settings |
|
44 CANHAVEEXPORTS:=1 |
|
45 POSTLINKTARGETTYPE:=PLUGIN |
|
46 POSTLINKFILETYPE:=dll |
|
47 DOPOSTLINK:=1 |
|
48 AUTOEXPORTS:=_Z24ImplementationGroupProxyRi,1; |
|
49 CANIGNORENONCALLABLE:=1 |
|
50 |
|
51 # We could check the UID rather than forcing it |
|
52 # but there seems to be no point in that. |
|
53 UID2:=10009D8D |
|
54 |
|
55 |
|
56 RESOURCEPATH:=Resource/Plugins |
|
57 |
|
58 # Use the general EABI FLM |
|
59 # We are appending to CDEFS but we don't want this to affect |
|
60 # other invocations so we are going to save it on a stack |
|
61 # and restore it afterwards |
|
62 $(call vsave,CDEFS) |
|
63 CDEFS:=$(CDEFS) __DLL__ |
|
64 include $(FLMHOME)/e32abiv2.flm |
|
65 $(call vrestore) |
|
66 |
|
67 else |
|
68 $(error $e32abiv2plugin.flm called with wrong TARGETTYPE (should be 'plugin' but is '$(TARGETTYPE)')) |
|
69 endif |