From cf48426c7f3ee5fa6636f9908f6cbbe1fb51724c Mon Sep 17 00:00:00 2001 From: Chris Hanson Date: Mon, 8 Jan 2007 14:45:17 +0000 Subject: [PATCH] Conditionally include C-back-end rules in Makefile, since it seems these are stimulating the bug in make. Undo previous change since it did not fix the problem. --- v7/src/microcode/configure.ac | 10 ++--- v7/src/microcode/makegen/Makefile.in.in | 49 ++----------------------- v7/src/microcode/makegen/cbe-rules | 44 ++++++++++++++++++++++ 3 files changed, 52 insertions(+), 51 deletions(-) create mode 100644 v7/src/microcode/makegen/cbe-rules diff --git a/v7/src/microcode/configure.ac b/v7/src/microcode/configure.ac index 9fc2ff504..49eeb1581 100644 --- a/v7/src/microcode/configure.ac +++ b/v7/src/microcode/configure.ac @@ -1,7 +1,7 @@ dnl Process this file with autoconf to produce a configure script. AC_INIT([MIT/GNU Scheme microcode], [14.18], [bug-mit-scheme@gnu.org], [mit-scheme]) -AC_REVISION([$Id: configure.ac,v 1.19 2007/01/05 21:19:25 cph Exp $]) +AC_REVISION([$Id: configure.ac,v 1.20 2007/01/08 14:45:17 cph Exp $]) AC_CONFIG_SRCDIR([boot.c]) AC_CONFIG_HEADERS([config.h]) AC_PROG_MAKE_SET @@ -159,7 +159,7 @@ MODULE_LDFLAGS= COMPILED_DEFS= COMPILED_SOURCES= COMPILED_OBJECTS= -CMPAUXMDO= +CBE_RULES= dnl Checks for programs. AC_PROG_CC @@ -867,7 +867,7 @@ if test "${scheme_arch}" != ""; then OPTIONAL_SOURCES="${OPTIONAL_SOURCES} cmpauxmd.m4" OPTIONAL_OBJECTS="${OPTIONAL_OBJECTS} cmpauxmd.o" GC_HEAD_FILES="${GC_HEAD_FILES} cmpintmd.h" - CMPAUXMDO="Ignore-me.o" + CBE_RULES="/dev/null" else AC_MSG_RESULT([yes, using portable C code]) AC_DEFINE([NATIVE_CODE_IS_C], [1], @@ -885,7 +885,7 @@ else for D in back base fggen fgopt machines/C rtlbase rtlgen rtlopt; do COMPILED_SOURCES="${COMPILED_SOURCES} \$(wildcard ../compiler/${D}/*.c)" done - CMPAUXMDO="cmpauxmd.o" + CBE_RULES="makegen/cbe-rules" fi for base in ${OPTIONAL_BASES}; do @@ -927,7 +927,7 @@ AC_SUBST([MODULE_LDFLAGS]) AC_SUBST([COMPILED_DEFS]) AC_SUBST([COMPILED_SOURCES]) AC_SUBST([COMPILED_OBJECTS]) -AC_SUBST([CMPAUXMDO]) +AC_SUBST_FILE([CBE_RULES]) AC_CONFIG_FILES([Makefile]) AC_OUTPUT diff --git a/v7/src/microcode/makegen/Makefile.in.in b/v7/src/microcode/makegen/Makefile.in.in index 4012e87bb..4d82b2406 100644 --- a/v7/src/microcode/makegen/Makefile.in.in +++ b/v7/src/microcode/makegen/Makefile.in.in @@ -1,6 +1,6 @@ # -*- Makefile -*- # -# $Id: Makefile.in.in,v 1.37 2007/01/08 05:38:57 cph Exp $ +# $Id: Makefile.in.in,v 1.38 2007/01/08 14:45:17 cph Exp $ # # Copyright (C) 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, # 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, @@ -196,7 +196,7 @@ MAINTAINER_CLEAN_FILES = Makefile.in Makefile.deps config.h.in configure # **** Implicit rules **** .SUFFIXES: -.SUFFIXES: .s .c .o .m4 +.SUFFIXES: .c .o .s .m4 .c.o: $(COMPILE) -o $*.o -c $*.c @@ -344,50 +344,7 @@ install-auxDATA: $(aux_DATA) @(write-dependencies)@ -# **** C back end stuff (II) **** - -@CMPAUXMDO@: cmpauxmd.c liarc.tch prims.h bignum.h bitstr.h avltree.h \ - outf.h extern.h - -compinit.o: compinit.c compinit.h liarc.tch - -unstackify.o: unstackify.c stackops.h liarc.tch - -LIARC_HEAD_FILES = \ -ansidecl.h \ -config.h \ -dstack.h \ -default.h \ -object.h \ -sdata.h \ -types.h \ -errors.h \ -const.h \ -interp.h \ -prim.h \ -trap.h \ -outf.h \ -extern.h \ -$(GC_HEAD_FILES) - -# The following includes liarc.tch in case COMPILED_SOURCES is empty, -# to prevent grep from reading stdin. - -compinit.h: $(COMPILED_SOURCES) liarc.tch Makefile - rm -f $@ - grep \^DECLARE_COMPILED_CODE liarc.tch $(COMPILED_SOURCES) \ - | sed -e 's/.*:/ /' > $@ - grep \^DECLARE_COMPILED_DATA liarc.tch $(COMPILED_SOURCES) \ - | sed -e 's/.*:/ /' >> $@ - grep \^DECLARE_DATA_OBJECT liarc.tch $(COMPILED_SOURCES) \ - | sed -e 's/.*:/ /' >> $@ - -foo $(COMPILED_OBJECTS): liarc.tch -liarc.tch: liarc.h $(LIARC_HEAD_FILES) - rm -f $@ - echo "touch" > $@ - -# **** End C back end stuff (II) *** +@CBE_RULES@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/v7/src/microcode/makegen/cbe-rules b/v7/src/microcode/makegen/cbe-rules new file mode 100644 index 000000000..18e59e2ea --- /dev/null +++ b/v7/src/microcode/makegen/cbe-rules @@ -0,0 +1,44 @@ +# **** C back end rules **** + +@CMPAUXMDO@: cmpauxmd.c liarc.tch prims.h bignum.h bitstr.h avltree.h \ + outf.h extern.h + +compinit.o: compinit.c compinit.h liarc.tch + +unstackify.o: unstackify.c stackops.h liarc.tch + +LIARC_HEAD_FILES = \ +ansidecl.h \ +config.h \ +dstack.h \ +default.h \ +object.h \ +sdata.h \ +types.h \ +errors.h \ +const.h \ +interp.h \ +prim.h \ +trap.h \ +outf.h \ +extern.h \ +$(GC_HEAD_FILES) + +# The following includes liarc.tch in case COMPILED_SOURCES is empty, +# to prevent grep from reading stdin. + +compinit.h: $(COMPILED_SOURCES) liarc.tch Makefile + rm -f $@ + grep \^DECLARE_COMPILED_CODE liarc.tch $(COMPILED_SOURCES) \ + | sed -e 's/.*:/ /' > $@ + grep \^DECLARE_COMPILED_DATA liarc.tch $(COMPILED_SOURCES) \ + | sed -e 's/.*:/ /' >> $@ + grep \^DECLARE_DATA_OBJECT liarc.tch $(COMPILED_SOURCES) \ + | sed -e 's/.*:/ /' >> $@ + +foo $(COMPILED_OBJECTS): liarc.tch +liarc.tch: liarc.h $(LIARC_HEAD_FILES) + rm -f $@ + echo "touch" > $@ + +# **** End C back end rules *** -- 2.25.1