*** empty log message ***

From-SVN: r1251
This commit is contained in:
Richard Stallman 1992-06-24 02:36:02 +00:00
parent 3e2481e914
commit acbbf3d9a8
1 changed files with 33 additions and 58 deletions

View File

@ -89,7 +89,7 @@ OLDAR = ar
# The GCC to use for compiling libgcc2.a. Usually the one we just built.
# Don't use this as a dependency--use $(GCC_PASSES) or $(GCC_PARTS).
GCC_FOR_TARGET = ./gcc
GCC_FOR_TARGET = ./xgcc
# This is used instead of ALL_CFLAGS when compiling with GCC_FOR_TARGET.
# It omits XCFLAGS, and specifies -B./.
@ -209,11 +209,11 @@ INSTALL_HEADERS=install-headers
# Select which version of fixincludes to use (I.E. regular versus SVR4)
FIXINCLUDES=fixincludes
# List of things which should already be built whenever we try to use gcc
# List of things which should already be built whenever we try to use xgcc
# to compile anything (without linking).
GCC_PASSES=gcc cc1 cpp $(EXTRA_PASSES)
GCC_PASSES=xgcc cc1 cpp $(EXTRA_PASSES)
# List of things which should already be built whenever we try to use gcc
# List of things which should already be built whenever we try to use xgcc
# to link anything.
GCC_PARTS=$(GCC_PASSES) libgcc.a $(EXTRA_PROGRAMS) $(USE_COLLECT2) $(EXTRA_PARTS)
@ -388,7 +388,7 @@ LIB2FUNCS = _muldi3 _divdi3 _moddi3 _udivdi3 _umoddi3 _negdi2 \
_bb _shtab _clear_cache _trampoline __main _exit
# Header files that are made available under the same name
# to programs compiled with gcc.
# to programs compiled with GCC.
USER_H = assert.h va-hp800.h va-i860.h va-mips.h va-pyr.h va-sparc.h \
va-spur.h va-m88k.h va-i960.h proto.h $(EXTRA_HEADERS)
@ -418,7 +418,7 @@ all.internal: start.encap rest.encap
# This is what to compile if making a cross-compiler.
all.cross: native gcc-cross cross-test $(EXTRA_PARTS)
# This is what must be made before installing GCC and converting libraries.
start.encap: native gcc specs $(LIBGCC1_TARGET)
start.encap: native xgcc specs $(LIBGCC1_TARGET)
# Use this to make a GCC that will be used only to recompile GCC.
for-bootstrap: start.encap libgcc.a
# These can't be made, with COFF encapsulation, until after GCC can run.
@ -460,20 +460,21 @@ cross-test.o: cross-test.c native gcc-cross
# This is used only if the user explicitly asks for it.
compilations: ${OBJS}
gcc: gcc.o version.o $(LIBDEPS)
$(CC) $(ALL_CFLAGS) $(LDFLAGS) -o gccnew gcc.o version.o $(LIBS)
# Go via `gccnew' to avoid `file busy' if $(CC) is `gcc'.
mv -f gccnew gcc
# We call this executable `xgcc' rather than `gcc'
# to avoid confusion if the current directory is in the path
# and CC is `gcc'. It is renamed to `gcc' when it is installed.
xgcc: gcc.o version.o $(LIBDEPS)
$(CC) $(ALL_CFLAGS) $(LDFLAGS) -o xgcc gcc.o version.o $(LIBS)
# Dump a specs file to make -B./ read these specs over installed ones.
specs: gcc
./gcc -dumpspecs > specs
specs: xgcc
./xgcc -dumpspecs > specs
# We do want to create an executable named `gcc', so we can use it to
# We do want to create an executable named `xgcc', so we can use it to
# compile libgcc2.a.
# Also create gcc-cross, so that install-common will install properly.
gcc-cross: gcc
cp gcc gcc-cross
gcc-cross: xgcc
cp xgcc gcc-cross
cc1:$(P) $(C_OBJS) $(OBJS) $(LIBDEPS)
$(CC) $(ALL_CFLAGS) $(LDFLAGS) -o cc1 $(C_OBJS) $(OBJS) $(LIBS)
@ -500,9 +501,9 @@ enquire.o: $(srcdir)/enquire.c $(GCC_PASSES)
# Build libgcc.a.
# This is done in two parts because some functions, in libgcc1.c,
# must be compiled with something other than gcc,
# while the rest, in libgcc2.c, must be compiled with gcc.
# That means we can't do libgcc2.c until after gcc, cc1, etc.
# must be compiled with something other than GCC,
# while the rest, in libgcc2.c, must be compiled with xgcc.
# That means we can't do libgcc2.c until after xgcc, cc1, etc.
# Use this as value of LIBGCC1 to cause conversion to GNU library format.
# LIBCONVERT should put its output in libgcc1.conv.
@ -518,7 +519,7 @@ libgcc1.null: $(CROSS_TOOLS) $(GCC_PASSES)
rm -f dummy.o dummy.c
# Compile the library of arithmetic subroutines with the native compiler.
# Don't compile it with gcc!
# Don't compile it with GCC!
# (That would cause most arithmetic functions to call themselves.)
libgcc1.a: libgcc1.c $(CONFIG_H) $(LIB1FUNCS_EXTRA) config.status
-rm -f tmplibgcc1.a
@ -1105,7 +1106,7 @@ cccp.o: cccp.c $(CONFIG_H) pcp.h version.c
-DCROSS_INCLUDE_DIR=\"$(libsubdir)/sys-include\" \
-c `echo $(srcdir)/cccp.c | sed 's,^\./,,'`
proto: config.status protoize unprotoize SYSCALLS.c.X protoize.1 unprotoize.1
proto: config.status protoize unprotoize SYSCALLS.c.X
protoize: protoize.o getopt.o getopt1.o getpwd.o version.o $(LIBDEPS)
$(CC) $(ALL_CFLAGS) $(LDFLAGS) \
@ -1118,7 +1119,6 @@ unprotoize: unprotoize.o getopt.o getopt1.o getpwd.o version.o $(LIBDEPS)
unprotoize.o: stamp-proto ;
stamp-proto: $(srcdir)/protoize.c getopt.h $(CONFIG_H)
touch stamp-proto
$(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \
-DGCC_INCLUDE_DIR=\"$(libsubdir)/include\" \
-DGPLUSPLUS_INCLUDE_DIR=\"$(libdir)/g++-include\" \
@ -1134,26 +1134,13 @@ stamp-proto: $(srcdir)/protoize.c getopt.h $(CONFIG_H)
-DLOCAL_INCLUDE_DIR=\"$(prefix)/include\" \
-DSTD_PROTO_DIR=\"$(libsubdir)\" \
$(srcdir)/protoize.c
touch stamp-proto
getopt.o: $(srcdir)/getopt.c getopt.h
$(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $(srcdir)/getopt.c
getopt1.o: $(srcdir)/getopt1.c getopt.h
$(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $(srcdir)/getopt1.c
protoize.1: $(srcdir)/proto-man ./cpp
./cpp -traditional $(srcdir)/proto-man \
| grep -v '^#' \
| awk 'NF > 0 {print}' > tmp-proto.1
-rm -f protoize.1
mv tmp-proto.1 protoize.1
unprotoize.1: $(srcdir)/proto-man ./cpp
./cpp -traditional -DUNPRO $(srcdir)/proto-man \
| grep -v '^#' \
| awk 'NF > 0 {print}' > tmp-unproto.1
-rm -f unprotoize.1
mv tmp-unproto.1 unprotoize.1
# This info describes the target machine, so compile with GCC just built.
SYSCALLS.c.X: $(srcdir)/sys-types.h $(srcdir)/sys-protos.h $(GCC_PASSES)
-rm -f SYSCALLS.c tmp-SYSCALLS.s
@ -1223,7 +1210,7 @@ mostlyclean:
-rm -f tmplibgcc* tmpcopy
for name in $(LIB1FUNCS); do rm -f $${name}.c; done
# Delete other temporary files.
-rm -f tmp-float.h tmp-gcc.xtar.Z tmp-limits.h gccnew
-rm -f tmp-float.h tmp-gcc.xtar.Z tmp-limits.h
-rm -f tmp-foo1 tmp-foo2 tmp-proto.* tmp-unproto.1 tmp-SYSCALLS.s
# Delete the stamp files.
-rm -f stamp-* tmp-*
@ -1270,7 +1257,6 @@ extraclean: distclean
realclean: distclean
-rm -f cp-parse.c cp-parse.h cp-parse.output
-rm -f objc-parse.c objc-parse.output
-rm -f protoize.1 unprotoize.1
-rm -f c-parse.c c-parse.h c-parse.output
-rm -f cexp.c cexp.output TAGS
-rm -f cpp.info* cpp.??s cpp.*aux
@ -1391,7 +1377,7 @@ install-common: native install-dir
else true; fi; \
else \
rm -f $(bindir)/gcc; \
$(INSTALL_PROGRAM) gcc $(bindir)/gcc; \
$(INSTALL_PROGRAM) xgcc $(bindir)/gcc; \
rm -f $(bindir)/gcc-$(target)-1; \
ln $(bindir)/gcc $(bindir)/gcc-$(target)-1; \
mv $(bindir)/gcc-$(target)-1 $(bindir)/gcc-$(target); \
@ -1414,21 +1400,13 @@ install-proto: proto install-dir
chmod a-x $(libsubdir)/SYSCALLS.c.X
# Install the man pages.
install-man: install-dir $(srcdir)/gcc.1 $(srcdir)/cccp.1 \
protoize.1 unprotoize.1 $(srcdir)/g++.1
install-man: install-dir $(srcdir)/gcc.1 $(srcdir)/cccp.1 $(srcdir)/g++.1
-rm -f $(mandir)/gcc$(manext)
-$(INSTALL_DATA) $(srcdir)/gcc.1 $(mandir)/gcc$(manext)
-chmod a-x $(mandir)/gcc$(manext)
-rm -f $(mandir)/cccp$(manext)
-$(INSTALL_DATA) $(srcdir)/cccp.1 $(mandir)/cccp$(manext)
-chmod a-x $(mandir)/cccp$(manext)
-rm -f $(mandir)/protoize$(manext)
-$(INSTALL_DATA) protoize.1 $(mandir)/protoize$(manext)
-chmod a-x $(mandir)/protoize$(manext)
-rm -f $(mandir)/unprotoize$(manext)
-$(INSTALL_DATA) unprotoize.1 $(mandir)/unprotoize$(manext)
-chmod a-x $(mandir)/unprotoize$(manext)
-rm -f $(mandir)/g++$(manext)
-$(INSTALL_DATA) $(srcdir)/g++.1 $(mandir)/g++$(manext)
-chmod a-x $(mandir)/g++$(manext)
@ -1527,11 +1505,7 @@ install-fixincludes: install-headers
install-collect2: collect2
$(INSTALL_PROGRAM) collect2 $(libsubdir)/ld
# Install the driver program as $(libsubdir)/gcc for collect2.
-if [ -f gcc-cross ] ; then \
$(INSTALL_PROGRAM) gcc-cross $(libsubdir)/gcc; \
else \
$(INSTALL_PROGRAM) gcc $(libsubdir)/gcc; \
fi
$(INSTALL_PROGRAM) xgcc $(libsubdir)/gcc
# Cancel installation by deleting the installed files.
uninstall:
@ -1617,6 +1591,7 @@ maketest:
-rm tm.h aux-output.c config.h md
make clean
# You must then run config to set up for compilation.
bootstrap: force
# Only build the C compiler for stage1, because that is the only one that
# we can guarantee will build with the native compiler, and also it is the
@ -1645,18 +1620,18 @@ bootstrap3: force
compare: force
for file in *.o; do \
tail +10c $$file > tmp-foo1; \
tail +10c stage2/$$file > tmp-foo2; \
cmp tmp-foo1 tmp-foo2 || echo $$file differs; \
tail +16c $$file > tmp-foo1; \
tail +16c stage2/$$file > tmp-foo2 2>/dev/null \
&& (cmp tmp-foo1 tmp-foo2 || echo $$file differs); \
done
-rm -f tmp-foo*
# Similar, but compare with stage3 directory
compare3: force
for file in *.o; do \
tail +10c $$file > tmp-foo1; \
tail +10c stage3/$$file > tmp-foo2; \
cmp tmp-foo1 tmp-foo2 || echo $$file differs; \
tail +16c $$file > tmp-foo1; \
tail +16c stage3/$$file > tmp-foo2 2>/dev/null \
&& (cmp tmp-foo1 tmp-foo2 || echo $$file differs); \
done
-rm -f tmp-foo*