Browse Source

libc-{a,so,multi}-y replaced by libc-y covering common objects both in libc.a/libc.so, the diffs go into libc-static-y/libc-shared-y exclusively, add IMA to libc, don't use any MSRC anymore

Peter S. Mazinger 20 năm trước cách đây
mục cha
commit
4390d8e705
41 tập tin đã thay đổi với 513 bổ sung997 xóa
  1. 4 3
      extra/locale/Makefile.in
  2. 25 10
      libc/Makefile.in
  3. 24 59
      libc/inet/Makefile.in
  4. 1 2
      libc/inet/rpc/Makefile.in
  5. 8 11
      libc/misc/assert/Makefile.in
  6. 21 41
      libc/misc/ctype/Makefile.in
  7. 9 12
      libc/misc/dirent/Makefile.in
  8. 8 11
      libc/misc/error/Makefile.in
  9. 8 12
      libc/misc/file/Makefile.in
  10. 9 12
      libc/misc/fnmatch/Makefile.in
  11. 6 9
      libc/misc/ftw/Makefile.in
  12. 8 13
      libc/misc/glob/Makefile.in
  13. 8 11
      libc/misc/gnu/Makefile.in
  14. 11 14
      libc/misc/internals/Makefile.in
  15. 11 39
      libc/misc/locale/Makefile.in
  16. 8 11
      libc/misc/mntent/Makefile.in
  17. 3 6
      libc/misc/pthread/Makefile.in
  18. 9 12
      libc/misc/regex/Makefile.in
  19. 16 59
      libc/misc/search/Makefile.in
  20. 9 12
      libc/misc/statfs/Makefile.in
  21. 8 11
      libc/misc/syslog/Makefile.in
  22. 14 52
      libc/misc/sysvipc/Makefile.in
  23. 17 50
      libc/misc/time/Makefile.in
  24. 8 11
      libc/misc/ttyent/Makefile.in
  25. 8 11
      libc/misc/utmp/Makefile.in
  26. 12 23
      libc/misc/wchar/Makefile.in
  27. 20 38
      libc/misc/wctype/Makefile.in
  28. 8 11
      libc/misc/wordexp/Makefile.in
  29. 17 34
      libc/pwd_grp/Makefile.in
  30. 9 13
      libc/signal/Makefile.in
  31. 19 70
      libc/stdio/Makefile.in
  32. 50 110
      libc/stdlib/Makefile.in
  33. 9 20
      libc/stdlib/malloc-simple/Makefile.in
  34. 9 12
      libc/stdlib/malloc-standard/Makefile.in
  35. 11 14
      libc/stdlib/malloc/Makefile.in
  36. 37 45
      libc/string/Makefile.in
  37. 2 4
      libc/sysdeps/linux/Makefile.commonarch
  38. 19 29
      libc/sysdeps/linux/common/Makefile.in
  39. 6 34
      libc/sysdeps/linux/vax/Makefile.arch
  40. 7 8
      libc/termios/Makefile.in
  41. 17 38
      libc/unistd/Makefile.in

+ 4 - 3
extra/locale/Makefile.in

@@ -1,6 +1,6 @@
 # Makefile for uClibc
 #
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
@@ -41,8 +41,9 @@ CFLAGS-locale_data.c := -D__WCHAR_ENABLED -I$(locale_OUT) -I$(locale_DIR)
 # produces a loop
 #headers-$(UCLIBC_HAS_LOCALE) += locale_headers
 
-libc-a-$(UCLIBC_HAS_LOCALE) += $(locale_OBJ)
-libc-so-$(UCLIBC_HAS_LOCALE) += $(locale_OBJ:.o=.os)
+libc-$(UCLIBC_HAS_LOCALE) += $(locale_OBJ)
+
+libc-nomulti-$(UCLIBC_HAS_LOCALE) += $(locale_OBJ)
 
 locale_headers: $(top_builddir)include/bits/uClibc_locale_data.h
 

+ 25 - 10
libc/Makefile.in

@@ -1,11 +1,14 @@
 # Makefile for uClibc
 #
 # Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
+libc_DIR := $(top_srcdir)libc
+libc_OUT := $(top_builddir)libc
+
 # Check if the target architecture has a version script for
 # libc, and if so, include it when linking.
 VERSION_SCRIPT := $(wildcard $(libc_DIR)/sysdeps/linux/$(TARGET_ARCH)/libc.map)
@@ -20,9 +23,6 @@ LIBS-libc.so := $(interp) $(ldso) $(top_builddir)lib/$(NONSHARED_LIBNAME)
 # we have SHARED_MAJORNAME=libc.so.$(MAJOR_VERSION) defined in Rules.mak
 libc_FULL_NAME := libuClibc-$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL).so
 
-libc_DIR := $(top_srcdir)libc
-libc_OUT := $(top_builddir)libc
-
 # this comes first, so duplicate removal works correctly
 include $(libc_DIR)/sysdeps/Makefile.in
 
@@ -36,21 +36,31 @@ include $(libc_DIR)/signal/Makefile.in
 include $(libc_DIR)/stdlib/Makefile.in
 include $(libc_DIR)/unistd/Makefile.in
 
-libc-a-y += $(libc-static-y)
-libc-so-y += $(libc-shared-y)
-
 ifeq ($(DOPIC),y)
-libc-a-y := $(libc-a-y:.o=.os)
+libc-a-y = $(libc-y:.o=.os) $(libc-static-y:.o=.os)
+else
+libc-a-y = $(libc-y) $(libc-static-y)
 endif
 
-libc-nomulti-y += $(libc-shared-y)
+ifneq ($(DOMULTI),y)
+libc-so-y = $(libc-y:.o=.os) $(libc-shared-y)
+else
+all_sources = $(libc-y:.o=.c)
+all_sources += $(libc-shared-y:.oS=.c)
+libc-multi-y = $(filter-out $(libc-nomulti-y:.o=.c),$(all_sources))
+endif
 
 lib-a-y += $(top_builddir)lib/libc.a
 lib-so-y += $(libc)
 objclean-y += libc_clean
 
+ifneq ($(DOMULTI),y)
 $(libc:.$(MAJOR_VERSION)=): $(libc_OUT)/libc_so.a $(LIBS-libc.so)
 	$(call link.so,$(libc_FULL_NAME),$(MAJOR_VERSION))
+else
+$(libc:.$(MAJOR_VERSION)=): $(libc_OUT)/libc.oS $(libc-nomulti-y:.o=.os) $(LIBS-libc.so)
+	$(call linkm.so,$(libc_FULL_NAME),$(MAJOR_VERSION))
+endif
 	$(Q)$(RM) $@
 	$(Q)echo "/* GNU ld script" > $@
 	$(Q)echo " * Use the shared library, but some functions are only in" >> $@
@@ -70,6 +80,11 @@ else
 endif
 	$(do_ar)
 
+$(libc_OUT)/libc.oS: $(libc-multi-y) | $(top_builddir)lib/libc.a $(top_builddir)lib/$(NONSHARED_LIBNAME)
+	$(Q)$(RM) $@
+	$(compile-m)
+	$(do_t_strip)
+
 $(top_builddir)lib/libc.a: $(libc-a-y) | $(crt-y)
 	$(Q)$(INSTALL) -d $(dir $@)
 	$(Q)$(RM) $@
@@ -77,4 +92,4 @@ $(top_builddir)lib/libc.a: $(libc-a-y) | $(crt-y)
 	$(do_ar)
 
 libc_clean:
-	$(RM) $(libc_OUT)/*.{o,os,a}
+	$(RM) $(libc_OUT)/*.{o,os,oS,a}

+ 24 - 59
libc/inet/Makefile.in

@@ -1,80 +1,45 @@
 # Makefile for uClibc
 #
 # Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
 include $(top_srcdir)libc/inet/rpc/Makefile.in
 
-CSRC:=	getservice.c getproto.c hostid.c getnetent.c getnetbynm.c getnetbyad.c \
+CSRC :=	getservice.c getproto.c hostid.c getnetent.c getnetbynm.c getnetbyad.c \
 	inet_net.c ntop.c herror.c if_index.c gai_strerror.c getaddrinfo.c \
 	in6_addr.c ether_addr.c ntohl.c opensock.c ifaddrs.c
 
-MSRC1:=	addr.c
-MOBJ1:=	inet_aton.o inet_addr.o inet_ntoa.o inet_makeaddr.o inet_lnaof.o \
-	inet_netof.o
+# multi source addr.c
+CSRC +=	inet_aton.c inet_addr.c inet_ntoa.c inet_makeaddr.c inet_lnaof.c \
+	inet_netof.c
 
-MSRC2:=	resolv.c
-MOBJ2:=	encodeh.o decodeh.o encoded.o decoded.o lengthd.o encodeq.o \
-	decodeq.o lengthq.o encodea.o decodea.o encodep.o decodep.o \
-	formquery.o dnslookup.o resolveaddress.o opennameservers.o \
-	closenameservers.o resolvename.o gethostbyname.o res_init.o \
-	res_query.o gethostbyaddr.o read_etc_hosts_r.o get_hosts_byname_r.o \
-	get_hosts_byaddr_r.o gethostbyname2.o getnameinfo.o gethostent.o \
-	gethostbyname_r.o gethostbyname2_r.o gethostbyaddr_r.o \
-	res_comp.o ns_name.o
+# multi source resolv.c
+CSRC +=	encodeh.c decodeh.c encoded.c decoded.c lengthd.c encodeq.c \
+	decodeq.c lengthq.c encodea.c decodea.c encodep.c decodep.c \
+	formquery.c dnslookup.c resolveaddress.c opennameservers.c \
+	closenameservers.c resolvename.c gethostbyname.c res_init.c \
+	res_query.c gethostbyaddr.c read_etc_hosts_r.c get_hosts_byname_r.c \
+	get_hosts_byaddr_r.c gethostbyname2.c getnameinfo.c gethostent.c \
+	gethostbyname_r.c gethostbyname2_r.c gethostbyaddr_r.c \
+	res_comp.c ns_name.c
 
-MSRC3:=	socketcalls.c
-MOBJ3:=	accept.o bind.o connect.o getpeername.o getsockname.o getsockopt.o \
-	listen.o recv.o recvfrom.o recvmsg.o send.o sendmsg.o sendto.o \
-	setsockopt.o shutdown.o socket.o socketpair.o 
+# multi source socketcalls.c
+CSRC +=	accept.c bind.c connect.c getpeername.c getsockname.c getsockopt.c \
+	listen.c recv.c recvfrom.c recvmsg.c send.c sendmsg.c sendto.c \
+	setsockopt.c shutdown.c socket.c socketpair.c 
 
-INET_DIR:=$(top_srcdir)libc/inet
-INET_OUT:=$(top_builddir)libc/inet
+INET_DIR := $(top_srcdir)libc/inet
+INET_OUT := $(top_builddir)libc/inet
 
-INET_SRC:=$(patsubst %.c,$(INET_DIR)/%.c,$(CSRC))
-INET_OBJ:=$(patsubst %.c,$(INET_OUT)/%.o,$(CSRC))
+INET_SRC := $(patsubst %.c,$(INET_DIR)/%.c,$(CSRC))
+INET_OBJ := $(patsubst %.c,$(INET_OUT)/%.o,$(CSRC))
 
-INET_MSRC1:=$(INET_DIR)/$(MSRC1)
-INET_MSRC2:=$(INET_DIR)/$(MSRC2)
-INET_MSRC3:=$(INET_DIR)/$(MSRC3)
-INET_MOBJ1:=$(patsubst %.o,$(INET_OUT)/%.o,$(MOBJ1))
-INET_MOBJ2:=$(patsubst %.o,$(INET_OUT)/%.o,$(MOBJ2))
-INET_MOBJ3:=$(patsubst %.o,$(INET_OUT)/%.o,$(MOBJ3))
+libc-y += $(INET_OBJ)
 
-INET_MSRC:=$(INET_MSRC1) $(INET_MSRC2) $(INET_MSRC3)
-INET_MOBJ:=$(INET_MOBJ1) $(INET_MOBJ2) $(INET_MOBJ3)
-INET_DEF:=$(patsubst %,-DL_%,$(subst .o,,$(notdir $(INET_MOBJ))))
-
-INET_OBJS:=$(INET_OBJ) $(INET_MOBJ)
-
-$(INET_MOBJ1): $(INET_MSRC1)
-	$(compile.m)
-
-$(INET_MOBJ1:.o=.os): $(INET_MSRC1)
-	$(compile.m)
-
-$(INET_MOBJ2): $(INET_MSRC2)
-	$(compile.m)
-
-$(INET_MOBJ2:.o=.os): $(INET_MSRC2)
-	$(compile.m)
-
-$(INET_MOBJ3): $(INET_MSRC3)
-	$(compile.m)
-
-$(INET_MOBJ3:.o=.os): $(INET_MSRC3)
-	$(compile.m)
-
-libc-a-y+=$(INET_OBJS)
-libc-so-y+=$(INET_OBJS:.o=.os)
-
-CFLAGS-multi-y+=$(INET_DEF)
-libc-multi-y+=$(INET_SRC) $(INET_MSRC)
-
-objclean-y+=inet_objclean
+objclean-y += inet_objclean
 
 inet_objclean:
 	$(RM) $(INET_OUT)/*.{o,os}

+ 1 - 2
libc/inet/rpc/Makefile.in

@@ -34,8 +34,7 @@ INET_RPC_OBJ:=$(patsubst $(INET_RPC_DIR)/%.c,$(INET_RPC_OUT)/%.o,$(INET_RPC_SRC)
 libc-static-$(UCLIBC_HAS_RPC)+=$(INET_RPC_OUT)/rpc_thread.o
 libc-shared-$(UCLIBC_HAS_RPC)+=$(INET_RPC_OUT)/rpc_thread.oS
 
-libc-a-$(UCLIBC_HAS_RPC)+=$(INET_RPC_OBJ)
-libc-so-$(UCLIBC_HAS_RPC)+=$(INET_RPC_OBJ:.o=.os)
+libc-$(UCLIBC_HAS_RPC)+=$(INET_RPC_OBJ)
 
 objclean-y+=inet_rpc_objclean
 

+ 8 - 11
libc/misc/assert/Makefile.in

@@ -1,25 +1,22 @@
 # Makefile for uClibc
 #
 # Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
-CSRC:=__assert.c
+CSRC := __assert.c
 
-MISC_ASSERT_DIR:=$(top_srcdir)libc/misc/assert
-MISC_ASSERT_OUT:=$(top_builddir)libc/misc/assert
+MISC_ASSERT_DIR := $(top_srcdir)libc/misc/assert
+MISC_ASSERT_OUT := $(top_builddir)libc/misc/assert
 
-MISC_ASSERT_SRC:=$(MISC_ASSERT_DIR)/__assert.c
-MISC_ASSERT_OBJ:=$(MISC_ASSERT_OUT)/__assert.o
+MISC_ASSERT_SRC := $(MISC_ASSERT_DIR)/__assert.c
+MISC_ASSERT_OBJ := $(MISC_ASSERT_OUT)/__assert.o
 
-libc-a-y+=$(MISC_ASSERT_OBJ)
-libc-so-y+=$(MISC_ASSERT_OBJ:.o=.os)
+libc-y += $(MISC_ASSERT_OBJ)
 
-libc-multi-y+=$(MISC_ASSERT_SRC)
-
-objclean-y+=misc_assert_objclean
+objclean-y += misc_assert_objclean
 
 misc_assert_objclean:
 	$(RM) $(MISC_ASSERT_OUT)/*.{o,os}

+ 21 - 41
libc/misc/ctype/Makefile.in

@@ -1,59 +1,39 @@
 # Makefile for uClibc
 #
 # Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
-MSRC:=ctype.c
-MOBJ:=	isalnum.o isalpha.o isascii.o iscntrl.o isdigit.o \
-	isgraph.o islower.o isprint.o ispunct.o isspace.o \
-	isupper.o isxdigit.o toascii.o tolower.o toupper.o \
-	isblank.o
+# multi source ctype.c
+COM_SRC := \
+	isalnum.c isalpha.c isascii.c iscntrl.c isdigit.c \
+	isgraph.c islower.c isprint.c ispunct.c isspace.c \
+	isupper.c isxdigit.c toascii.c tolower.c toupper.c \
+	isblank.c
+
+CSRC := $(COM_SRC)
 
 ifeq ($(UCLIBC_HAS_CTYPE_TABLES),y)
-MOBJ+=	__C_ctype_b.o __C_ctype_tolower.o __C_ctype_toupper.o \
-	__ctype_b_loc.o __ctype_tolower_loc.o __ctype_toupper_loc.o \
-	__ctype_assert.o isctype.o
+CSRC +=	__C_ctype_b.c __C_ctype_tolower.c __C_ctype_toupper.c \
+	__ctype_b_loc.c __ctype_tolower_loc.c __ctype_toupper_loc.c \
+	__ctype_assert.c isctype.c
 endif
 
-MOBJx:=	isalnum_l.o isalpha_l.o isascii_l.o iscntrl_l.o isdigit_l.o \
-	isgraph_l.o islower_l.o isprint_l.o ispunct_l.o isspace_l.o \
-	isupper_l.o isxdigit_l.o toascii_l.o tolower_l.o toupper_l.o \
-	isblank_l.o
-
-MISC_CTYPE_DIR:=$(top_srcdir)libc/misc/ctype
-MISC_CTYPE_OUT:=$(top_builddir)libc/misc/ctype
-
-MISC_CTYPE_MSRC:=$(MISC_CTYPE_DIR)/$(MSRC)
-MISC_CTYPE_MOBJ:=$(patsubst %.o,$(MISC_CTYPE_OUT)/%.o,$(MOBJ))
-MISC_CTYPE_MOBJx:=$(patsubst %.o,$(MISC_CTYPE_OUT)/%.o,$(MOBJx))
-
-MISC_CTYPE_DEF:=$(patsubst %,-DL_%,$(subst .o,,$(notdir $(MISC_CTYPE_MOBJ))))
-
-$(MISC_CTYPE_MOBJ): $(MISC_CTYPE_MSRC)
-	$(compile.m)
-
-$(MISC_CTYPE_MOBJ:.o=.os): $(MISC_CTYPE_MSRC)
-	$(compile.m)
-
-$(MISC_CTYPE_MOBJx): $(MISC_CTYPE_MSRC)
-	$(compile.m) -D__UCLIBC_DO_XLOCALE
+ifeq ($(UCLIBC_HAS_XLOCALE),y)
+CSRC += $(patsubst %.c,%_l.c,$(COM_SRC))
+endif
 
-$(MISC_CTYPE_MOBJx:.o=.os): $(MISC_CTYPE_MSRC)
-	$(compile.m) -D__UCLIBC_DO_XLOCALE
+MISC_CTYPE_DIR := $(top_srcdir)libc/misc/ctype
+MISC_CTYPE_OUT := $(top_builddir)libc/misc/ctype
 
-libc-a-y+=$(MISC_CTYPE_MOBJ)
-libc-a-$(UCLIBC_HAS_XLOCALE)+=$(MISC_CTYPE_MOBJx)
-libc-so-y+=$(MISC_CTYPE_MOBJ:.o=.os)
-libc-so-$(UCLIBC_HAS_XLOCALE)+=$(MISC_CTYPE_MOBJx:.o=.os)
+MISC_CTYPE_SRC := $(patsubst %.c,$(MISC_CTYPE_DIR)/%.c,$(CSRC))
+MISC_CTYPE_OBJ := $(patsubst %.c,$(MISC_CTYPE_OUT)/%.o,$(CSRC))
 
-CFLAGS-multi-y+=$(MISC_CTYPE_DEF)
-libc-multi-y+=$(MISC_CTYPE_MSRC)
-libc-nomulti-$(UCLIBC_HAS_XLOCALE)+=$(MISC_CTYPE_MOBJx)
+libc-y += $(MISC_CTYPE_OBJ)
 
-objclean-y+=misc_ctype_objclean
+objclean-y += misc_ctype_objclean
 
 misc_ctype_objclean:
 	$(RM) $(MISC_CTYPE_OUT)/*.{o,os}

+ 9 - 12
libc/misc/dirent/Makefile.in

@@ -1,30 +1,27 @@
 # Makefile for uClibc
 #
 # Copyright (C) 2001 by Lineo, inc.
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
-CSRC:=	alphasort.c closedir.c dirfd.c opendir.c readdir.c rewinddir.c scandir.c \
+CSRC :=	alphasort.c closedir.c dirfd.c opendir.c readdir.c rewinddir.c scandir.c \
 	seekdir.c telldir.c readdir_r.c
 
 ifeq ($(UCLIBC_HAS_LFS),y)
-CSRC+=	readdir64.c alphasort64.c scandir64.c readdir64_r.c
+CSRC +=	readdir64.c alphasort64.c scandir64.c readdir64_r.c
 endif
 
-MISC_DIRENT_DIR:=$(top_srcdir)libc/misc/dirent
-MISC_DIRENT_OUT:=$(top_builddir)libc/misc/dirent
+MISC_DIRENT_DIR := $(top_srcdir)libc/misc/dirent
+MISC_DIRENT_OUT := $(top_builddir)libc/misc/dirent
 
-MISC_DIRENT_SRC:=$(patsubst %.c,$(MISC_DIRENT_DIR)/%.c,$(CSRC))
-MISC_DIRENT_OBJ:=$(patsubst %.c,$(MISC_DIRENT_OUT)/%.o,$(CSRC))
+MISC_DIRENT_SRC := $(patsubst %.c,$(MISC_DIRENT_DIR)/%.c,$(CSRC))
+MISC_DIRENT_OBJ := $(patsubst %.c,$(MISC_DIRENT_OUT)/%.o,$(CSRC))
 
-libc-a-y+=$(MISC_DIRENT_OBJ)
-libc-so-y+=$(MISC_DIRENT_OBJ:.o=.os)
+libc-y += $(MISC_DIRENT_OBJ)
 
-libc-multi-y+=$(MISC_DIRENT_SRC)
-
-objclean-y+=misc_dirent_objclean
+objclean-y += misc_dirent_objclean
 
 misc_dirent_objclean:
 	$(RM) $(MISC_DIRENT_OUT)/*.{o,os}

+ 8 - 11
libc/misc/error/Makefile.in

@@ -1,24 +1,21 @@
 # Makefile for uClibc
 #
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
-CSRC:=error.c err.c
+CSRC := error.c err.c
 
-MISC_ERROR_DIR:=$(top_srcdir)libc/misc/error
-MISC_ERROR_OUT:=$(top_builddir)libc/misc/error
+MISC_ERROR_DIR := $(top_srcdir)libc/misc/error
+MISC_ERROR_OUT := $(top_builddir)libc/misc/error
 
-MISC_ERROR_SRC:=$(patsubst %.c,$(MISC_ERROR_DIR)/%.c,$(CSRC))
-MISC_ERROR_OBJ:=$(patsubst %.c,$(MISC_ERROR_OUT)/%.o,$(CSRC))
+MISC_ERROR_SRC := $(patsubst %.c,$(MISC_ERROR_DIR)/%.c,$(CSRC))
+MISC_ERROR_OBJ := $(patsubst %.c,$(MISC_ERROR_OUT)/%.o,$(CSRC))
 
-libc-a-y+=$(MISC_ERROR_OBJ)
-libc-so-y+=$(MISC_ERROR_OBJ:.o=.os)
+libc-y += $(MISC_ERROR_OBJ)
 
-libc-multi-y+=$(MISC_ERROR_SRC)
-
-objclean-y+=misc_error_objclean
+objclean-y += misc_error_objclean
 
 misc_error_objclean:
 	$(RM) $(MISC_ERROR_OUT)/*.{o,os}

+ 8 - 12
libc/misc/file/Makefile.in

@@ -1,27 +1,23 @@
 # Makefile for uClibc
 #
 # Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
-MISC_FILE_DIR:=$(top_srcdir)libc/misc/file
-MISC_FILE_OUT:=$(top_builddir)libc/misc/file
+MISC_FILE_DIR := $(top_srcdir)libc/misc/file
+MISC_FILE_OUT := $(top_builddir)libc/misc/file
 
-MISC_FILE_SRC:=$(wildcard $(MISC_FILE_DIR)/*.c)
+MISC_FILE_SRC := $(wildcard $(MISC_FILE_DIR)/*.c)
 ifneq ($(UCLIBC_HAS_LFS),y)
-MISC_FILE_SRC:=$(filter-out $(MISC_FILE_DIR)/lockf64.c,$(MISC_FILE_SRC))
+MISC_FILE_SRC := $(filter-out $(MISC_FILE_DIR)/lockf64.c,$(MISC_FILE_SRC))
 endif
-MISC_FILE_OBJ:=$(patsubst $(MISC_FILE_DIR)/%.c,$(MISC_FILE_OUT)/%.o,$(MISC_FILE_SRC))
+MISC_FILE_OBJ := $(patsubst $(MISC_FILE_DIR)/%.c,$(MISC_FILE_OUT)/%.o,$(MISC_FILE_SRC))
 
-libc-a-y+=$(MISC_FILE_OBJ)
-libc-so-y+=$(MISC_FILE_OBJ:.o=.os)
+libc-y += $(MISC_FILE_OBJ)
 
-libc-multi-y+=$(MISC_FILE_DIR)/lockf.c
-libc-nomulti-$(UCLIBC_HAS_LFS)+=$(MISC_FILE_OUT)/lockf64.o
-
-objclean-y+=misc_file_objclean
+objclean-y += misc_file_objclean
 
 misc_file_objclean:
 	$(RM) $(MISC_FILE_OUT)/*.{o,os}

+ 9 - 12
libc/misc/fnmatch/Makefile.in

@@ -1,29 +1,26 @@
 # Makefile for uClibc
 #
 # Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
 ifeq ($(UCLIBC_HAS_FNMATCH_OLD),y)
-CSRC:=fnmatch_old.c
+CSRC := fnmatch_old.c
 else
-CSRC:=fnmatch.c
+CSRC := fnmatch.c
 endif
 
-MISC_FNMATCH_DIR:=$(top_srcdir)libc/misc/fnmatch
-MISC_FNMATCH_OUT:=$(top_builddir)libc/misc/fnmatch
+MISC_FNMATCH_DIR := $(top_srcdir)libc/misc/fnmatch
+MISC_FNMATCH_OUT := $(top_builddir)libc/misc/fnmatch
 
-MISC_FNMATCH_SRC:=$(patsubst %.c,$(MISC_FNMATCH_DIR)/%.c,$(CSRC))
-MISC_FNMATCH_OBJ:=$(patsubst %.c,$(MISC_FNMATCH_OUT)/%.o,$(CSRC))
+MISC_FNMATCH_SRC := $(patsubst %.c,$(MISC_FNMATCH_DIR)/%.c,$(CSRC))
+MISC_FNMATCH_OBJ := $(patsubst %.c,$(MISC_FNMATCH_OUT)/%.o,$(CSRC))
 
-libc-a-$(UCLIBC_HAS_FNMATCH)+=$(MISC_FNMATCH_OBJ)
-libc-so-$(UCLIBC_HAS_FNMATCH)+=$(MISC_FNMATCH_OBJ:.o=.os)
+libc-$(UCLIBC_HAS_FNMATCH) += $(MISC_FNMATCH_OBJ)
 
-libc-multi-$(UCLIBC_HAS_FNMATCH)+=$(MISC_FNMATCH_SRC)
-
-objclean-y+=misc_fnmatch_objclean
+objclean-y += misc_fnmatch_objclean
 
 misc_fnmatch_objclean:
 	$(RM) $(MISC_FNMATCH_OUT)/*.{o,os}

+ 6 - 9
libc/misc/ftw/Makefile.in

@@ -1,25 +1,22 @@
 # Makefile for uClibc
 #
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
-SRC := ftw.c
+CSRC := ftw.c
 ifeq ($(UCLIBC_HAS_LFS),y)
-SRC += ftw64.c
+CSRC += ftw64.c
 endif
 
 MISC_FTW_DIR := $(top_srcdir)libc/misc/ftw
 MISC_FTW_OUT := $(top_builddir)libc/misc/ftw
 
-MISC_FTW_SRC := $(patsubst %.c,$(MISC_FTW_DIR)/%.c,$(SRC))
-MISC_FTW_OBJ := $(patsubst %.c,$(MISC_FTW_OUT)/%.o,$(SRC))
+MISC_FTW_SRC := $(patsubst %.c,$(MISC_FTW_DIR)/%.c,$(CSRC))
+MISC_FTW_OBJ := $(patsubst %.c,$(MISC_FTW_OUT)/%.o,$(CSRC))
 
-libc-a-$(UCLIBC_HAS_FTW) += $(MISC_FTW_OBJ)
-libc-so-$(UCLIBC_HAS_FTW) += $(MISC_FTW_OBJ:.o=.os)
-
-libc-multi-$(UCLIBC_HAS_FTW) += $(MISC_FTW_SRC)
+libc-$(UCLIBC_HAS_FTW) += $(MISC_FTW_OBJ)
 
 objclean-y += misc_ftw_objclean
 

+ 8 - 13
libc/misc/glob/Makefile.in

@@ -1,31 +1,26 @@
 # Makefile for uClibc
 #
 # Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
-CSRC:=glob.c glob64.c glob-hooks.c
+CSRC := glob.c glob64.c glob-hooks.c
 
-MISC_GLOB_DIR:=$(top_srcdir)libc/misc/glob
-MISC_GLOB_OUT:=$(top_builddir)libc/misc/glob
+MISC_GLOB_DIR := $(top_srcdir)libc/misc/glob
+MISC_GLOB_OUT := $(top_builddir)libc/misc/glob
 
-MISC_GLOB_SRC:=$(patsubst %.c,$(MISC_GLOB_DIR)/%.c,$(CSRC))
-MISC_GLOB_OBJ:=$(patsubst %.c,$(MISC_GLOB_OUT)/%.o,$(CSRC))
+MISC_GLOB_SRC := $(patsubst %.c,$(MISC_GLOB_DIR)/%.c,$(CSRC))
+MISC_GLOB_OBJ := $(patsubst %.c,$(MISC_GLOB_OUT)/%.o,$(CSRC))
 
 $(MISC_GLOB_OUT)/glob64.o: $(MISC_GLOB_DIR)/glob64.c $(MISC_GLOB_DIR)/glob.c
 
 $(MISC_GLOB_OUT)/glob64.os: $(MISC_GLOB_DIR)/glob64.c $(MISC_GLOB_DIR)/glob.c
 
-libc-a-$(UCLIBC_HAS_GLOB)+=$(MISC_GLOB_OBJ)
-libc-so-$(UCLIBC_HAS_GLOB)+=$(MISC_GLOB_OBJ:.o=.os)
+libc-$(UCLIBC_HAS_GLOB) += $(MISC_GLOB_OBJ)
 
-# glob has to be rewritten to allow multi
-#libc-multi-$(UCLIBC_HAS_GLOB)+=$(MISC_GLOB_SRC)
-libc-nomulti-$(UCLIBC_HAS_GLOB)+=$(MISC_GLOB_OBJ)
-
-objclean-y+=misc_glob_objclean
+objclean-y += misc_glob_objclean
 
 misc_glob_objclean:
 	$(RM) $(MISC_GLOB_OUT)/*.{o,os}

+ 8 - 11
libc/misc/gnu/Makefile.in

@@ -1,25 +1,22 @@
 # Makefile for uClibc
 #
 # Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
-CSRC:=obstack.c
+CSRC := obstack.c
 
-MISC_GNU_DIR:=$(top_srcdir)libc/misc/gnu
-MISC_GNU_OUT:=$(top_builddir)libc/misc/gnu
+MISC_GNU_DIR := $(top_srcdir)libc/misc/gnu
+MISC_GNU_OUT := $(top_builddir)libc/misc/gnu
 
-MISC_GNU_SRC:=$(MISC_GNU_DIR)/obstack.c
-MISC_GNU_OBJ:=$(MISC_GNU_OUT)/obstack.o
+MISC_GNU_SRC := $(MISC_GNU_DIR)/obstack.c
+MISC_GNU_OBJ := $(MISC_GNU_OUT)/obstack.o
 
-libc-a-y+=$(MISC_GNU_OBJ)
-libc-so-y+=$(MISC_GNU_OBJ:.o=.os)
+libc-y += $(MISC_GNU_OBJ)
 
-libc-multi-y+=$(MISC_GNU_SRC)
-
-objclean-y+=misc_gnu_objclean
+objclean-y += misc_gnu_objclean
 
 misc_gnu_objclean:
 	$(RM) $(MISC_GNU_OUT)/*.{o,os}

+ 11 - 14
libc/misc/internals/Makefile.in

@@ -1,29 +1,26 @@
 # Makefile for uClibc
 #
 # Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
-CFLAGS-__uClibc_main.c:=$(SSP_DISABLE_FLAGS)
+CFLAGS-__uClibc_main.c := $(SSP_DISABLE_FLAGS)
 
-CSRC:=tempname.c errno.c __errno_location.c __h_errno_location.c
+CSRC := tempname.c errno.c __errno_location.c __h_errno_location.c
 
-MISC_INTERNALS_DIR:=$(top_srcdir)libc/misc/internals
-MISC_INTERNALS_OUT:=$(top_builddir)libc/misc/internals
+MISC_INTERNALS_DIR := $(top_srcdir)libc/misc/internals
+MISC_INTERNALS_OUT := $(top_builddir)libc/misc/internals
 
-MISC_INTERNALS_SRC:=$(patsubst %.c,$(MISC_INTERNALS_DIR)/%.c,$(CSRC))
-MISC_INTERNALS_OBJ:=$(patsubst %.c,$(MISC_INTERNALS_OUT)/%.o,$(CSRC))
+MISC_INTERNALS_SRC := $(patsubst %.c,$(MISC_INTERNALS_DIR)/%.c,$(CSRC))
+MISC_INTERNALS_OBJ := $(patsubst %.c,$(MISC_INTERNALS_OUT)/%.o,$(CSRC))
 
-libc-a-y+=$(MISC_INTERNALS_OBJ)
-libc-so-y+=$(MISC_INTERNALS_OBJ:.o=.os)
-libc-shared-y+=$(MISC_INTERNALS_OUT)/__uClibc_main.oS
-libc-static-y+=$(MISC_INTERNALS_OUT)/__uClibc_main.o
+libc-y += $(MISC_INTERNALS_OBJ)
+libc-shared-y += $(MISC_INTERNALS_OUT)/__uClibc_main.oS
+libc-static-y += $(MISC_INTERNALS_OUT)/__uClibc_main.o
 
-libc-multi-y+=$(MISC_INTERNALS_SRC)
-
-objclean-y+=misc_internals_objclean
+objclean-y += misc_internals_objclean
 
 misc_internals_objclean:
 	$(RM) $(MISC_INTERNALS_OUT)/*.{o,os,oS}

+ 11 - 39
libc/misc/locale/Makefile.in

@@ -1,57 +1,29 @@
 # Makefile for uClibc
 #
 # Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
-MSRC:=locale.c
-MOBJ:=setlocale.o localeconv.o _locale_init.o nl_langinfo.o
-MOBJx:=
-
+# multi source locale.c
+CSRC := setlocale.c localeconv.c _locale_init.c nl_langinfo.c
 ifeq ($(UCLIBC_HAS_LOCALE),y)
-MOBJ+=newlocale.o __locale_mbrtowc_l.o
+CSRC += newlocale.c __locale_mbrtowc_l.c
 endif
-
 ifeq ($(UCLIBC_HAS_XLOCALE),y)
-MOBJx:=nl_langinfo_l.o duplocale.o freelocale.o uselocale.o __curlocale.o
+CSRC += nl_langinfo_l.c duplocale.c freelocale.c uselocale.c __curlocale.c
 endif
 
-MISC_LOCALE_NO_MULTI=localeconv.o
-
-MISC_LOCALE_DIR:=$(top_srcdir)libc/misc/locale
-MISC_LOCALE_OUT:=$(top_builddir)libc/misc/locale
-
-MISC_LOCALE_MSRC:=$(MISC_LOCALE_DIR)/$(MSRC)
-MISC_LOCALE_MOBJ:=$(patsubst %.o,$(MISC_LOCALE_OUT)/%.o,$(MOBJ))
-MISC_LOCALE_MOBJx:=$(patsubst %.o,$(MISC_LOCALE_OUT)/%.o,$(MOBJx))
-
-MISC_LOCALE_DEF:=$(patsubst %,-DL_%,$(subst .o,,$(filter-out $(MISC_LOCALE_NO_MULTI),$(notdir $(MISC_LOCALE_MOBJ)))))
-
-$(MISC_LOCALE_MOBJ): $(MISC_LOCALE_MSRC)
-	$(compile.m)
-
-$(MISC_LOCALE_MOBJ:.o=.os): $(MISC_LOCALE_MSRC)
-	$(compile.m)
-
-$(MISC_LOCALE_MOBJx): $(MISC_LOCALE_MSRC)
-	$(compile.m) -D__UCLIBC_DO_XLOCALE
-
-$(MISC_LOCALE_MOBJx:.o=.os): $(MISC_LOCALE_MSRC)
-	$(compile.m) -D__UCLIBC_DO_XLOCALE
+MISC_LOCALE_DIR := $(top_srcdir)libc/misc/locale
+MISC_LOCALE_OUT := $(top_builddir)libc/misc/locale
 
-libc-a-y+=$(MISC_LOCALE_MOBJ)
-libc-a-$(UCLIBC_HAS_XLOCALE)+=$(MISC_LOCALE_MOBJx)
-libc-so-y+=$(MISC_LOCALE_MOBJ:.o=.os)
-libc-so-$(UCLIBC_HAS_XLOCALE)+=$(MISC_LOCALE_MOBJx:.o=.os)
+MISC_LOCALE_SRC := $(patsubst %.c,$(MISC_LOCALE_DIR)/%.c,$(CSRC))
+MISC_LOCALE_OBJ := $(patsubst %.c,$(MISC_LOCALE_OUT)/%.o,$(CSRC))
 
-CFLAGS-multi-y+=$(MISC_LOCALE_DEF)
-libc-multi-y+=$(MISC_LOCALE_MSRC)
-libc-nomulti-y+=$(patsubst %.o,$(MISC_LOCALE_OUT)/%.o,$(MISC_LOCALE_NO_MULTI))
-libc-nomulti-$(UCLIBC_HAS_XLOCALE)+=$(MISC_LOCALE_MOBJx)
+libc-y += $(MISC_LOCALE_OBJ)
 
-objclean-y+=misc_locale_objclean
+objclean-y += misc_locale_objclean
 
 misc_locale_objclean:
 	$(RM) $(MISC_LOCALE_OUT)/{*.{o,os}}

+ 8 - 11
libc/misc/mntent/Makefile.in

@@ -1,25 +1,22 @@
 # Makefile for uClibc
 #
 # Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
-CSRC:=mntent.c
+CSRC := mntent.c
 
-MISC_MNTENT_DIR:=$(top_srcdir)libc/misc/mntent
-MISC_MNTENT_OUT:=$(top_builddir)libc/misc/mntent
+MISC_MNTENT_DIR := $(top_srcdir)libc/misc/mntent
+MISC_MNTENT_OUT := $(top_builddir)libc/misc/mntent
 
-MISC_MNTENT_SRC:=$(MISC_MNTENT_DIR)/mntent.c
-MISC_MNTENT_OBJ:=$(MISC_MNTENT_OUT)/mntent.o
+MISC_MNTENT_SRC := $(MISC_MNTENT_DIR)/mntent.c
+MISC_MNTENT_OBJ := $(MISC_MNTENT_OUT)/mntent.o
 
-libc-a-y+=$(MISC_MNTENT_OBJ)
-libc-so-y+=$(MISC_MNTENT_OBJ:.o=.os)
+libc-y += $(MISC_MNTENT_OBJ)
 
-libc-multi-y+=$(MISC_MNTENT_SRC)
-
-objclean-y+=misc_mntent_objclean
+objclean-y += misc_mntent_objclean
 
 misc_mntent_objclean:
 	$(RM) $(MISC_MNTENT_OUT)/*.{o,os}

+ 3 - 6
libc/misc/pthread/Makefile.in

@@ -1,6 +1,6 @@
 # Makefile for uClibc
 #
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
@@ -8,11 +8,8 @@
 MISC_PTHREAD_DIR := $(top_srcdir)libc/misc/pthread
 MISC_PTHREAD_OUT := $(top_builddir)libc/misc/pthread
 
-MISC_PTHREAD_CSRC := no-tsd.c
-MISC_PTHREAD_STATIC_CSRC := weaks.c
-
-libc-static-$(UCLIBC_HAS_THREADS) += $(patsubst %.c,$(MISC_PTHREAD_OUT)/%.o,$(MISC_PTHREAD_STATIC_CSRC))
-libc-shared-$(UCLIBC_HAS_THREADS) += $(patsubst %.c,$(MISC_PTHREAD_OUT)/%.oS,$(MISC_PTHREAD_CSRC))
+libc-static-$(UCLIBC_HAS_THREADS) += $(MISC_PTHREAD_OUT)/weaks.o
+libc-shared-$(UCLIBC_HAS_THREADS) += $(MISC_PTHREAD_OUT)/no-tsd.oS
 
 objclean-y += misc_pthread_objclean
 

+ 9 - 12
libc/misc/regex/Makefile.in

@@ -1,29 +1,26 @@
 # Makefile for uClibc
 #
 # Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
 ifeq ($(UCLIBC_HAS_REGEX_OLD),y)
-CSRC:=regex_old.c
+CSRC := regex_old.c
 else
-CSRC:=regex.c
+CSRC := regex.c
 endif
 
-MISC_REGEX_DIR:=$(top_srcdir)libc/misc/regex
-MISC_REGEX_OUT:=$(top_builddir)libc/misc/regex
+MISC_REGEX_DIR := $(top_srcdir)libc/misc/regex
+MISC_REGEX_OUT := $(top_builddir)libc/misc/regex
 
-MISC_REGEX_SRC:=$(patsubst %.c,$(MISC_REGEX_DIR)/%.c,$(CSRC))
-MISC_REGEX_OBJ:=$(patsubst %.c,$(MISC_REGEX_OUT)/%.o,$(CSRC))
+MISC_REGEX_SRC := $(patsubst %.c,$(MISC_REGEX_DIR)/%.c,$(CSRC))
+MISC_REGEX_OBJ := $(patsubst %.c,$(MISC_REGEX_OUT)/%.o,$(CSRC))
 
-libc-a-$(UCLIBC_HAS_REGEX)+=$(MISC_REGEX_OBJ)
-libc-so-$(UCLIBC_HAS_REGEX)+=$(MISC_REGEX_OBJ:.o=.os)
+libc-$(UCLIBC_HAS_REGEX) += $(MISC_REGEX_OBJ)
 
-libc-multi-$(UCLIBC_HAS_REGEX)+=$(MISC_REGEX_SRC)
-
-objclean-y+=misc_regex_objclean
+objclean-y += misc_regex_objclean
 
 misc_regex_objclean:
 	$(RM) $(MISC_REGEX_OUT)/*.{o,os}

+ 16 - 59
libc/misc/search/Makefile.in

@@ -1,77 +1,34 @@
 # Makefile for uClibc
 #
 # Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
-MSRC1:=_tsearch.c
-MOBJ1:=tsearch.o tfind.o tdelete.o twalk.o tdestroy.o
+CSRC := hsearch.c
 
-MSRC2:=_lsearch.c
-MOBJ2:=lfind.o lsearch.o
+# multi source _tsearch.c
+CSRC += tsearch.c tfind.c tdelete.c twalk.c tdestroy.c
 
-MSRC3:=insremque.c
-MOBJ3:=insque.o remque.o
+# multi source _lsearch.c
+CSRC += lfind.c lsearch.c
 
-MSRC4:=_hsearch_r.c
-MOBJ4:=hcreate_r.o hdestroy_r.o hsearch_r.o
+# multi source insremque.c
+CSRC += insque.c remque.c
 
-CSRC:=hsearch.c
+# multi source _hsearch_r.c
+CSRC += hcreate_r.c hdestroy_r.c hsearch_r.c
 
-MISC_SEARCH_DIR:=$(top_srcdir)libc/misc/search
-MISC_SEARCH_OUT:=$(top_builddir)libc/misc/search
+MISC_SEARCH_DIR := $(top_srcdir)libc/misc/search
+MISC_SEARCH_OUT := $(top_builddir)libc/misc/search
 
-MISC_SEARCH_SRC:=$(patsubst %.c,$(MISC_SEARCH_DIR)/%.c,$(CSRC))
-MISC_SEARCH_OBJ:=$(patsubst %.c,$(MISC_SEARCH_OUT)/%.o,$(CSRC))
+MISC_SEARCH_SRC := $(patsubst %.c,$(MISC_SEARCH_DIR)/%.c,$(CSRC))
+MISC_SEARCH_OBJ := $(patsubst %.c,$(MISC_SEARCH_OUT)/%.o,$(CSRC))
 
-MISC_SEARCH_MSRC1:=$(MISC_SEARCH_DIR)/$(MSRC1)
-MISC_SEARCH_MSRC2:=$(MISC_SEARCH_DIR)/$(MSRC2)
-MISC_SEARCH_MSRC3:=$(MISC_SEARCH_DIR)/$(MSRC3)
-MISC_SEARCH_MSRC4:=$(MISC_SEARCH_DIR)/$(MSRC4)
-MISC_SEARCH_MOBJ1:=$(patsubst %.o,$(MISC_SEARCH_OUT)/%.o,$(MOBJ1))
-MISC_SEARCH_MOBJ2:=$(patsubst %.o,$(MISC_SEARCH_OUT)/%.o,$(MOBJ2))
-MISC_SEARCH_MOBJ3:=$(patsubst %.o,$(MISC_SEARCH_OUT)/%.o,$(MOBJ3))
-MISC_SEARCH_MOBJ4:=$(patsubst %.o,$(MISC_SEARCH_OUT)/%.o,$(MOBJ4))
+libc-y += $(MISC_SEARCH_OBJ)
 
-MISC_SEARCH_MSRC:=$(MISC_SEARCH_MSRC1) $(MISC_SEARCH_MSRC2) $(MISC_SEARCH_MSRC3) $(MISC_SEARCH_MSRC4)
-MISC_SEARCH_MOBJ:=$(MISC_SEARCH_MOBJ1) $(MISC_SEARCH_MOBJ2) $(MISC_SEARCH_MOBJ3) $(MISC_SEARCH_MOBJ4)
-MISC_SEARCH_DEF:=$(patsubst %,-DL_%,$(subst .o,,$(notdir $(MISC_SEARCH_MOBJ))))
-
-MISC_SEARCH_OBJS:=$(MISC_SEARCH_OBJ) $(MISC_SEARCH_MOBJ)
-
-$(MISC_SEARCH_MOBJ1): $(MISC_SEARCH_MSRC1)
-	$(compile.m)
-
-$(MISC_SEARCH_MOBJ1:.o=.os): $(MISC_SEARCH_MSRC1)
-	$(compile.m)
-
-$(MISC_SEARCH_MOBJ2): $(MISC_SEARCH_MSRC2)
-	$(compile.m)
-
-$(MISC_SEARCH_MOBJ2:.o=.os): $(MISC_SEARCH_MSRC2)
-	$(compile.m)
-
-$(MISC_SEARCH_MOBJ3): $(MISC_SEARCH_MSRC3)
-	$(compile.m)
-
-$(MISC_SEARCH_MOBJ3:.o=.os): $(MISC_SEARCH_MSRC3)
-	$(compile.m)
-
-$(MISC_SEARCH_MOBJ4): $(MISC_SEARCH_MSRC4)
-	$(compile.m)
-
-$(MISC_SEARCH_MOBJ4:.o=.os): $(MISC_SEARCH_MSRC4)
-	$(compile.m)
-
-libc-a-y+=$(MISC_SEARCH_OBJS)
-libc-so-y+=$(MISC_SEARCH_OBJS:.o=.os)
-
-CFLAGS-multi-y+=$(MISC_SEARCH_DEF)
-libc-multi-y+=$(MISC_SEARCH_SRC) $(MISC_SEARCH_MSRC)
-
-objclean-y+=misc_search_objclean
+objclean-y += misc_search_objclean
 
 misc_search_objclean:
 	$(RM) $(MISC_SEARCH_OUT)/*.{o,os}

+ 9 - 12
libc/misc/statfs/Makefile.in

@@ -1,27 +1,24 @@
 # Makefile for uClibc
 #
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
-CSRC:=statvfs.c fstatvfs.c
+CSRC := statvfs.c fstatvfs.c
 ifeq ($(UCLIBC_HAS_LFS),y)
-CSRC+=fstatfs64.c statfs64.c statvfs64.c fstatvfs64.c
+CSRC += fstatfs64.c statfs64.c statvfs64.c fstatvfs64.c
 endif
 
-MISC_STATFS_DIR:=$(top_srcdir)libc/misc/statfs
-MISC_STATFS_OUT:=$(top_builddir)libc/misc/statfs
+MISC_STATFS_DIR := $(top_srcdir)libc/misc/statfs
+MISC_STATFS_OUT := $(top_builddir)libc/misc/statfs
 
-MISC_STATFS_SRC:=$(patsubst %.c,$(MISC_STATFS_DIR)/%.c,$(CSRC))
-MISC_STATFS_OBJ:=$(patsubst %.c,$(MISC_STATFS_OUT)/%.o,$(CSRC))
+MISC_STATFS_SRC := $(patsubst %.c,$(MISC_STATFS_DIR)/%.c,$(CSRC))
+MISC_STATFS_OBJ := $(patsubst %.c,$(MISC_STATFS_OUT)/%.o,$(CSRC))
 
-libc-a-y+=$(MISC_STATFS_OBJ)
-libc-so-y+=$(MISC_STATFS_OBJ:.o=.os)
+libc-y += $(MISC_STATFS_OBJ)
 
-libc-multi-y+=$(MISC_STATFS_SRC)
-
-objclean-y+=misc_statfs_objclean
+objclean-y += misc_statfs_objclean
 
 misc_statfs_objclean:
 	$(RM) $(MISC_STATFS_OUT)/*.{o,os}

+ 8 - 11
libc/misc/syslog/Makefile.in

@@ -1,25 +1,22 @@
 # Makefile for uClibc
 #
 # Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
-CSRC:=syslog.c
+CSRC := syslog.c
 
-MISC_SYSLOG_DIR:=$(top_srcdir)libc/misc/syslog
-MISC_SYSLOG_OUT:=$(top_builddir)libc/misc/syslog
+MISC_SYSLOG_DIR := $(top_srcdir)libc/misc/syslog
+MISC_SYSLOG_OUT := $(top_builddir)libc/misc/syslog
 
-MISC_SYSLOG_SRC:=$(patsubst %.c,$(MISC_SYSLOG_DIR)/%.c,$(CSRC))
-MISC_SYSLOG_OBJ:=$(patsubst %.c,$(MISC_SYSLOG_OUT)/%.o,$(CSRC))
+MISC_SYSLOG_SRC := $(patsubst %.c,$(MISC_SYSLOG_DIR)/%.c,$(CSRC))
+MISC_SYSLOG_OBJ := $(patsubst %.c,$(MISC_SYSLOG_OUT)/%.o,$(CSRC))
 
-libc-a-y+=$(MISC_SYSLOG_OBJ)
-libc-so-y+=$(MISC_SYSLOG_OBJ:.o=.os)
+libc-y += $(MISC_SYSLOG_OBJ)
 
-libc-multi-y+=$(MISC_SYSLOG_SRC)
-
-objclean-y+=misc_syslog_objclean
+objclean-y += misc_syslog_objclean
 
 misc_syslog_objclean:
 	$(RM) $(MISC_SYSLOG_OUT)/*.{o,os}

+ 14 - 52
libc/misc/sysvipc/Makefile.in

@@ -1,69 +1,31 @@
 # Makefile for uClibc
 #
 # Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
-MSRC1:=sem.c
-MOBJ1:=semget.o semctl.o semop.o
+CSRC := ftok.c 
 
-MSRC2:=shm.c
-MOBJ2:=shmat.o shmctl.o shmdt.o shmget.o
+# multi source sem.c
+CSRC += semget.c semctl.c semop.c
 
-MSRC3:=msgq.c
-MOBJ3:=msgctl.o msgget.o msgrcv.o msgsnd.o
+# multi source shm.c
+CSRC += shmat.c shmctl.c shmdt.c shmget.c
 
-CSRC:=ftok.c 
+# multi source msgq.c
+CSRC += msgctl.c msgget.c msgrcv.c msgsnd.c
 
-MISC_SYSVIPC_DIR:=$(top_srcdir)libc/misc/sysvipc
-MISC_SYSVIPC_OUT:=$(top_builddir)libc/misc/sysvipc
+MISC_SYSVIPC_DIR := $(top_srcdir)libc/misc/sysvipc
+MISC_SYSVIPC_OUT := $(top_builddir)libc/misc/sysvipc
 
-MISC_SYSVIPC_SRC:=$(patsubst %.c,$(MISC_SYSVIPC_DIR)/%.c,$(CSRC))
-MISC_SYSVIPC_OBJ:=$(patsubst %.c,$(MISC_SYSVIPC_OUT)/%.o,$(CSRC))
+MISC_SYSVIPC_SRC := $(patsubst %.c,$(MISC_SYSVIPC_DIR)/%.c,$(CSRC))
+MISC_SYSVIPC_OBJ := $(patsubst %.c,$(MISC_SYSVIPC_OUT)/%.o,$(CSRC))
 
-MISC_SYSVIPC_NO_MULTI:=$(MOBJ1) $(MOBJ3)
+libc-y += $(MISC_SYSVIPC_OBJ)
 
-MISC_SYSVIPC_MSRC1:=$(patsubst %.c,$(MISC_SYSVIPC_DIR)/%.c,$(MSRC1))
-MISC_SYSVIPC_MSRC2:=$(patsubst %.c,$(MISC_SYSVIPC_DIR)/%.c,$(MSRC2))
-MISC_SYSVIPC_MSRC3:=$(patsubst %.c,$(MISC_SYSVIPC_DIR)/%.c,$(MSRC3))
-MISC_SYSVIPC_MOBJ1:=$(patsubst %.o,$(MISC_SYSVIPC_OUT)/%.o,$(MOBJ1))
-MISC_SYSVIPC_MOBJ2:=$(patsubst %.o,$(MISC_SYSVIPC_OUT)/%.o,$(MOBJ2))
-MISC_SYSVIPC_MOBJ3:=$(patsubst %.o,$(MISC_SYSVIPC_OUT)/%.o,$(MOBJ3))
-
-MISC_SYSVIPC_MSRC:=$(MISC_SYSVIPC_MSRC1) $(MISC_SYSVIPC_MSRC2) $(MISC_SYSVIPC_MSRC3)
-MISC_SYSVIPC_MOBJ:=$(MISC_SYSVIPC_MOBJ1) $(MISC_SYSVIPC_MOBJ2) $(MISC_SYSVIPC_MOBJ3)
-
-MISC_SYSVIPC_DEF:=$(patsubst %,-DL_%,$(subst .o,,$(notdir $(MISC_SYSVIPC_MOBJ))))
-
-MISC_SYSVIPC_OBJS:=$(MISC_SYSVIPC_OBJ) $(MISC_SYSVIPC_MOBJ)
-
-$(MISC_SYSVIPC_MOBJ1): $(MISC_SYSVIPC_MSRC1)
-	$(compile.m)
-
-$(MISC_SYSVIPC_MOBJ1:.o=.os): $(MISC_SYSVIPC_MSRC1)
-	$(compile.m)
-
-$(MISC_SYSVIPC_MOBJ2): $(MISC_SYSVIPC_MSRC2)
-	$(compile.m)
-
-$(MISC_SYSVIPC_MOBJ2:.o=.os): $(MISC_SYSVIPC_MSRC2)
-	$(compile.m)
-
-$(MISC_SYSVIPC_MOBJ3): $(MISC_SYSVIPC_MSRC3)
-	$(compile.m)
-
-$(MISC_SYSVIPC_MOBJ3:.o=.os): $(MISC_SYSVIPC_MSRC3)
-	$(compile.m)
-
-libc-a-y+=$(MISC_SYSVIPC_OBJS)
-libc-so-y+=$(MISC_SYSVIPC_OBJS:.o=.os)
-
-CFLAGS-multi-y+=$(MISC_SYSVIPC_DEF)
-libc-multi-y+=$(MISC_SYSVIPC_SRC) $(MISC_SYSVIPC_MSRC)
-
-objclean-y+=misc_sysvipc_objclean
+objclean-y += misc_sysvipc_objclean
 
 misc_sysvipc_objclean:
 	$(RM) $(MISC_SYSVIPC_OUT)/*.{o,os}

+ 17 - 50
libc/misc/time/Makefile.in

@@ -1,73 +1,40 @@
 # Makefile for uClibc
 #
 # Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
-MSRC:=time.c
-MOBJ:=	asctime.o asctime_r.o clock.o ctime.o ctime_r.o gmtime.o gmtime_r.o \
-	localtime.o localtime_r.o mktime.o strftime.o strptime.o tzset.o \
-	_time_t2tm.o __time_tm.o _time_mktime.o dysize.o timegm.o \
-	_time_mktime_tzi.o _time_localtime_tzi.o
-MOBJx:=
+CSRC := adjtime.c ftime.c
 
+# multi source time.c
+CSRC +=	asctime.c asctime_r.c clock.c ctime.c ctime_r.c gmtime.c gmtime_r.c \
+	localtime.c localtime_r.c mktime.c strftime.c strptime.c tzset.c \
+	_time_t2tm.c __time_tm.c _time_mktime.c dysize.c timegm.c \
+	_time_mktime_tzi.c _time_localtime_tzi.c
 ifeq ($(UCLIBC_HAS_FLOATS),y)
-MOBJ+=difftime.o 
+CSRC += difftime.c
 endif
 ifeq ($(UCLIBC_HAS_XLOCALE),y)
-MOBJx:=strftime_l.o strptime_l.o
+CSRC += strftime_l.c strptime_l.c
 endif
-
 ifeq ($(UCLIBC_HAS_WCHAR),y)
-MOBJ+=wcsftime.o
+CSRC += wcsftime.c
 ifeq ($(UCLIBC_HAS_XLOCALE),y)
-MOBJx+=wcsftime_l.o
+CSRC += wcsftime_l.c
 endif
 endif
 
-CSRC:=adjtime.c ftime.c
-
-MISC_TIME_DIR:=$(top_srcdir)libc/misc/time
-MISC_TIME_OUT:=$(top_builddir)libc/misc/time
-
-MISC_TIME_NO_MULTI:=strftime.o mktime.o strptime.o gmtime.o localtime.o asctime.o asctime_r.o gmtime_r.o localtime_r.o
-
-MISC_TIME_SRC:=$(patsubst %.c,$(MISC_TIME_DIR)/%.c,$(CSRC))
-MISC_TIME_OBJ:=$(patsubst %.c,$(MISC_TIME_OUT)/%.o,$(CSRC))
-
-MISC_TIME_MSRC:=$(patsubst %.c,$(MISC_TIME_DIR)/%.c,$(MSRC))
-MISC_TIME_MOBJ:=$(patsubst %.o,$(MISC_TIME_OUT)/%.o,$(MOBJ))
-MISC_TIME_MOBJx:=$(patsubst %.o,$(MISC_TIME_OUT)/%.o,$(MOBJx))
-
-MISC_TIME_DEF:=$(patsubst %,-DL_%,$(subst .o,,$(filter-out $(MISC_TIME_NO_MULTI),$(notdir $(MISC_TIME_MOBJ)))))
-
-MISC_TIME_OBJS:=$(MISC_TIME_OBJ) $(MISC_TIME_MOBJ)
-
-$(MISC_TIME_MOBJ): $(MISC_TIME_MSRC)
-	$(compile.m)
-
-$(MISC_TIME_MOBJ:.o=.os): $(MISC_TIME_MSRC)
-	$(compile.m)
-
-$(MISC_TIME_MOBJx): $(MISC_TIME_MSRC)
-	$(compile.m) -D__UCLIBC_DO_XLOCALE
-
-$(MISC_TIME_MOBJx:.o=.os): $(MISC_TIME_MSRC)
-	$(compile.m) -D__UCLIBC_DO_XLOCALE
+MISC_TIME_DIR := $(top_srcdir)libc/misc/time
+MISC_TIME_OUT := $(top_builddir)libc/misc/time
 
-libc-a-y+=$(MISC_TIME_OBJS)
-libc-a-$(UCLIBC_HAS_XLOCALE)+=$(MISC_TIME_MOBJx)
-libc-so-y+=$(MISC_TIME_OBJS:.o=.os)
-libc-so-$(UCLIBC_HAS_XLOCALE)+=$(MISC_TIME_MOBJx:.o=.os)
+MISC_TIME_SRC := $(patsubst %.c,$(MISC_TIME_DIR)/%.c,$(CSRC))
+MISC_TIME_OBJ := $(patsubst %.c,$(MISC_TIME_OUT)/%.o,$(CSRC))
 
-CFLAGS-multi-y+=$(MISC_TIME_DEF)
-libc-multi-y+=$(MISC_TIME_MSRC)
-libc-nomulti-y+=$(patsubst %.o,$(MISC_TIME_OUT)/%.o,$(MISC_TIME_NO_MULTI))
-libc-nomulti-$(UCLIBC_HAS_XLOCALE)+=$(MISC_TIME_MOBJx)
+libc-y += $(MISC_TIME_OBJ)
 
-objclean-y+=misc_time_objclean
+objclean-y += misc_time_objclean
 
 misc_time_objclean:
 	$(RM) $(MISC_TIME_OUT)/*.{o,os}

+ 8 - 11
libc/misc/ttyent/Makefile.in

@@ -1,24 +1,21 @@
 # Makefile for uClibc
 #
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
-CSRC:=getttyent.c
+CSRC := getttyent.c
 
-MISC_TTYENT_DIR:=$(top_srcdir)libc/misc/ttyent
-MISC_TTYENT_OUT:=$(top_builddir)libc/misc/ttyent
+MISC_TTYENT_DIR := $(top_srcdir)libc/misc/ttyent
+MISC_TTYENT_OUT := $(top_builddir)libc/misc/ttyent
 
-MISC_TTYENT_SRC:=$(patsubst %.c,$(MISC_TTYENT_DIR)/%.c,$(CSRC))
-MISC_TTYENT_OBJ:=$(patsubst %.c,$(MISC_TTYENT_OUT)/%.o,$(CSRC))
+MISC_TTYENT_SRC := $(patsubst %.c,$(MISC_TTYENT_DIR)/%.c,$(CSRC))
+MISC_TTYENT_OBJ := $(patsubst %.c,$(MISC_TTYENT_OUT)/%.o,$(CSRC))
 
-libc-a-y+=$(MISC_TTYENT_OBJ)
-libc-so-y+=$(MISC_TTYENT_OBJ:.o=.os)
+libc-y += $(MISC_TTYENT_OBJ)
 
-libc-multi-y+=$(MISC_TTYENT_SRC)
-
-objclean-y+=misc_ttyent_objclean
+objclean-y += misc_ttyent_objclean
 
 misc_ttyent_objclean:
 	$(RM) $(MISC_TTYENT_OUT)/*.{o,os}

+ 8 - 11
libc/misc/utmp/Makefile.in

@@ -1,25 +1,22 @@
 # Makefile for uClibc
 #
 # Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
-CSRC:=utent.c wtent.c
+CSRC := utent.c wtent.c
 
-MISC_UTMP_DIR:=$(top_srcdir)libc/misc/utmp
-MISC_UTMP_OUT:=$(top_builddir)libc/misc/utmp
+MISC_UTMP_DIR := $(top_srcdir)libc/misc/utmp
+MISC_UTMP_OUT := $(top_builddir)libc/misc/utmp
 
-MISC_UTMP_SRC:=$(patsubst %.c,$(MISC_UTMP_DIR)/%.c,$(CSRC))
-MISC_UTMP_OBJ:=$(patsubst %.c,$(MISC_UTMP_OUT)/%.o,$(CSRC))
+MISC_UTMP_SRC := $(patsubst %.c,$(MISC_UTMP_DIR)/%.c,$(CSRC))
+MISC_UTMP_OBJ := $(patsubst %.c,$(MISC_UTMP_OUT)/%.o,$(CSRC))
 
-libc-a-y+=$(MISC_UTMP_OBJ)
-libc-so-y+=$(MISC_UTMP_OBJ:.o=.os)
+libc-y += $(MISC_UTMP_OBJ)
 
-libc-multi-y+=$(MISC_UTMP_SRC)
-
-objclean-y+=misc_utmp_objclean
+objclean-y += misc_utmp_objclean
 
 misc_utmp_objclean:
 	$(RM) $(MISC_UTMP_OUT)/*.{o,os}

+ 12 - 23
libc/misc/wchar/Makefile.in

@@ -1,7 +1,7 @@
 # Makefile for uClibc
 #
 # Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
@@ -17,35 +17,24 @@
 # wcsftime
 #
 
-MSRC:=wchar.c
-MOBJ:=	btowc.o wctob.o mbsinit.o mbrlen.o mbrtowc.o wcrtomb.o mbsrtowcs.o \
-	wcsrtombs.o _wchar_utf8sntowcs.o _wchar_wcsntoutf8s.o \
-	mbsnrtowcs.o wcsnrtombs.o wcwidth.o wcswidth.o
+# multi source wchar.c
+CSRC :=	btowc.c wctob.c mbsinit.c mbrlen.c mbrtowc.c wcrtomb.c mbsrtowcs.c \
+	wcsrtombs.c _wchar_utf8sntowcs.c _wchar_wcsntoutf8s.c \
+	mbsnrtowcs.c wcsnrtombs.c wcwidth.c wcswidth.c
 
 ifeq ($(UCLIBC_HAS_LOCALE),y)
-MOBJ+=iconv.o
+CSRC += iconv.c
 endif
 
-MISC_WCHAR_DIR:=$(top_srcdir)libc/misc/wchar
-MISC_WCHAR_OUT:=$(top_builddir)libc/misc/wchar
+MISC_WCHAR_DIR := $(top_srcdir)libc/misc/wchar
+MISC_WCHAR_OUT := $(top_builddir)libc/misc/wchar
 
-MISC_WCHAR_MSRC:=$(MISC_WCHAR_DIR)/$(MSRC)
-MISC_WCHAR_MOBJ:=$(patsubst %.o,$(MISC_WCHAR_OUT)/%.o,$(MOBJ))
-MISC_WCHAR_DEF:=$(patsubst %,-DL_%,$(subst .o,,$(notdir $(MISC_WCHAR_MOBJ))))
+MISC_WCHAR_SRC := $(patsubst %.c,$(MISC_WCHAR_DIR)/%.c,$(CSRC))
+MISC_WCHAR_OBJ := $(patsubst %.c,$(MISC_WCHAR_OUT)/%.o,$(CSRC))
 
-$(MISC_WCHAR_MOBJ): $(MISC_WCHAR_MSRC)
-	$(compile.m)
+libc-$(UCLIBC_HAS_WCHAR) += $(MISC_WCHAR_OBJ)
 
-$(MISC_WCHAR_MOBJ:.o=.os): $(MISC_WCHAR_MSRC)
-	$(compile.m)
-
-libc-a-$(UCLIBC_HAS_WCHAR)+=$(MISC_WCHAR_MOBJ)
-libc-so-$(UCLIBC_HAS_WCHAR)+=$(MISC_WCHAR_MOBJ:.o=.os)
-
-CFLAGS-multi-$(UCLIBC_HAS_WCHAR)+=$(MISC_WCHAR_DEF)
-libc-multi-$(UCLIBC_HAS_WCHAR)+=$(MISC_WCHAR_MSRC)
-
-objclean-y+=misc_wchar_objclean
+objclean-y += misc_wchar_objclean
 
 misc_wchar_objclean:
 	$(RM) $(MISC_WCHAR_OUT)/*.{o,os}

+ 20 - 38
libc/misc/wctype/Makefile.in

@@ -1,53 +1,35 @@
 # Makefile for uClibc
 #
 # Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
-MSRC:=_wctype.c
-MOBJ:=	iswalnum.o iswalpha.o iswcntrl.o iswdigit.o iswgraph.o \
-	iswlower.o iswprint.o iswpunct.o iswspace.o iswupper.o \
-	iswxdigit.o iswblank.o wctrans.o towctrans.o \
-	wctype.o iswctype.o towlower.o towupper.o
+# multi source _wctype.c
+COM_SRC := \
+	iswalnum.c iswalpha.c iswcntrl.c iswdigit.c iswgraph.c \
+	iswlower.c iswprint.c iswpunct.c iswspace.c iswupper.c \
+	iswxdigit.c iswblank.c wctrans.c towctrans.c \
+	wctype.c iswctype.c towlower.c towupper.c
 
-MOBJx:=	iswalnum_l.o iswalpha_l.o iswcntrl_l.o iswdigit_l.o iswgraph_l.o \
-	iswlower_l.o iswprint_l.o iswpunct_l.o iswspace_l.o iswupper_l.o \
-	iswxdigit_l.o iswblank_l.o \
-	wctype_l.o iswctype_l.o wctrans_l.o towctrans_l.o towlower_l.o towupper_l.o
+CSRC :=
+ifeq ($(UCLIBC_HAS_WCHAR),y)
+CSRC += $(COM_SRC)
+endif
+ifeq ($(UCLIBC_HAS_XLOCALE),y)
+CSRC += $(patsubst %.c,%_l.c,$(COM_SRC))
+endif
 
-MISC_WCTYPE_DIR:=$(top_srcdir)libc/misc/wctype
-MISC_WCTYPE_OUT:=$(top_builddir)libc/misc/wctype
+MISC_WCTYPE_DIR := $(top_srcdir)libc/misc/wctype
+MISC_WCTYPE_OUT := $(top_builddir)libc/misc/wctype
 
-MISC_WCTYPE_MSRC:=$(MISC_WCTYPE_DIR)/$(MSRC)
-MISC_WCTYPE_MOBJ:=$(patsubst %.o,$(MISC_WCTYPE_OUT)/%.o,$(MOBJ))
-MISC_WCTYPE_MOBJx:=$(patsubst %.o,$(MISC_WCTYPE_OUT)/%.o,$(MOBJx))
+MISC_WCTYPE_SRC := $(patsubst %.c,$(MISC_WCTYPE_DIR)/%.c,$(CSRC))
+MISC_WCTYPE_OBJ := $(patsubst %.c,$(MISC_WCTYPE_OUT)/%.o,$(CSRC))
 
-MISC_WCTYPE_DEF:=$(patsubst %,-DL_%,$(subst .o,,$(notdir $(MISC_WCTYPE_MOBJ))))
+libc-y += $(MISC_WCTYPE_OBJ)
 
-$(MISC_WCTYPE_MOBJ): $(MISC_WCTYPE_MSRC)
-	$(compile.m)
-
-$(MISC_WCTYPE_MOBJ:.o=.os): $(MISC_WCTYPE_MSRC)
-	$(compile.m)
-
-$(MISC_WCTYPE_MOBJx): $(MISC_WCTYPE_MSRC)
-	$(compile.m) -D__UCLIBC_DO_XLOCALE
-
-$(MISC_WCTYPE_MOBJx:.o=.os): $(MISC_WCTYPE_MSRC)
-	$(compile.m) -D__UCLIBC_DO_XLOCALE
-
-libc-a-$(UCLIBC_HAS_WCHAR)+=$(MISC_WCTYPE_MOBJ)
-libc-a-$(UCLIBC_HAS_XLOCALE)+=$(MISC_WCTYPE_MOBJx)
-libc-so-$(UCLIBC_HAS_WCHAR)+=$(MISC_WCTYPE_MOBJ:.o=.os)
-libc-so-$(UCLIBC_HAS_XLOCALE)+=$(MISC_WCTYPE_MOBJx:.o=.os)
-
-CFLAGS-multi-$(UCLIBC_HAS_WCHAR)+=$(MISC_WCTYPE_DEF)
-libc-multi-$(UCLIBC_HAS_WCHAR)+=$(MISC_WCTYPE_MSRC)
-libc-nomulti-$(UCLIBC_HAS_XLOCALE)+=$(MISC_WCTYPE_MOBJx)
-
-objclean-y+=misc_wctype_objclean
+objclean-y += misc_wctype_objclean
 
 misc_wctype_objclean:
 	$(RM) $(MISC_WCTYPE_OUT)/*.{o,os}

+ 8 - 11
libc/misc/wordexp/Makefile.in

@@ -1,24 +1,21 @@
 # Makefile for uClibc
 #
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
-CSRC:=wordexp.c
+CSRC := wordexp.c
 
-MISC_WORDEXP_DIR:=$(top_srcdir)libc/misc/wordexp
-MISC_WORDEXP_OUT:=$(top_builddir)libc/misc/wordexp
+MISC_WORDEXP_DIR := $(top_srcdir)libc/misc/wordexp
+MISC_WORDEXP_OUT := $(top_builddir)libc/misc/wordexp
 
-MISC_WORDEXP_SRC:=$(patsubst %.c,$(MISC_WORDEXP_DIR)/%.c,$(CSRC))
-MISC_WORDEXP_OBJ:=$(patsubst %.c,$(MISC_WORDEXP_OUT)/%.o,$(CSRC))
+MISC_WORDEXP_SRC := $(patsubst %.c,$(MISC_WORDEXP_DIR)/%.c,$(CSRC))
+MISC_WORDEXP_OBJ := $(patsubst %.c,$(MISC_WORDEXP_OUT)/%.o,$(CSRC))
 
-libc-a-$(UCLIBC_HAS_WORDEXP)+=$(MISC_WORDEXP_OBJ)
-libc-so-$(UCLIBC_HAS_WORDEXP)+=$(MISC_WORDEXP_OBJ:.o=.os)
+libc-$(UCLIBC_HAS_WORDEXP) += $(MISC_WORDEXP_OBJ)
 
-libc-multi-$(UCLIBC_HAS_WORDEXP)+=$(MISC_WORDEXP_SRC)
-
-objclean-y+=misc_wordexp_objclean
+objclean-y += misc_wordexp_objclean
 
 misc_wordexp_objclean:
 	$(RM) $(MISC_WORDEXP_OUT)/*.{o,os}

+ 17 - 34
libc/pwd_grp/Makefile.in

@@ -1,49 +1,32 @@
 # Makefile for uClibc
 #
 # Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
-MSRC:=pwd_grp.c
-MOBJ:=	fgetpwent_r.o fgetgrent_r.o fgetpwent.o fgetgrent.o \
-	getpwnam_r.o getgrnam_r.o getpwuid_r.o getgrgid_r.o \
-	getpwuid.o getgrgid.o getpwnam.o getgrnam.o getpw.o \
-	getpwent_r.o getgrent_r.o getpwent.o getgrent.o \
-	initgroups.o putpwent.o putgrent.o \
-	__parsepwent.o __parsegrent.o __pgsreader.o
+PWDGRP_DIR := $(top_srcdir)libc/pwd_grp
+PWDGRP_OUT := $(top_builddir)libc/pwd_grp
 
-ifeq ($(HAS_SHADOW),y)
-MOBJ+=	fgetspent_r.o fgetspent.o sgetspent_r.o getspnam_r.o \
-	getspnam.o getspent_r.o getspent.o sgetspent.o \
-	putspent.o __parsespent.o # getspuid_r.o getspuid.o
-endif
-
-PWDGRP_DIR:=$(top_srcdir)libc/pwd_grp
-PWDGRP_OUT:=$(top_builddir)libc/pwd_grp
-
-PWDGRP_MSRC:=$(PWDGRP_DIR)/$(MSRC)
-PWDGRP_MOBJ:=$(patsubst %.o,$(PWDGRP_OUT)/%.o,$(MOBJ))
+CSRC := $(notdir $(wildcard $(PWDGRP_DIR)/*.c))
+CSRC := $(filter-out pwd_grp.c pwd_grp_internal.c,$(CSRC))
 
-PWDGRP_DEF:=$(patsubst %,-DL_%,$(subst .o,,$(notdir $(PWDGRP_MOBJ))))
-
-$(PWDGRP_MOBJ): $(PWDGRP_MSRC)
-	$(compile.m)
-
-$(PWDGRP_MOBJ:.o=.os): $(PWDGRP_MSRC)
-	$(compile.m)
+ifneq ($(HAS_SHADOW),y)
+SHADOW_CSRC := \
+	fgetspent_r.c fgetspent.c getspent_r.c getspent.c \
+	getspnam_r.c getspnam.c lckpwdf.c putspent.c \
+	sgetspent_r.c sgetspent.c __parsespent.c
+# getspuid_r.c getspuid.c
+CSRC := $(filter-out $(SHADOW_CSRC),$(CSRC))
+endif
 
-libc-a-y+=$(PWDGRP_MOBJ)
-libc-a-$(HAS_SHADOW)+=$(PWDGRP_OUT)/lckpwdf.o
-libc-so-y+=$(PWDGRP_MOBJ:.o=.os)
-libc-so-$(HAS_SHADOW)+=$(PWDGRP_OUT)/lckpwdf.os
+PWDGRP_SRC := $(patsubst %.c,$(PWDGRP_DIR)/%.c,$(CSRC))
+PWDGRP_OBJ := $(patsubst %.c,$(PWDGRP_OUT)/%.o,$(CSRC))
 
-CFLAGS-multi-y+=$(PWDGRP_DEF)
-libc-multi-y+=$(PWDGRP_MSRC)
-libc-multi-$(HAS_SHADOW)+=$(PWDGRP_DIR)/lckpwdf.c
+libc-y += $(PWDGRP_OBJ)
 
-objclean-y+=pwdgrp_objclean
+objclean-y += pwdgrp_objclean
 
 pwdgrp_objclean:
 	$(RM) $(PWDGRP_OUT)/*.{o,os}

+ 9 - 13
libc/signal/Makefile.in

@@ -1,33 +1,29 @@
 # Makefile for uClibc
 #
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
-CSRC:=	allocrtsig.c killpg.c raise.c sigaction.c sigaddset.c sigandset.c \
+CSRC :=	allocrtsig.c killpg.c raise.c sigaction.c sigaddset.c sigandset.c \
 	sigblock.c sigdelset.c sigempty.c sigfillset.c siggetmask.c sighold.c \
 	sigignore.c sigintr.c sigisempty.c sigismem.c sigjmp.c signal.c \
 	sigorset.c sigpause.c sigrelse.c sigset.c sigsetmask.c sigsetops.c \
 	sysv_signal.c sigwait.c
 
 ifneq ($(strip $(ARCH_OBJS)),)
-CSRC:=$(filter-out $(notdir $(ARCH_OBJS:.o=.c)),$(CSRC))
+CSRC := $(filter-out $(notdir $(ARCH_OBJS:.o=.c)),$(CSRC))
 endif
 
-SIGNAL_DIR:=$(top_srcdir)libc/signal
-SIGNAL_OUT:=$(top_builddir)libc/signal
+SIGNAL_DIR := $(top_srcdir)libc/signal
+SIGNAL_OUT := $(top_builddir)libc/signal
 
-SIGNAL_SRC:=$(patsubst %.c,$(SIGNAL_DIR)/%.c,$(CSRC))
+SIGNAL_SRC := $(patsubst %.c,$(SIGNAL_DIR)/%.c,$(CSRC))
+SIGNAL_OBJ := $(patsubst %.c,$(SIGNAL_OUT)/%.o,$(CSRC))
 
-SIGNAL_OBJ:=$(patsubst $(SIGNAL_DIR)/%.c,$(SIGNAL_OUT)/%.o,$(SIGNAL_SRC))
+libc-y += $(SIGNAL_OBJ)
 
-libc-a-y+=$(SIGNAL_OBJ)
-libc-so-y+=$(SIGNAL_OBJ:.o=.os)
-
-libc-multi-y+=$(SIGNAL_SRC)
-
-objclean-y+=signal_objclean
+objclean-y += signal_objclean
 
 signal_objclean:
 	$(RM) $(SIGNAL_OUT)/*.{o,os}

+ 19 - 70
libc/stdio/Makefile.in

@@ -1,10 +1,12 @@
 # Makefile for uClibc
 #
 # Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2004 Manuel Novoa III <mjn3@codepoet.org>
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2004 Manuel Novoa III <mjn3@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
-# Licensed under LGPL v2.1, see the file COPYING.LIB in this tarball for details.
+# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
+#
+# Dedicated to Toni.  See uClibc/DEDICATION.mjn3 for details.
 #
 
 # SUSv3 functions
@@ -55,96 +57,43 @@ CUSRC := \
 # putc_unlocked -> alias for fputc_unlocked
 
 # vfprintf and support functions
-MSRC1 := _vfprintf.c
 ifneq ($(USE_OLD_VFPRINTF),y)
-MOBJ1 := \
-	vfprintf.o \
-	_ppfs_init.o _ppfs_prepargs.o _ppfs_setargs.o _ppfs_parsespec.o \
-	register_printf_function.o parse_printf_format.o
+CSRC += \
+	vfprintf.c \
+	_ppfs_init.c _ppfs_prepargs.c _ppfs_setargs.c _ppfs_parsespec.c \
+	register_printf_function.c parse_printf_format.c
 else
-MOBJ1 :=
 CSRC += old_vfprintf.c
 endif
 
 # vfscanf and support functions plus other *scanf funcs
-MSRC2 := _scanf.c
-MOBJ2 := \
-	vfscanf.o __scan_cookie.o __psfs_parse_spec.o __psfs_do_numeric.o \
-	scanf.o sscanf.o fscanf.o vscanf.o vsscanf.o
+CSRC += \
+	vfscanf.c __scan_cookie.c __psfs_parse_spec.c __psfs_do_numeric.c \
+	scanf.c sscanf.c fscanf.c vscanf.c vsscanf.c
 
-CWSRC :=
 ifeq ($(UCLIBC_HAS_WCHAR),y)
-CWSRC += _wfwrite.c fwprintf.c swprintf.c vswprintf.c vwprintf.c wprintf.c \
+CSRC += _wfwrite.c fwprintf.c swprintf.c vswprintf.c vwprintf.c wprintf.c \
 	fwide.c ungetwc.c
 CUSRC += fgetwc.c getwchar.c fgetws.c fputwc.c putwchar.c fputws.c
 # getwc (fgetwc alias) getwc_unlocked (fgetwc_unlocked alias)
 # putwc (fputwc alias) putwc_unlocked (fputwc_unlocked alias)
-MOBJ1 += vfwprintf.o
-MOBJ2 += wscanf.o swscanf.o fwscanf.o vwscanf.o vswscanf.o vfwscanf.o
+CSRC += vfwprintf.c
+CSRC += wscanf.c swscanf.c fwscanf.c vwscanf.c vswscanf.c vfwscanf.c
 endif
 
-CSRC += $(CUSRC) $(CWSRC)
+CUSRC_UNLOCKED := $(patsubst %.c,%_unlocked.c,$(CUSRC))
 
-ifneq ($(DOMULTI),n)
-STDIO_CSRC_NO_MULTI := fwrite.c fputc.c fputs.c fprintf.c _fpmaxtostr.c
-CSRC := $(filter-out $(STDIO_CSRC_NO_MULTI),$(CSRC))
-endif
-STDIO_MOBJ1_NO_MULTI := vfprintf.o vfwprintf.o register_printf_function.o
-STDIO_MOBJ2_NO_MULTI := vfscanf.o vfwscanf.o fscanf.o
-STDIO_MOBJ_NO_MULTI := $(STDIO_MOBJ1_NO_MULTI) $(STDIO_MOBJ2_NO_MULTI)
+CSRC += $(CUSRC) $(CUSRC_UNLOCKED)
 
 STDIO_DIR := $(top_srcdir)libc/stdio
 STDIO_OUT := $(top_builddir)libc/stdio
 
 STDIO_SRC := $(patsubst %.c,$(STDIO_DIR)/%.c,$(CSRC))
 STDIO_OBJ := $(patsubst %.c,$(STDIO_OUT)/%.o,$(CSRC))
-STDIO_CUSRC := $(patsubst %.c,$(STDIO_DIR)/%.c,$(CUSRC))
-STDIO_CUOBJ := $(patsubst %.c,$(STDIO_OUT)/%_unlocked.o,$(CUSRC))
-
-STDIO_MSRC1 := $(patsubst %.c,$(STDIO_DIR)/%.c,$(MSRC1))
-STDIO_MSRC2 := $(patsubst %.c,$(STDIO_DIR)/%.c,$(MSRC2))
-STDIO_MOBJ1 := $(patsubst %.o,$(STDIO_OUT)/%.o,$(MOBJ1))
-STDIO_MOBJ2 := $(patsubst %.o,$(STDIO_OUT)/%.o,$(MOBJ2))
-
-STDIO_MSRC := $(STDIO_MSRC1) $(STDIO_MSRC2)
-STDIO_MOBJ := $(STDIO_MOBJ1) $(STDIO_MOBJ2)
-
-STDIO_DEF := $(patsubst %,-DL_%,$(subst .o,,$(filter-out $(STDIO_MOBJ_NO_MULTI),$(notdir $(STDIO_MOBJ)))))
-
-STDIO_OBJS := $(STDIO_OBJ) $(STDIO_MOBJ) $(STDIO_CUOBJ)
-
-STDIO_NO_MULTI := $(STDIO_CUOBJ)
-
-# these need special handling or rewrite to support multi-build
-# CUOBJ
-%_unlocked.o: %.c
-	$(compile.c) -D__DO_UNLOCKED
-
-%_unlocked.os: %.c
-	$(compile.c) -D__DO_UNLOCKED
-
-$(STDIO_MOBJ1): $(STDIO_MSRC1)
-	$(compile.m)
-
-$(STDIO_MOBJ1:.o=.os): $(STDIO_MSRC1)
-	$(compile.m)
-
-$(STDIO_MOBJ2): $(STDIO_MSRC2)
-	$(compile.m)
-
-$(STDIO_MOBJ2:.o=.os): $(STDIO_MSRC2)
-	$(compile.m)
-
-libc-a-y+=$(STDIO_OBJS)
-libc-so-y+=$(STDIO_OBJS:.o=.os)
 
-CFLAGS-multi-y+=$(STDIO_DEF)
-libc-multi-y+=$(STDIO_SRC) $(STDIO_MSRC)
-libc-nomulti-y+=$(STDIO_NO_MULTI)
-libc-nomulti-y+=$(patsubst %.c,$(STDIO_OUT)/%.o,$(STDIO_CSRC_NO_MULTI))
-libc-nomulti-y+=$(patsubst %.o,$(STDIO_OUT)/%.o,$(STDIO_MOBJ_NO_MULTI))
+libc-y += $(STDIO_OBJ)
 
-objclean-y+=stdio_objclean
+objclean-y += stdio_objclean
 
 stdio_objclean:
 	$(RM) $(STDIO_OUT)/*.{o,os}

+ 50 - 110
libc/stdlib/Makefile.in

@@ -1,7 +1,7 @@
 # Makefile for uClibc
 #
 # Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
@@ -10,139 +10,79 @@ include $(top_srcdir)libc/stdlib/malloc/Makefile.in
 include $(top_srcdir)libc/stdlib/malloc-simple/Makefile.in
 include $(top_srcdir)libc/stdlib/malloc-standard/Makefile.in
 
-MSRC1:=stdlib.c
-MOBJ1:=	abs.o labs.o atoi.o atol.o strtol.o strtoul.o _stdlib_strto_l.o \
-	qsort.o bsearch.o \
-	llabs.o atoll.o strtoll.o strtoull.o _stdlib_strto_ll.o
-# (aliases) strtoq.o strtouq.o
-ifeq ($(UCLIBC_HAS_XLOCALE),y)
-MOBJ1x:=strtol_l.o strtoul_l.o _stdlib_strto_l_l.o \
-	strtoll_l.o strtoull_l.o _stdlib_strto_ll_l.o
+CSRC := \
+	abort.c getenv.c mkdtemp.c mktemp.c realpath.c mkstemp.c \
+	rand.c random.c random_r.c setenv.c system.c div.c ldiv.c lldiv.c \
+	getpt.c ptsname.c grantpt.c unlockpt.c gcvt.c drand48-iter.c jrand48.c \
+	jrand48_r.c lrand48.c lrand48_r.c mrand48.c mrand48_r.c nrand48.c \
+	nrand48_r.c rand_r.c srand48.c srand48_r.c seed48.c seed48_r.c \
+	valloc.c posix_memalign.c a64l.c l64a.c
+ifeq ($(UCLIBC_HAS_ARC4RANDOM),y)
+CSRC += arc4random.c
+endif
+ifeq ($(UCLIBC_HAS_LFS),y)
+CSRC += mkstemp64.c
+endif
+ifeq ($(UCLIBC_HAS_FLOATS),y)
+CSRC += drand48.c drand48_r.c erand48.c erand48_r.c
 endif
 
-MSRC2:=_strtod.c
-MOBJ2:=
-MOBJ2x:=
-
+# multi source stdlib.c
+CSRC +=	abs.c labs.c atoi.c atol.c strtol.c strtoul.c _stdlib_strto_l.c \
+	qsort.c bsearch.c \
+	llabs.c atoll.c strtoll.c strtoull.c _stdlib_strto_ll.c
+# (aliases) strtoq.o strtouq.o
 ifeq ($(UCLIBC_HAS_FLOATS),y)
-MOBJ1+=atof.o
-MOBJ2+=strtod.o strtof.o strtold.o __strtofpmax.o __fp_range_check.o
+CSRC += atof.c
+endif
 ifeq ($(UCLIBC_HAS_XLOCALE),y)
-MOBJ2x+=strtod_l.o strtof_l.o strtold_l.o __strtofpmax_l.o
+CSRC += strtol_l.c strtoul_l.c _stdlib_strto_l_l.c \
+	strtoll_l.c strtoull_l.c _stdlib_strto_ll_l.c
 endif
 ifeq ($(UCLIBC_HAS_WCHAR),y)
-MOBJ2+=wcstod.o wcstof.o wcstold.o __wcstofpmax.o
+CSRC +=	mblen.c mbtowc.c wctomb.c mbstowcs.c wcstombs.c \
+	_stdlib_mb_cur_max.c _stdlib_wcsto_l.c _stdlib_wcsto_ll.c \
+	wcstol.c wcstoul.c wcstoll.c wcstoull.c
 ifeq ($(UCLIBC_HAS_XLOCALE),y)
-MOBJ2x+=wcstod_l.o wcstof_l.o wcstold_l.o __wcstofpmax_l.o
-endif
+CSRC +=_stdlib_wcsto_l_l.c _stdlib_wcsto_ll_l.c \
+	wcstol_l.c wcstoul_l.c wcstoll_l.c wcstoull_l.c
 endif
 endif
 
+# multi source _strtod.c
+ifeq ($(UCLIBC_HAS_FLOATS),y)
+CSRC += strtod.c strtof.c strtold.c __strtofpmax.c __fp_range_check.c
+ifeq ($(UCLIBC_HAS_XLOCALE),y)
+CSRC += strtod_l.c strtof_l.c strtold_l.c __strtofpmax_l.c
+endif
 ifeq ($(UCLIBC_HAS_WCHAR),y)
-MOBJ1+=	mblen.o mbtowc.o wctomb.o mbstowcs.o wcstombs.o \
-	_stdlib_mb_cur_max.o _stdlib_wcsto_l.o _stdlib_wcsto_ll.o \
-	wcstol.o wcstoul.o wcstoll.o wcstoull.o
+CSRC += wcstod.c wcstof.c wcstold.c __wcstofpmax.c
 ifeq ($(UCLIBC_HAS_XLOCALE),y)
-MOBJ1x+=_stdlib_wcsto_l_l.o _stdlib_wcsto_ll_l.o \
-	wcstol_l.o wcstoul_l.o wcstoll_l.o wcstoull_l.o
+CSRC += wcstod_l.c wcstof_l.c wcstold_l.c __wcstofpmax_l.c
+endif
 endif
 endif
 # (aliases) wcstoq.o wcstouq.o
 # wcstod wcstof wcstold
 
-MSRC3:=_atexit.c
-MOBJ3:=on_exit.o __cxa_atexit.o __cxa_finalize.o __exit_handler.o exit.o
+# multi source _atexit.c
+CSRC += __cxa_atexit.c __cxa_finalize.c __exit_handler.c exit.c on_exit.c
 ifeq ($(COMPAT_ATEXIT),y)
-MOBJ3+=old_atexit.o
+CSRC += old_atexit.c
 endif
 
-CSRC:= \
-	abort.c getenv.c mkdtemp.c mktemp.c realpath.c mkstemp.c \
-	rand.c random.c random_r.c setenv.c system.c div.c ldiv.c lldiv.c \
-	getpt.c ptsname.c grantpt.c unlockpt.c gcvt.c drand48-iter.c jrand48.c \
-	jrand48_r.c lrand48.c lrand48_r.c mrand48.c mrand48_r.c nrand48.c \
-	nrand48_r.c rand_r.c srand48.c srand48_r.c seed48.c seed48_r.c \
-	valloc.c posix_memalign.c a64l.c l64a.c
-ifeq ($(UCLIBC_HAS_ARC4RANDOM),y)
-CSRC+=arc4random.c
-endif
-ifeq ($(UCLIBC_HAS_LFS),y)
-CSRC+=mkstemp64.c
-endif
-ifeq ($(UCLIBC_HAS_FLOATS),y)
-CSRC+=drand48.c drand48_r.c erand48.c erand48_r.c
-endif
-
-STDLIB_MOBJ1_NO_MULTI:=_stdlib_strto_l.o _stdlib_strto_ll.o
-STDLIB_MOBJ2_NO_MULTI:=strtod.o strtof.o __strtofpmax.o
-STDLIB_MOBJ_NO_MULTI:=$(STDLIB_MOBJ1_NO_MULTI) $(STDLIB_MOBJ2_NO_MULTI)
-
-STDLIB_DIR:=$(top_srcdir)libc/stdlib
-STDLIB_OUT:=$(top_builddir)libc/stdlib
-
-STDLIB_SRC:=$(patsubst %.c,$(STDLIB_DIR)/%.c,$(CSRC))
-STDLIB_OBJ:=$(patsubst %.c,$(STDLIB_OUT)/%.o,$(CSRC))
-
-STDLIB_MSRC1:=$(patsubst %.c,$(STDLIB_DIR)/%.c,$(MSRC1))
-STDLIB_MSRC2:=$(patsubst %.c,$(STDLIB_DIR)/%.c,$(MSRC2))
-STDLIB_MSRC3:=$(patsubst %.c,$(STDLIB_DIR)/%.c,$(MSRC3))
-STDLIB_MOBJ1:=$(patsubst %.o,$(STDLIB_OUT)/%.o,$(MOBJ1))
-STDLIB_MOBJ2:=$(patsubst %.o,$(STDLIB_OUT)/%.o,$(MOBJ2))
-STDLIB_MOBJ3:=$(patsubst %.o,$(STDLIB_OUT)/%.o,$(MOBJ3))
-STDLIB_MOBJ1x:=$(patsubst %.o,$(STDLIB_OUT)/%.o,$(MOBJ1x))
-STDLIB_MOBJ2x:=$(patsubst %.o,$(STDLIB_OUT)/%.o,$(MOBJ2x))
-
-STDLIB_MSRC:=$(STDLIB_MSRC1) $(STDLIB_MSRC2) $(STDLIB_MSRC3)
-STDLIB_MOBJ:=$(STDLIB_MOBJ1) $(STDLIB_MOBJ2) $(STDLIB_MOBJ3)
-
-STDLIB_DEF:=$(patsubst %,-DL_%,$(subst .o,,$(filter-out $(STDLIB_MOBJ_NO_MULTI),$(notdir $(STDLIB_MOBJ)))))
+STDLIB_DIR := $(top_srcdir)libc/stdlib
+STDLIB_OUT := $(top_builddir)libc/stdlib
 
-STDLIB_MOBJx:=$(STDLIB_MOBJ1x) $(STDLIB_MOBJ2x)
+STDLIB_SRC := $(patsubst %.c,$(STDLIB_DIR)/%.c,$(CSRC))
+STDLIB_OBJ := $(patsubst %.c,$(STDLIB_OUT)/%.o,$(CSRC))
 
-STDLIB_OBJS:=$(STDLIB_OBJ) $(STDLIB_MOBJ) $(STDLIB_MOBJx)
-
-$(STDLIB_MOBJ1): $(STDLIB_MSRC1)
-	$(compile.m)
-
-$(STDLIB_MOBJ1:.o=.os): $(STDLIB_MSRC1)
-	$(compile.m)
-
-$(STDLIB_MOBJ2): $(STDLIB_MSRC2)
-	$(compile.m)
-
-$(STDLIB_MOBJ2:.o=.os): $(STDLIB_MSRC2)
-	$(compile.m)
-
-$(STDLIB_MOBJ3): $(STDLIB_MSRC3)
-	$(compile.m)
-
-$(STDLIB_MOBJ3:.o=.os) $(STDLIB_OUT)/atexit.os: $(STDLIB_MSRC3)
-	$(compile.m)
-
-$(STDLIB_MOBJ1x): $(STDLIB_MSRC1)
-	$(compile.m) -D__UCLIBC_DO_XLOCALE
-
-$(STDLIB_MOBJ1x:.o=.os): $(STDLIB_MSRC1)
-	$(compile.m) -D__UCLIBC_DO_XLOCALE
-
-$(STDLIB_MOBJ2x): $(STDLIB_MSRC2)
-	$(compile.m) -D__UCLIBC_DO_XLOCALE
-
-$(STDLIB_MOBJ2x:.o=.os): $(STDLIB_MSRC2)
-	$(compile.m) -D__UCLIBC_DO_XLOCALE
-
-libc-a-y+=$(STDLIB_OBJS)
-libc-static-y+=$(STDLIB_OUT)/atexit.o
-libc-so-y+=$(STDLIB_OBJS:.o=.os)
+libc-y += $(STDLIB_OBJ)
+libc-static-y += $(STDLIB_OUT)/atexit.o
 # this should always be the PIC version, because it could be used in shared libs
-libc-nonshared-y+=$(STDLIB_OUT)/atexit.os
-
-CFLAGS-multi-y+=$(STDLIB_DEF)
-libc-multi-y+=$(STDLIB_SRC) $(STDLIB_MSRC)
-libc-nomulti-y+=$(patsubst %.o,$(STDLIB_OUT)/%.o,$(STDLIB_MOBJ_NO_MULTI))
-libc-nomulti-$(UCLIBC_HAS_XLOCALE)+=$(STDLIB_MOBJx)
+libc-nonshared-y += $(STDLIB_OUT)/atexit.os
 
-objclean-y+=stdlib_objclean
+objclean-y += stdlib_objclean
 
 stdlib_objclean:
 	$(RM) $(STDLIB_OUT)/*.{o,os}

+ 9 - 20
libc/stdlib/malloc-simple/Makefile.in

@@ -1,33 +1,22 @@
 # Makefile for uClibc
 #
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
-MSRC:=alloc.c
-MOBJ:=malloc.o realloc.o free.o calloc.o memalign.o
+STDLIB_MALLOC_SIMPLE_DIR := $(top_srcdir)libc/stdlib/malloc-simple
+STDLIB_MALLOC_SIMPLE_OUT := $(top_builddir)libc/stdlib/malloc-simple
 
-STDLIB_MALLOC_SIMPLE_DIR:=$(top_srcdir)libc/stdlib/malloc-simple
-STDLIB_MALLOC_SIMPLE_OUT:=$(top_builddir)libc/stdlib/malloc-simple
+CSRC := $(notdir $(wildcard $(STDLIB_MALLOC_SIMPLE_DIR)/*.c))
+CSRC := $(filter-out alloc.c,$(CSRC))
 
-STDLIB_MALLOC_SIMPLE_MSRC:=$(STDLIB_MALLOC_SIMPLE_DIR)/$(MSRC)
-STDLIB_MALLOC_SIMPLE_MOBJ:=$(patsubst %.o,$(STDLIB_MALLOC_SIMPLE_OUT)/%.o,$(MOBJ))
-STDLIB_MALLOC_SIMPLE_DEF:=$(patsubst %,-DL_%,$(subst .o,,$(notdir $(STDLIB_MALLOC_SIMPLE_MOBJ))))
+STDLIB_MALLOC_SIMPLE_SRC := $(patsubst %.c,$(STDLIB_MALLOC_SIMPLE_DIR)/%.c,$(CSRC))
+STDLIB_MALLOC_SIMPLE_OBJ := $(patsubst %.c,$(STDLIB_MALLOC_SIMPLE_OUT)/%.o,$(CSRC))
 
-libc-a-$(MALLOC_SIMPLE)+=$(STDLIB_MALLOC_SIMPLE_MOBJ)
-libc-so-$(MALLOC_SIMPLE)+=$(STDLIB_MALLOC_SIMPLE_MOBJ:.o=.os)
+libc-$(MALLOC_SIMPLE) += $(STDLIB_MALLOC_SIMPLE_OBJ)
 
-CFLAGS-multi-$(MALLOC_SIMPLE)+=$(STDLIB_MALLOC_SIMPLE_DEF)
-libc-multi-$(MALLOC_SIMPLE)+=$(STDLIB_MALLOC_SIMPLE_MSRC)
-
-$(STDLIB_MALLOC_SIMPLE_MOBJ): $(STDLIB_MALLOC_SIMPLE_MSRC)
-	$(compile.m)
-
-$(STDLIB_MALLOC_SIMPLE_MOBJ:.o=.os): $(STDLIB_MALLOC_SIMPLE_MSRC)
-	$(compile.m)
-
-objclean-y+=stdlib_malloc_simple_objclean
+objclean-y += stdlib_malloc_simple_objclean
 
 stdlib_malloc_simple_objclean:
 	$(RM) $(STDLIB_MALLOC_SIMPLE_OUT)/*.{o,os}

+ 9 - 12
libc/stdlib/malloc-standard/Makefile.in

@@ -1,32 +1,29 @@
 # Makefile for uClibc
 #
 # Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
 # Turn on malloc debugging if requested
 ifeq ($(UCLIBC_MALLOC_DEBUGGING),y)
-CFLAGS+=-D__MALLOC_DEBUGGING
+CFLAGS += -D__MALLOC_DEBUGGING
 endif
 
 # calloc.c can be found at uClibc/libc/stdlib/calloc.c
 # valloc.c can be found at uClibc/libc/stdlib/valloc.c
-CSRC:=malloc.c calloc.c realloc.c free.c memalign.c mallopt.c mallinfo.c
+CSRC := malloc.c calloc.c realloc.c free.c memalign.c mallopt.c mallinfo.c
 
-STDLIB_MALLOC_STANDARD_DIR:=$(top_srcdir)libc/stdlib/malloc-standard
-STDLIB_MALLOC_STANDARD_OUT:=$(top_builddir)libc/stdlib/malloc-standard
+STDLIB_MALLOC_STANDARD_DIR := $(top_srcdir)libc/stdlib/malloc-standard
+STDLIB_MALLOC_STANDARD_OUT := $(top_builddir)libc/stdlib/malloc-standard
 
-STDLIB_MALLOC_STANDARD_SRC:=$(patsubst %.c,$(STDLIB_MALLOC_STANDARD_DIR)/%.c,$(CSRC))
-STDLIB_MALLOC_STANDARD_OBJ:=$(patsubst %.c,$(STDLIB_MALLOC_STANDARD_OUT)/%.o,$(CSRC))
+STDLIB_MALLOC_STANDARD_SRC := $(patsubst %.c,$(STDLIB_MALLOC_STANDARD_DIR)/%.c,$(CSRC))
+STDLIB_MALLOC_STANDARD_OBJ := $(patsubst %.c,$(STDLIB_MALLOC_STANDARD_OUT)/%.o,$(CSRC))
 
-libc-a-$(MALLOC_STANDARD)+=$(STDLIB_MALLOC_STANDARD_OBJ)
-libc-so-$(MALLOC_STANDARD)+=$(STDLIB_MALLOC_STANDARD_OBJ:.o=.os)
+libc-$(MALLOC_STANDARD) += $(STDLIB_MALLOC_STANDARD_OBJ)
 
-libc-multi-$(MALLOC_STANDARD)+=$(STDLIB_MALLOC_STANDARD_SRC)
-
-objclean-y+=stdlib_malloc_standard_objclean
+objclean-y += stdlib_malloc_standard_objclean
 
 stdlib_malloc_standard_objclean:
 	$(RM) $(STDLIB_MALLOC_STANDARD_OUT)/*.{o,os}

+ 11 - 14
libc/stdlib/malloc/Makefile.in

@@ -2,35 +2,32 @@
 #
 # Copyright (C) 2002-2003  NEC Electronics Corporation
 # Copyright (C) 2002-2003  Miles Bader <miles@gnu.org>
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
-CSRC:=	malloc.c calloc.c free.c realloc.c memalign.c \
+CSRC :=	malloc.c calloc.c free.c realloc.c memalign.c \
 	heap_alloc.c heap_alloc_at.c heap_free.c
 
 # Turn on malloc debugging if requested
 ifeq ($(UCLIBC_MALLOC_DEBUGGING),y)
-CSRC+=malloc_debug.c heap_debug.c
-CFLAGS+=-DMALLOC_DEBUGGING -DHEAP_DEBUGGING
+CSRC += malloc_debug.c heap_debug.c
+CFLAGS += -DMALLOC_DEBUGGING -DHEAP_DEBUGGING
 ifeq ($(UCLIBC_UCLINUX_BROKEN_MUNMAP),y)
-CFLAGS+=-DMALLOC_MMB_DEBUGGING
+CFLAGS += -DMALLOC_MMB_DEBUGGING
 endif
 endif
 
-STDLIB_MALLOC_DIR:=$(top_srcdir)libc/stdlib/malloc
-STDLIB_MALLOC_OUT:=$(top_builddir)libc/stdlib/malloc
+STDLIB_MALLOC_DIR := $(top_srcdir)libc/stdlib/malloc
+STDLIB_MALLOC_OUT := $(top_builddir)libc/stdlib/malloc
 
-STDLIB_MALLOC_SRC:=$(patsubst %.c,$(STDLIB_MALLOC_DIR)/%.c,$(CSRC))
-STDLIB_MALLOC_OBJ:=$(patsubst %.c,$(STDLIB_MALLOC_OUT)/%.o,$(CSRC))
+STDLIB_MALLOC_SRC := $(patsubst %.c,$(STDLIB_MALLOC_DIR)/%.c,$(CSRC))
+STDLIB_MALLOC_OBJ := $(patsubst %.c,$(STDLIB_MALLOC_OUT)/%.o,$(CSRC))
 
-libc-a-$(MALLOC)+=$(STDLIB_MALLOC_OBJ)
-libc-so-$(MALLOC)+=$(STDLIB_MALLOC_OBJ:.o=.os)
+libc-$(MALLOC) += $(STDLIB_MALLOC_OBJ)
 
-libc-multi-$(MALLOC)+=$(STDLIB_MALLOC_SRC)
-
-objclean-y+=stdlib_malloc_objclean
+objclean-y += stdlib_malloc_objclean
 
 stdlib_malloc_objclean:
 	$(RM) $(STDLIB_MALLOC_OUT)/*.{o,os}

+ 37 - 45
libc/string/Makefile.in

@@ -8,112 +8,104 @@
 #
 # Arch specific fun
 #
-STRING_ARCH_DIR:=$(top_srcdir)libc/string/$(TARGET_ARCH)
-STRING_ARCH_OUT:=$(top_builddir)libc/string/$(TARGET_ARCH)
+STRING_ARCH_DIR := $(top_srcdir)libc/string/$(TARGET_ARCH)
+STRING_ARCH_OUT := $(top_builddir)libc/string/$(TARGET_ARCH)
 
-STRING_ARCH_SRC:=$(wildcard $(STRING_ARCH_DIR)/*.c)
-STRING_ARCH_OBJ:=$(patsubst $(STRING_ARCH_DIR)/%.c,$(STRING_ARCH_OUT)/%.o,$(STRING_ARCH_SRC))
+STRING_ARCH_SRC := $(wildcard $(STRING_ARCH_DIR)/*.c)
+STRING_ARCH_OBJ := $(patsubst $(STRING_ARCH_DIR)/%.c,$(STRING_ARCH_OUT)/%.o,$(STRING_ARCH_SRC))
 
-STRING_ARCH_SSRC:=$(wildcard $(STRING_ARCH_DIR)/*.S)
-STRING_ARCH_SOBJ:=$(patsubst $(STRING_ARCH_DIR)/%.S,$(STRING_ARCH_OUT)/%.o,$(STRING_ARCH_SSRC))
+STRING_ARCH_SSRC := $(wildcard $(STRING_ARCH_DIR)/*.S)
+STRING_ARCH_SOBJ := $(patsubst $(STRING_ARCH_DIR)/%.S,$(STRING_ARCH_OUT)/%.o,$(STRING_ARCH_SSRC))
 
-STRING_ARCH_OBJS:=$(STRING_ARCH_OBJ) $(STRING_ARCH_SOBJ)
+STRING_ARCH_OBJS := $(STRING_ARCH_OBJ) $(STRING_ARCH_SOBJ)
 
-libc-a-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_OBJS)
-libc-so-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_OBJS:.o=.os)
+libc-$(UCLIBC_HAS_STRING_ARCH_OPT) += $(STRING_ARCH_OBJS)
 
-libc-multi-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_SRC)
-libc-nomulti-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_SOBJ)
+libc-nomulti-$(UCLIBC_HAS_STRING_ARCH_OPT) += $(STRING_ARCH_SOBJ)
 
 #
 # Generic stuff
 #
-STRING_GENERIC_DIR:=$(top_srcdir)libc/string/generic
-STRING_GENERIC_OUT:=$(top_builddir)libc/string/generic
+STRING_GENERIC_DIR := $(top_srcdir)libc/string/generic
+STRING_GENERIC_OUT := $(top_builddir)libc/string/generic
 
-STRING_GENERIC_SRC:=$(wildcard $(STRING_GENERIC_DIR)/*.c)
+STRING_GENERIC_SRC := $(wildcard $(STRING_GENERIC_DIR)/*.c)
 
 ifeq ($(UCLIBC_HAS_STRING_ARCH_OPT),y)
 ifneq ($(strip $(STRING_ARCH_OBJS)),)
-STRING_GENERIC_SRC:=$(filter-out $(patsubst %.o,$(STRING_GENERIC_DIR)/%.c,$(notdir $(STRING_ARCH_OBJS))),$(STRING_GENERIC_SRC))
+STRING_GENERIC_SRC := $(filter-out $(patsubst %.o,$(STRING_GENERIC_DIR)/%.c,$(notdir $(STRING_ARCH_OBJS))),$(STRING_GENERIC_SRC))
 endif
 endif
 
-STRING_GENERIC_OBJS:=$(patsubst $(STRING_GENERIC_DIR)/%.c,$(STRING_GENERIC_OUT)/%.o,$(STRING_GENERIC_SRC))
+STRING_GENERIC_OBJS := $(patsubst $(STRING_GENERIC_DIR)/%.c,$(STRING_GENERIC_OUT)/%.o,$(STRING_GENERIC_SRC))
 
-libc-a-$(UCLIBC_HAS_STRING_GENERIC_OPT)+=$(STRING_GENERIC_OBJS)
-libc-so-$(UCLIBC_HAS_STRING_GENERIC_OPT)+=$(STRING_GENERIC_OBJS:.o=.os)
-
-libc-multi-$(UCLIBC_HAS_STRING_GENERIC_OPT)+=$(STRING_GENERIC_SRC)
+libc-$(UCLIBC_HAS_STRING_GENERIC_OPT) += $(STRING_GENERIC_OBJS)
 
 #
 # Top level string
 #
-STRING_DIR:=$(top_srcdir)libc/string
-STRING_OUT:=$(top_builddir)libc/string
+STRING_DIR := $(top_srcdir)libc/string
+STRING_OUT := $(top_builddir)libc/string
 
-STRING_ALL_WXSRC:=$(wildcard $(STRING_DIR)/w*_l.c)
+STRING_ALL_WXSRC := $(wildcard $(STRING_DIR)/w*_l.c)
 ifeq ($(UCLIBC_HAS_LOCALE),y)
-STRING_WXSRC:=$(STRING_ALL_WXSRC)
+STRING_WXSRC := $(STRING_ALL_WXSRC)
 else
 # wcscoll_l
-STRING_WXSRC:=$(filter-out $(STRING_DIR)/wcsxfrm_l.c,$(STRING_ALL_WXSRC))
+STRING_WXSRC := $(filter-out $(STRING_DIR)/wcsxfrm_l.c,$(STRING_ALL_WXSRC))
 endif
 
-STRING_ALL_XLSRC:=$(filter-out $(STRING_ALL_WXSRC),$(wildcard $(STRING_DIR)/*_l.c))
+STRING_ALL_XLSRC := $(filter-out $(STRING_ALL_WXSRC),$(wildcard $(STRING_DIR)/*_l.c))
 ifeq ($(UCLIBC_HAS_LOCALE),y)
-STRING_XLSRC:=$(STRING_ALL_XLSRC)
+STRING_XLSRC := $(STRING_ALL_XLSRC)
 else
 # strcoll_l
-STRING_XLSRC:=$(filter-out $(STRING_DIR)/strxfrm_l.c,$(STRING_ALL_XLSRC))
+STRING_XLSRC := $(filter-out $(STRING_DIR)/strxfrm_l.c,$(STRING_ALL_XLSRC))
 endif
 
-STRING_ALL_WSRC:=$(filter-out $(STRING_ALL_WXSRC),$(wildcard $(STRING_DIR)/w*.c))
+STRING_ALL_WSRC := $(filter-out $(STRING_ALL_WXSRC),$(wildcard $(STRING_DIR)/w*.c))
 ifeq ($(UCLIBC_HAS_LOCALE),y)
-STRING_WSRC:=$(STRING_ALL_WSRC)
+STRING_WSRC := $(STRING_ALL_WSRC)
 else
 # wcscoll
-STRING_WSRC:=$(filter-out $(STRING_DIR)/wcsxfrm.c,$(STRING_ALL_WSRC))
+STRING_WSRC := $(filter-out $(STRING_DIR)/wcsxfrm.c,$(STRING_ALL_WSRC))
 endif
 
-STRING_ALL_CSRC:=$(filter-out $(STRING_ALL_WXSRC) $(STRING_ALL_XLSRC) $(STRING_ALL_WSRC) $(STRING_DIR)/_collate.c,$(wildcard $(STRING_DIR)/*.c))
+STRING_ALL_CSRC := $(filter-out $(STRING_ALL_WXSRC) $(STRING_ALL_XLSRC) $(STRING_ALL_WSRC) $(STRING_DIR)/_collate.c,$(wildcard $(STRING_DIR)/*.c))
 ifeq ($(UCLIBC_HAS_LOCALE),y)
-STRING_CSRC:=$(STRING_ALL_CSRC)
+STRING_CSRC := $(STRING_ALL_CSRC)
 else
 # strcoll
-STRING_CSRC:=$(filter-out $(STRING_DIR)/strxfrm.c,$(STRING_ALL_CSRC))
+STRING_CSRC := $(filter-out $(STRING_DIR)/strxfrm.c,$(STRING_ALL_CSRC))
 endif
 
 ifeq ($(UCLIBC_HAS_WCHAR),y)
-STRING_CSRC+=$(STRING_WSRC)
+STRING_CSRC += $(STRING_WSRC)
 endif
 ifeq ($(UCLIBC_HAS_XLOCALE),y)
-STRING_CSRC+=$(STRING_XLSRC)
+STRING_CSRC += $(STRING_XLSRC)
 ifeq ($(UCLIBC_HAS_WCHAR),y)
-STRING_CSRC+=$(STRING_WXSRC)
+STRING_CSRC += $(STRING_WXSRC)
 endif
 endif
 
 ifeq ($(UCLIBC_HAS_STRING_ARCH_OPT),y)
 ifneq ($(strip $(STRING_ARCH_OBJS)),)
-STRING_CSRC:=$(filter-out $(patsubst %.o,$(STRING_DIR)/%.c,$(notdir $(STRING_ARCH_OBJS))),$(STRING_CSRC))
+STRING_CSRC := $(filter-out $(patsubst %.o,$(STRING_DIR)/%.c,$(notdir $(STRING_ARCH_OBJS))),$(STRING_CSRC))
 endif
 endif
 
 ifeq ($(UCLIBC_HAS_STRING_GENERIC_OPT),y)
 ifneq ($(strip $(STRING_GENERIC_OBJS)),)
-STRING_CSRC:=$(filter-out $(patsubst %.o,$(STRING_DIR)/%.c,$(notdir $(STRING_GENERIC_OBJS))),$(STRING_CSRC))
+STRING_CSRC := $(filter-out $(patsubst %.o,$(STRING_DIR)/%.c,$(notdir $(STRING_GENERIC_OBJS))),$(STRING_CSRC))
 endif
 endif
 
-STRING_COBJ:=$(patsubst $(STRING_DIR)/%.c,$(STRING_OUT)/%.o,$(STRING_CSRC))
-
-libc-a-y+=$(STRING_COBJ)
-libc-so-y+=$(STRING_COBJ:.o=.os)
+STRING_COBJ := $(patsubst $(STRING_DIR)/%.c,$(STRING_OUT)/%.o,$(STRING_CSRC))
 
-libc-multi-y+=$(STRING_CSRC)
+libc-y += $(STRING_COBJ)
 
-objclean-y+=string_objclean
+objclean-y += string_objclean
 
 string_objclean:
 	$(RM) $(STRING_OUT)/{,*/}*.{o,os}

+ 2 - 4
libc/sysdeps/linux/Makefile.commonarch

@@ -1,6 +1,6 @@
 # Makefile template to be included by sysdeps/linux/<ARCH>/Makefile.arch
 #
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
@@ -16,9 +16,7 @@ ARCH_SOBJ := $(patsubst %.s,$(ARCH_OUT)/%.o,$(patsubst %.S,$(ARCH_OUT)/%.o,$(SSR
 ARCH_OBJS := $(ARCH_COBJ) $(ARCH_SOBJ)
 
 crt-y          := create
-libc-a-y       += $(ARCH_OBJS)
-libc-so-y      += $(ARCH_OBJS:.o=.os)
-libc-multi-y   += $(ARCH_CSRC)
+libc-y         += $(ARCH_OBJS)
 libc-nomulti-y += $(ARCH_SOBJ)
 objclean-y     += arch_objclean
 

+ 19 - 29
libc/sysdeps/linux/common/Makefile.in

@@ -1,57 +1,47 @@
 # Makefile for uClibc
 #
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
-COMMON_DIR:=$(top_srcdir)libc/sysdeps/linux/common
-COMMON_OUT:=$(top_builddir)libc/sysdeps/linux/common
+COMMON_DIR := $(top_srcdir)libc/sysdeps/linux/common
+COMMON_OUT := $(top_builddir)libc/sysdeps/linux/common
 
-CSRC:=$(patsubst $(COMMON_DIR)/%.c,%.c,$(wildcard $(COMMON_DIR)/*.c))
+CSRC := $(notdir $(wildcard $(COMMON_DIR)/*.c))
 
 ifeq ($(EXCLUDE_BRK),y)
-CSRC:=$(filter-out sbrk.c,$(CSRC))
+CSRC := $(filter-out sbrk.c,$(CSRC))
 endif
 
 ifneq ($(UCLIBC_HAS_LFS),y)
-CSRC_LFS:=$(patsubst $(COMMON_DIR)/%.c,%.c,$(wildcard $(COMMON_DIR)/*64.c))
-CSRC:=$(filter-out llseek.c $(CSRC_LFS),$(CSRC))
+CSRC_LFS := $(notdir $(wildcard $(COMMON_DIR)/*64.c))
+CSRC := $(filter-out llseek.c $(CSRC_LFS),$(CSRC))
 endif
 
-# full list
-#COMMON_NO_MULTI:=getcwd.c getrlimit.c getrlimit64.c setrlimit.c setrlimit64.c getpriority.c getpriority64.c setpriority.c getrusage.c wait4.c getitimer.c setitimer.c open.c open64.c uname.c __syscall_fcntl.c __syscall_fcntl64.c
-COMMON_NO_MULTI:=getrlimit.c getrlimit64.c setrlimit.c setrlimit64.c getpriority.c setpriority.c getrusage.c getitimer.c setitimer.c uname.c __syscall_rt_sigaction.c
-
-CSRC:=$(filter-out ssp-local.c,$(CSRC))
+CSRC := $(filter-out ssp-local.c,$(CSRC))
 ifneq ($(UCLIBC_HAS_SSP),y)
-CSRC:=$(filter-out ssp.c,$(CSRC))
-endif
-
-ifneq ($(DOMULTI),n)
-CSRC:=$(filter-out $(COMMON_NO_MULTI),$(CSRC))
+CSRC := $(filter-out ssp.c,$(CSRC))
 endif
 
 # fails for some reason
 ifneq ($(strip $(ARCH_OBJS)),)
-CSRC:=$(filter-out $(notdir $(ARCH_OBJS:.o=.c)),$(CSRC))
+CSRC := $(filter-out $(notdir $(ARCH_OBJS:.o=.c)),$(CSRC))
 endif
 
-CFLAGS-ssp.c=$(SSP_DISABLE_FLAGS)
-CFLAGS-ssp-local.c=$(SSP_DISABLE_FLAGS)
+CFLAGS-ssp.c := $(SSP_DISABLE_FLAGS)
+CFLAGS-ssp-local.c := $(SSP_DISABLE_FLAGS)
 
-COMMON_SRC:=$(patsubst %.c,$(COMMON_DIR)/%.c,$(CSRC))
-COMMON_OBJ:=$(patsubst %.c,$(COMMON_OUT)/%.o,$(CSRC))
+COMMON_SRC := $(patsubst %.c,$(COMMON_DIR)/%.c,$(CSRC))
+COMMON_OBJ := $(patsubst %.c,$(COMMON_OUT)/%.o,$(CSRC))
 
-libc-a-y+=$(COMMON_OBJ)
-libc-so-y+=$(COMMON_OBJ:.o=.os)
-libc-static-$(UCLIBC_HAS_SSP)+=$(COMMON_OUT)/ssp-local.o
-libc-nonshared-$(UCLIBC_HAS_SSP)+=$(COMMON_OUT)/ssp-local.os
+libc-y += $(COMMON_OBJ)
+libc-static-$(UCLIBC_HAS_SSP) += $(COMMON_OUT)/ssp-local.o
+libc-nonshared-$(UCLIBC_HAS_SSP) += $(COMMON_OUT)/ssp-local.os
 
-libc-multi-y+=$(COMMON_SRC)
-libc-nomulti-y+=$(patsubst %.c,$(COMMON_OUT)/%.o,$(COMMON_NO_MULTI))
+libc-nomulti-$(UCLIBC_HAS_SSP) += $(COMMON_OUT)/ssp.o
 
-objclean-y+=common_objclean
+objclean-y += common_objclean
 
 common_objclean:
 	$(RM) $(COMMON_OUT)/*.{o,os}

+ 6 - 34
libc/sysdeps/linux/vax/Makefile.arch

@@ -1,41 +1,13 @@
 # Makefile for uClibc
 #
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
-# Copyright (C) 2005 Jan-Benedict Glaw <jbglaw@lug-owl.de>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2005-2006 Jan-Benedict Glaw <jbglaw@lug-owl.de>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
-CSRC:=brk.c _mmap.c
-SSRC:=__longjmp.S setjmp.S _setjmp.S clone.S
-
-ARCH_DIR:=$(top_srcdir)libc/sysdeps/linux/vax
-ARCH_OUT:=$(top_builddir)libc/sysdeps/linux/vax
-
-ARCH_CSRC:=$(patsubst %.c,$(ARCH_DIR)/%.c,$(CSRC))
-ARCH_COBJ:=$(patsubst %.c,$(ARCH_OUT)/%.o,$(CSRC))
-ARCH_SSRC:=$(patsubst %.S,$(ARCH_DIR)/%.S,$(SSRC))
-ARCH_SOBJ:=$(patsubst %.S,$(ARCH_OUT)/%.o,$(SSRC))
-
-ARCH_OBJS:=$(ARCH_COBJ) $(ARCH_SOBJ)
-
-crt-y:=create
-libc-a-y+=$(ARCH_OBJS)
-libc-a-pic-y+=$(ARCH_OBJS:.o=.os)
-libc-so-y+=$(ARCH_OBJS:.o=.os)
-
-#libc-multi-y+=$(ARCH_CSRC)
-libc-nomulti-y+=$(ARCH_OBJS)
-
-objclean-y+=arch_objclean
-
-arch_objclean:
-	$(RM) $(ARCH_OUT)/*.{o,os}
-
-headers-y+=arch_headers
-#
-arch_headers:
-#	arm has this, but we don't (yet?)...
-#	$(LN) -fs ../libc/sysdeps/linux/vax/fpu_control.h $(top_builddir)include/
-#
+# psm: rename _mmap.c, else the generic won't be overwritten
+CSRC := brk.c _mmap.c
+SSRC := __longjmp.S setjmp.S _setjmp.S clone.S
 
+include $(top_srcdir)libc/sysdeps/linux/Makefile.commonarch

+ 7 - 8
libc/termios/Makefile.in

@@ -1,21 +1,20 @@
 # Makefile for uClibc
 #
 # Copyright (C) 2000 by Lineo, inc.
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
-TERMIOS_DIR:=$(top_srcdir)libc/termios
-TERMIOS_OUT:=$(top_builddir)libc/termios
+TERMIOS_DIR := $(top_srcdir)libc/termios
+TERMIOS_OUT := $(top_builddir)libc/termios
 
-TERMIOS_SRC:=$(wildcard $(TERMIOS_DIR)/*.c)
-TERMIOS_OBJ:=$(patsubst $(TERMIOS_DIR)/%.c,$(TERMIOS_OUT)/%.o,$(TERMIOS_SRC))
+TERMIOS_SRC := $(wildcard $(TERMIOS_DIR)/*.c)
+TERMIOS_OBJ := $(patsubst $(TERMIOS_DIR)/%.c,$(TERMIOS_OUT)/%.o,$(TERMIOS_SRC))
 
-libc-a-y+=$(TERMIOS_OBJ)
-libc-so-y+=$(TERMIOS_OBJ:.o=.os)
+libc-y += $(TERMIOS_OBJ)
 
-objclean-y+=termios_objclean
+objclean-y += termios_objclean
 
 termios_objclean:
 	$(RM) $(TERMIOS_OUT)/*.{o,os}

+ 17 - 38
libc/unistd/Makefile.in

@@ -1,60 +1,39 @@
 # Makefile for uClibc
 #
-# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+# Copyright (C) 2000-2006 Erik Andersen <andersen@uclibc.org>
 #
 # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
 #
 
-CSRC:=	sleep.c usleep.c ualarm.c getpass.c sysconf.c getlogin.c \
-	fpathconf.c confstr.c pathconf.c swab.c usershell.c \
-	getsubopt.c
-ifeq ($(ARCH_HAS_MMU),y)
-CSRC+= daemon.c
-endif
+UNISTD_DIR := $(top_srcdir)libc/unistd
+UNISTD_OUT := $(top_builddir)libc/unistd
 
-MSRC:=exec.c
-MOBJ:=execl.o execv.o execle.o execlp.o execvp.o
+CSRC := $(notdir $(wildcard $(UNISTD_DIR)/*.c))
+# multi source
+CSRC := $(filter-out exec.c,$(CSRC))
 
-ifneq ($(ARCH_HAS_MMU),y)
-MOBJ+=__exec_alloc.o
+ifeq ($(ARCH_HAS_MMU),y)
+CSRC := $(filter-out __exec_alloc.c,$(CSRC))
+else
+CSRC := $(filter-out daemon.c,$(CSRC))
 endif
 
 ifeq ($(UCLIBC_HAS_GNU_GETOPT),y)
-CSRC+=getopt.c
+CSRC := $(filter-out getopt-susv3.c,$(CSRC))
 else
-CSRC+=getopt-susv3.c
+CSRC := $(filter-out getopt.c,$(CSRC))
 endif
 
 ifeq ($(UCLIBC_HAS_THREADS_NATIVE),y)
-CSRC:=$(filter-out sleep.c,$(CSRC))
+CSRC := $(filter-out sleep.c,$(CSRC))
 endif
 
-UNISTD_DIR:=$(top_srcdir)libc/unistd
-UNISTD_OUT:=$(top_builddir)libc/unistd
-
-UNISTD_SRC:=$(patsubst %.c,$(UNISTD_DIR)/%.c,$(CSRC))
-UNISTD_OBJ:=$(patsubst %.c,$(UNISTD_OUT)/%.o,$(CSRC))
-
-UNISTD_MSRC:=$(patsubst %.c,$(UNISTD_DIR)/%.c,$(MSRC))
-UNISTD_MOBJ:=$(patsubst %.o,$(UNISTD_OUT)/%.o,$(MOBJ))
-
-UNISTD_DEF:=$(patsubst %,-DL_%,$(subst .o,,$(notdir $(UNISTD_MOBJ))))
-
-UNISTD_OBJS:=$(UNISTD_OBJ) $(UNISTD_MOBJ)
-
-$(UNISTD_MOBJ): $(UNISTD_MSRC)
-	$(compile.m)
-
-$(UNISTD_MOBJ:.o=.os): $(UNISTD_MSRC)
-	$(compile.m)
-
-libc-a-y+=$(UNISTD_OBJS)
-libc-so-y+=$(UNISTD_OBJS:.o=.os)
+UNISTD_SRC := $(patsubst %.c,$(UNISTD_DIR)/%.c,$(CSRC))
+UNISTD_OBJ := $(patsubst %.c,$(UNISTD_OUT)/%.o,$(CSRC))
 
-CFLAGS-multi-y+=$(UNISTD_DEF)
-libc-multi-y+=$(UNISTD_SRC) $(UNISTD_MSRC)
+libc-y += $(UNISTD_OBJ)
 
-objclean-y+=unistd_objclean
+objclean-y += unistd_objclean
 
 unistd_objclean:
 	$(RM) $(UNISTD_OUT)/*.{o,os}