|
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 # e32abiv2dll.flm |
|
15 # ARMv5 EXE/DLL ABIv2 Function Like Makefile (FLM) |
|
16 # Build an e32 DLL (Dynamic Link Library) |
|
17 # |
|
18 # |
|
19 |
|
20 ifeq ($(TARGETTYPE),stddll) |
|
21 include $(FLMHOME)/e32abiv2defaults.mk |
|
22 |
|
23 # What we need to build a DLL |
|
24 ifeq ($(NOEXPORTLIBRARY),) |
|
25 IMPORTLIBRARYREQUIRED:=1 |
|
26 endif |
|
27 POSTLINKDEFFILE:=$(DEFFILE) |
|
28 SUPPORT_FREEZE:=1 |
|
29 |
|
30 # Default Linker settings for this target type |
|
31 LINKER_ENTRYPOINT_LIBDEP:=$(STATIC_RUNTIME_DIR)/edll.lib |
|
32 LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION) _E32Dll $(LINKER_ENTRYPOINT_DECORATION) $(call dblquote,$(STATIC_RUNTIME_DIR)/edll.lib$(LINKER_ENTRYPOINT_ADORNMENT)) |
|
33 DEFAULT_NEWLIB:=$(DEFAULT_STDCPP_NEWLIB) |
|
34 |
|
35 ifeq ("$(NEED_ENTRYPOINT_LIBRARY)","True") |
|
36 LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRYPOINT_SETTING) $(LINKER_ENTRYPOINT_LIBDEP) |
|
37 endif |
|
38 |
|
39 LINKER_STUB_LIBRARY:=$(STATIC_RUNTIME_DIR)/edllstub.lib |
|
40 STATIC_RUNTIME_LIB:=$(USER_STATIC_RUNTIME_LIB) |
|
41 LIBRARY:=$(LIBRARY) euser.dso |
|
42 |
|
43 |
|
44 # Default Postlinker settings |
|
45 CANHAVEEXPORTS:=1 |
|
46 POSTLINKTARGETTYPE:=STDDLL |
|
47 POSTLINKFILETYPE:=dll |
|
48 DOPOSTLINK:=1 |
|
49 CANIGNORENONCALLABLE:=1 |
|
50 NAMEDSYMLKUP:=1 |
|
51 |
|
52 # Use the general EABI FLM |
|
53 # We are appending to CDEFS but we don't want this to affect |
|
54 # other invocations so we are going to save it on a stack |
|
55 # and restore it afterwards |
|
56 $(call vsave,CDEFS SYSTEMINCLUDE) |
|
57 |
|
58 #compile options |
|
59 SYSTEMINCLUDE:=$(SYSTEMINCLUDE) $(EPOCROOT)/epoc32/include/stdapis |
|
60 NOHIDEALL:=1 |
|
61 CDEFS:=$(CDEFS) __DLL__ |
|
62 |
|
63 include $(FLMHOME)/e32abiv2.flm |
|
64 $(call vrestore) |
|
65 |
|
66 else |
|
67 $(error e32abiv2stddll.flm called with wrong TARGETTYPE (should be 'stddll' but is '$(TARGETTYPE)')) |
|
68 endif |
|
69 |