From a67277b6a081d2107fa2f5e36492c30db6fc1fe2 Mon Sep 17 00:00:00 2001 From: Mike Frysinger Date: Sun, 13 Feb 2005 06:51:15 +0000 Subject: touchup the $(AR) mojo to address some bugs by Peter Kjellerstedt --- libc/Makefile | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) (limited to 'libc/Makefile') diff --git a/libc/Makefile b/libc/Makefile index 17937bbc8..fc31a2cbb 100644 --- a/libc/Makefile +++ b/libc/Makefile @@ -53,12 +53,17 @@ all: halfclean $(LIBNAME_TARGET) $(DO_SHARED) # target is evaluated. That means if you run `rm obj.* ; make`, the wildcard # will evaluate to no files :(. $(LIBNAME) ar-target: subdirs - objs=`cat obj.*` ; $(AR) $(ARFLAGS) $(LIBNAME) $$objs - objs=`cat obj.*` ; $(AR) dN 2 $(LIBNAME) $$objs - @for objfile in obj.signal obj.string.generic obj.string \ - obj.sysdeps.$(TARGET_ARCH) obj.sysdeps.common ; do \ - echo $(AR) $(ARFLAGS) $(LIBNAME) $$objfile ; \ - objs=`cat $$objfile` ; \ + objs=`cat obj.*` ; \ + $(AR) $(ARFLAGS) $(LIBNAME) $$objs && \ + $(AR) dN 2 $(LIBNAME) $$objs && \ + $(AR) dN 2 $(LIBNAME) $$objs + @for objfile in obj.signal \ + obj.string.generic obj.string.$(TARGET_ARCH) obj.string \ + obj.sysdeps.common obj.sysdeps.$(TARGET_ARCH) ; do \ + if [ -e $$objfile ] ; then \ + echo $(AR) $(ARFLAGS) $(LIBNAME) $$objfile ; \ + objs=`cat $$objfile` ; \ + fi ; \ $(AR) $(ARFLAGS) $(LIBNAME) $$objs || exit 1 ; \ done $(RANLIB) $(LIBNAME) -- cgit v1.2.3