OSDN Git Service

Cleanup makfile, use ld to avoid chicken-and-egg problems when
authorEric Andersen <andersen@codepoet.org>
Fri, 11 Jan 2002 14:34:12 +0000 (14:34 -0000)
committerEric Andersen <andersen@codepoet.org>
Fri, 11 Jan 2002 14:34:12 +0000 (14:34 -0000)
building gcc/g++.
 -Erik

libc/Makefile

index c8587b5..7805f97 100644 (file)
@@ -43,19 +43,12 @@ $(LIBNAME): subdirs
 shared: $(TOPDIR)lib/$(LIBNAME)
        @rm -rf tmp
        @mkdir tmp
-       @(cd tmp && CC=$(CC) LD=$(LD) NM=$(NM) AR=$(AR) /bin/sh ../../extra/scripts/get-needed-libgcc-objects.sh)
-       @if [ -s ./tmp/libgcc-need.a ] ; then \
-               set -e -x; \
-               $(CC) -g $(LDFLAGS) -shared -o $(SHARED_FULLNAME) \
-                   -Wl,-soname,$(SHARED_MAJORNAME) -Wl,--whole-archive \
-                   ./$(LIBNAME) ./tmp/libgcc-need.a \
-                   $(LDSO) -Wl,--dynamic-linker,$(DYNAMIC_LINKER); \
-       else \
-               set -e -x; \
-               $(CC) -g $(LDFLAGS) -shared -o $(SHARED_FULLNAME) \
-                   -Wl,-soname,$(SHARED_MAJORNAME) -Wl,--whole-archive \
-                   ./$(LIBNAME) $(LDSO)  -Wl,-dynamic-linker,$(DYNAMIC_LINKER); \
-       fi
+       $(AR) rv ./tmp/libgcc-need.a
+       @(cd tmp && CC=$(CC) LD=$(LD) NM=$(NM) AR=$(AR) \
+               /bin/sh ../../extra/scripts/get-needed-libgcc-objects.sh)
+       $(LD) $(LDFLAGS) -o $(SHARED_FULLNAME) -soname=$(SHARED_MAJORNAME) \
+               --dynamic-linker $(DYNAMIC_LINKER) --whole-archive $(LIBNAME) \
+               ./tmp/libgcc-need.a
        @/bin/true #rm -rf tmp
        install -d $(TOPDIR)lib
        rm -f $(TOPDIR)lib/$(SHARED_FULLNAME)