summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libm/Makefile.in6
-rw-r--r--libpthread/linuxthreads/Makefile.in10
2 files changed, 15 insertions, 1 deletions
diff --git a/libm/Makefile.in b/libm/Makefile.in
index fb547465c..541b6fb91 100644
--- a/libm/Makefile.in
+++ b/libm/Makefile.in
@@ -26,6 +26,8 @@ CFLAGS+=-D_IEEE_LIBM -D_ISOC99_SOURCE -D_SVID_SOURCE
CFLAGS-s_lib_version.c=-D_POSIX_MODE
+#DOMULTI=n
+
LIB_NAME:=libm
ifeq ($(HAS_FPU),y)
@@ -92,10 +94,12 @@ FL_MOBJ:=$(filter-out $(patsubst s_%.o,%.o,$(notdir $(libm_ARCH_OBJS))),$(FL_MOB
endif
endif
+ifneq ($(DOMULTI),n)
ifeq ($(DO_C99_MATH),y)
LIBM_NO_MULTI:=s_lib_version.c
CSRC:=$(filter-out $(LIBM_NO_MULTI),$(CSRC))
endif
+endif
libm_SRC:=$(patsubst %.c,$(libm_DIR)/%.c,$(CSRC))
libm_OBJ:=$(patsubst $(libm_DIR)/%.c,$(libm_OUT)/%.o,$(libm_SRC))
@@ -106,9 +110,11 @@ libm_MOBJ:=$(patsubst %.o,$(libm_OUT)/%.o,$(FL_MOBJ))
libm_DEF:=$(patsubst %,-DL_%,$(subst .o,,$(notdir $(libm_MOBJ))))
libm_OBJS:=$(libm_OBJ) $(libm_MOBJ)
+ifneq ($(DOMULTI),n)
ifeq ($(DO_C99_MATH),y)
libm_OBJS+=$(patsubst %.c,$(libm_OUT)/%.o,$(LIBM_NO_MULTI))
endif
+endif
$(libm_MOBJ) $(libm_MOBJ:.o=.os): $(libm_MSRC)
$(compile.m)
diff --git a/libpthread/linuxthreads/Makefile.in b/libpthread/linuxthreads/Makefile.in
index 88692489f..3e705d15c 100644
--- a/libpthread/linuxthreads/Makefile.in
+++ b/libpthread/linuxthreads/Makefile.in
@@ -22,7 +22,7 @@ ifeq ($(PTHREADS_DEBUG_SUPPORT),y)
STRIP_FLAGS:=-X --strip-debug -R .note -R .comment
endif
-DOMULTI=n
+#DOMULTI=n
LIB_NAME:=libpthread
@@ -38,6 +38,13 @@ ifneq ($(UCLIBC_HAS_XLOCALE),y)
libpthread_SRC:=$(filter-out $(libpthread_DIR)/locale.c,$(libpthread_SRC))
endif
+ifneq ($(DOMULTI),n)
+# full list, we added the biggest one to IMA
+#libpthread_NO_MULTI:=cancel.c condvar.c join.c manager.c mutex.c oldsemaphore.c pt-machine.c pthread.c rwlock.c semaphore.c specific.c spinlock.c
+libpthread_NO_MULTI:=cancel.c condvar.c join.c manager.c mutex.c oldsemaphore.c pt-machine.c rwlock.c semaphore.c specific.c spinlock.c
+libpthread_SRC:=$(filter-out $(patsubst %.c,$(libpthread_DIR)/%.c,$(libpthread_NO_MULTI)),$(libpthread_SRC))
+endif
+
# remove generic sources, if arch specific version is present
ifneq ($(strip $(libpthread_ARCH_SRC)),)
libpthread_SRC:=$(filter-out $(patsubst %.c,$(libpthread_DIR)/%.c,$(notdir $(libpthread_ARCH_SRC))),$(libpthread_SRC))
@@ -49,6 +56,7 @@ libpthread-a-$(UCLIBC_HAS_THREADS)+=$(libpthread_OBJ)
libpthread-so-$(UCLIBC_HAS_THREADS)+=$(libpthread_OBJ:.o=.os)
libpthread-multi-$(UCLIBC_HAS_THREADS)+=$(libpthread_SRC)
+libpthread-nomulti-$(UCLIBC_HAS_THREADS)+=$(patsubst %.c,$(libpthread_OUT)/%.o,$(libpthread_NO_MULTI))
objclean-y+=libpthread_clean