am a7f9179e: Merge "Enable shared libraries to use crtbegin_so.S and crtend_so.S" into gingerbread
Merge commit 'a7f9179ecc7e2c4b70cf6eedb8ea785a00efb4c3' into gingerbread-plus-aosp
* commit 'a7f9179ecc7e2c4b70cf6eedb8ea785a00efb4c3':
Enable shared libraries to use crtbegin_so.S and crtend_so.S
diff --git a/core/combo/TARGET_linux-arm.mk b/core/combo/TARGET_linux-arm.mk
index ae3fd59..aa53767 100644
--- a/core/combo/TARGET_linux-arm.mk
+++ b/core/combo/TARGET_linux-arm.mk
@@ -211,6 +211,9 @@
TARGET_CRTBEGIN_DYNAMIC_O := $(TARGET_OUT_STATIC_LIBRARIES)/crtbegin_dynamic.o
TARGET_CRTEND_O := $(TARGET_OUT_STATIC_LIBRARIES)/crtend_android.o
+TARGET_CRTBEGIN_SO_O := $(TARGET_OUT_STATIC_LIBRARIES)/crtbegin_so.o
+TARGET_CRTEND_SO_O := $(TARGET_OUT_STATIC_LIBRARIES)/crtend_so.o
+
TARGET_STRIP_MODULE:=true
TARGET_DEFAULT_SYSTEM_SHARED_LIBRARIES := libc libstdc++ libm
@@ -229,6 +232,7 @@
-Wl,-shared,-Bsymbolic \
$(TARGET_GLOBAL_LD_DIRS) \
$(PRIVATE_ALL_OBJECTS) \
+ $(TARGET_CRTBEGIN_SO_O) \
-Wl,--whole-archive \
$(call normalize-host-libraries,$(PRIVATE_ALL_WHOLE_STATIC_LIBRARIES)) \
-Wl,--no-whole-archive \
@@ -238,7 +242,8 @@
$(TARGET_GLOBAL_LDFLAGS) \
$(PRIVATE_LDFLAGS) \
$(TARGET_FDO_LIB) \
- $(TARGET_LIBGCC)
+ $(TARGET_LIBGCC) \
+ $(TARGET_CRTEND_SO_O)
endef
define transform-o-to-executable-inner