OSDN Git Service

turn down allowed image size
[android-x86/build.git] / core / combo / darwin-x86.mk
1 # Configuration for Darwin (Mac OS X) on PPC.
2 # Included by combo/select.make
3
4 $(combo_target)GLOBAL_CFLAGS += -fPIC
5 $(combo_target)NO_UNDEFINED_LDFLAGS := -Wl,-undefined,error
6
7 $(combo_target)CC := $(CC)
8 $(combo_target)CXX := $(CXX)
9 $(combo_target)AR := $(AR)
10
11 $(combo_target)SHLIB_SUFFIX := .dylib
12 $(combo_target)JNILIB_SUFFIX := .jnilib
13
14 $(combo_target)GLOBAL_CFLAGS += \
15         -include $(call select-android-config-h,darwin-x86)
16 $(combo_target)RUN_RANLIB_AFTER_COPYING := true
17
18 ifeq ($(combo_target),TARGET_)
19 $(combo_target)CUSTOM_LD_COMMAND := true
20 define transform-o-to-shared-lib-inner
21     $(TARGET_CXX) \
22         -dynamiclib -single_module -read_only_relocs suppress \
23         $(TARGET_GLOBAL_LD_DIRS) \
24         $(PRIVATE_ALL_OBJECTS) \
25         $(call normalize-target-libraries,$(PRIVATE_ALL_SHARED_LIBRARIES)) \
26         $(call normalize-target-libraries,$(PRIVATE_ALL_WHOLE_STATIC_LIBRARIES)) \
27         $(call normalize-target-libraries,$(PRIVATE_ALL_STATIC_LIBRARIES)) \
28         $(PRIVATE_LDLIBS) \
29         -o $@ \
30         $(PRIVATE_LDFLAGS) \
31         $(if $(PRIVATE_ALL_WHOLE_STATIC_LIBRARIES),-all_load) \
32         $(TARGET_LIBGCC)
33 endef
34
35 define transform-o-to-executable-inner
36         $(TARGET_CXX) \
37         -o $@ \
38         -Wl,-dynamic -headerpad_max_install_names \
39         $(TARGET_GLOBAL_LD_DIRS) \
40         $(call normalize-target-libraries,$(PRIVATE_ALL_SHARED_LIBRARIES)) \
41         $(PRIVATE_ALL_OBJECTS) \
42         $(PRIVATE_LDLIBS) \
43         $(call normalize-target-libraries,$(PRIVATE_ALL_WHOLE_STATIC_LIBRARIES)) \
44         $(call normalize-target-libraries,$(PRIVATE_ALL_STATIC_LIBRARIES)) \
45         $(TARGET_LIBGCC)
46 endef
47
48 define transform-o-to-static-executable-inner
49     $(TARGET_CXX) \
50         -static \
51         -o $@ \
52         $(TARGET_GLOBAL_LD_DIRS) \
53         $(PRIVATE_LDFLAGS) \
54         $(PRIVATE_ALL_OBJECTS) \
55         $(PRIVATE_LDLIBS) \
56         $(call normalize-target-libraries,$(PRIVATE_ALL_WHOLE_STATIC_LIBRARIES)) \
57         $(call normalize-target-libraries,$(PRIVATE_ALL_STATIC_LIBRARIES)) \
58         $(TARGET_LIBGCC)
59 endef
60
61 else
62 $(combo_target)CUSTOM_LD_COMMAND := true
63
64 define transform-host-o-to-shared-lib-inner
65     $(HOST_CXX) \
66         -dynamiclib -single_module -read_only_relocs suppress \
67         $(HOST_GLOBAL_LD_DIRS) \
68         $(PRIVATE_ALL_OBJECTS) \
69         $(call normalize-target-libraries,$(PRIVATE_ALL_SHARED_LIBRARIES)) \
70         $(call normalize-target-libraries,$(PRIVATE_ALL_WHOLE_STATIC_LIBRARIES)) \
71         $(call normalize-target-libraries,$(PRIVATE_ALL_STATIC_LIBRARIES)) \
72         $(PRIVATE_LDLIBS) \
73         -o $@ \
74         $(PRIVATE_LDFLAGS) \
75         $(HOST_LIBGCC)
76 endef
77
78 define transform-host-o-to-executable-inner
79 $(HOST_CXX) \
80         -o $@ \
81         -Wl,-dynamic -headerpad_max_install_names \
82         $(HOST_GLOBAL_LD_DIRS) \
83         $(call normalize-target-libraries,$(PRIVATE_ALL_SHARED_LIBRARIES)) \
84         $(PRIVATE_ALL_OBJECTS) \
85         $(PRIVATE_LDLIBS) \
86         $(call normalize-target-libraries,$(PRIVATE_ALL_WHOLE_STATIC_LIBRARIES)) \
87         $(call normalize-target-libraries,$(PRIVATE_ALL_STATIC_LIBRARIES)) \
88         $(HOST_LIBGCC)
89 endef
90
91 # $(1): The file to check
92 define get-file-size
93 stat -f "%z" $(1)
94 endef
95
96 endif
97