summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDima Zavin <dima@android.com>2009-05-27 10:52:37 -0700
committerDima Zavin <dima@android.com>2009-05-27 20:16:19 -0700
commit49e55332784b82f7112ee7c1ea3c176c9dc32d7a (patch)
tree1121d44ca93d523efffb50a140b323e025b0b03f
parentca122b0e34df0e8c485be0d3ab1b80f728b76276 (diff)
downloadbionic-49e55332784b82f7112ee7c1ea3c176c9dc32d7a.zip
bionic-49e55332784b82f7112ee7c1ea3c176c9dc32d7a.tar.gz
bionic-49e55332784b82f7112ee7c1ea3c176c9dc32d7a.tar.bz2
libc: Add an intermediate version of the static libc without malloc
For now, this will only used by the dynamic loader to ensure that malloc and friends are never called. Signed-off-by: Dima Zavin <dima@android.com>
-rw-r--r--libc/Android.mk26
1 files changed, 26 insertions, 0 deletions
diff --git a/libc/Android.mk b/libc/Android.mk
index 1c1b312..59a4c6b 100644
--- a/libc/Android.mk
+++ b/libc/Android.mk
@@ -444,6 +444,32 @@ include $(BUILD_STATIC_LIBRARY)
# ========================================================
+# libc_nomalloc.a
+# ========================================================
+#
+# This is a version of the static C library that does not
+# include malloc. It's useful in situations when calling
+# the user wants to provide their own malloc implementation,
+# or wants to explicitly disallow the use of the use of malloc,
+# like the dynamic loader.
+
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := \
+ $(libc_arch_static_src_files) \
+ bionic/libc_init_static.c
+
+LOCAL_C_INCLUDES := $(libc_common_c_includes)
+LOCAL_CFLAGS := $(libc_common_cflags)
+
+LOCAL_MODULE := libc_nomalloc
+LOCAL_WHOLE_STATIC_LIBRARIES := libc_common
+LOCAL_SYSTEM_SHARED_LIBRARIES :=
+
+include $(BUILD_STATIC_LIBRARY)
+
+
+# ========================================================
# libc.a
# ========================================================
include $(CLEAR_VARS)