Browse Source

Change Makefiles that are not fully IMA to allow it to be used w/ a DOMULTI config option

Peter S. Mazinger 18 years ago
parent
commit
f48c471eec
2 changed files with 15 additions and 1 deletions
  1. 6 0
      libm/Makefile.in
  2. 9 1
      libpthread/linuxthreads/Makefile.in

+ 6 - 0
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)

+ 9 - 1
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