equal
deleted
inserted
replaced
1 # Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). |
1 # Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies). |
2 # All rights reserved. |
2 # All rights reserved. |
3 # This component and the accompanying materials are made available |
3 # This component and the accompanying materials are made available |
4 # under the terms of the License "Eclipse Public License v1.0" |
4 # under the terms of the License "Eclipse Public License v1.0" |
5 # which accompanies this distribution, and is available |
5 # which accompanies this distribution, and is available |
6 # at the URL "http://www.eclipse.org/legal/epl-v10.html". |
6 # at the URL "http://www.eclipse.org/legal/epl-v10.html". |
14 # ARMv5 EXE/DLL ABIv2 Function Like Makefile (FLM) |
14 # ARMv5 EXE/DLL ABIv2 Function Like Makefile (FLM) |
15 # Build an ECOM plugin |
15 # Build an ECOM plugin |
16 # |
16 # |
17 # |
17 # |
18 |
18 |
19 ifeq ($(TARGETTYPE),plugin) |
19 ifneq ($(filter plugin plugin3,$(TARGETTYPE)),) |
20 include $(FLMHOME)/e32abiv2defaults.mk |
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 |
21 |
32 # Default Linker settings for this target type |
22 # Default Linker settings for this target type |
33 LINKER_ENTRYPOINT_LIBDEP:=$(STATIC_RUNTIME_DIR)/edll.lib |
23 LINKER_ENTRYPOINT_LIBDEP:=$(STATIC_RUNTIME_DIR)/edll.lib |
34 LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION)=_E32Dll $(LINKER_ENTRYPOINT_DECORATION)$(LINKER_SEPARATOR)$(call dblquote,$(STATIC_RUNTIME_DIR)/edll.lib$(LINKER_ENTRYPOINT_ADORNMENT)) |
24 LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION)=_E32Dll $(LINKER_ENTRYPOINT_DECORATION)$(LINKER_SEPARATOR)$(call dblquote,$(STATIC_RUNTIME_DIR)/edll.lib$(LINKER_ENTRYPOINT_ADORNMENT)) |
35 |
25 |
46 POSTLINKFILETYPE:=dll |
36 POSTLINKFILETYPE:=dll |
47 DOPOSTLINK:=1 |
37 DOPOSTLINK:=1 |
48 AUTOEXPORTS:=_Z24ImplementationGroupProxyRi,1; |
38 AUTOEXPORTS:=_Z24ImplementationGroupProxyRi,1; |
49 CANIGNORENONCALLABLE:=1 |
39 CANIGNORENONCALLABLE:=1 |
50 |
40 |
|
41 # Fixed export TARGETTYPEs should only reference a .def file if an explicit DEFFILE statement is present in the .mmp file |
|
42 ifneq ($(DEFFILEKEYWORD),) |
|
43 POSTLINKDEFFILE:=$(DEFFILE) |
|
44 SUPPORT_FREEZE:=1 |
|
45 ifeq ($(NOEXPORTLIBRARY),) |
|
46 IMPORTLIBRARYREQUIRED:=1 |
|
47 endif |
|
48 endif |
|
49 |
51 # We could check the UID rather than forcing it |
50 # We could check the UID rather than forcing it |
52 # but there seems to be no point in that. |
51 # but there seems to be no point in that. |
53 UID2:=10009D8D |
52 UID2:=10009D8D |
|
53 ifeq ($(TARGETTYPE),plugin3) |
|
54 UID2:=10009D93 |
|
55 POSTLINKTARGETTYPE:=PLUGIN3 |
|
56 endif |
54 |
57 |
55 |
58 |
56 RESOURCEPATH:=Resource/Plugins |
59 RESOURCEPATH:=Resource/Plugins |
57 |
60 |
58 # Use the general EABI FLM |
61 # Use the general EABI FLM |
63 CDEFS:=$(CDEFS) __DLL__ |
66 CDEFS:=$(CDEFS) __DLL__ |
64 include $(FLMHOME)/e32abiv2.flm |
67 include $(FLMHOME)/e32abiv2.flm |
65 $(call vrestore) |
68 $(call vrestore) |
66 |
69 |
67 else |
70 else |
68 $(error $e32abiv2plugin.flm called with wrong TARGETTYPE (should be 'plugin' but is '$(TARGETTYPE)')) |
71 $(error $e32abiv2plugin.flm called with wrong TARGETTYPE (should be 'plugin' or 'plugin3' but is '$(TARGETTYPE)')) |
69 endif |
72 endif |