[gnu.utils.bug] Bugs in Make Version 3.27

ajudge@maths.tcd.ie (Alan Judge) (01/06/89)

The following bug causes a core dump on Vaxen but not on Suns when doing
make -p. It is caused by the variable MAKELEVEL being improperly set.

In variable.c change:
    (void) define_variable ("MAKELEVEL", 9, buf);
into
    (void) define_variable ("MAKELEVEL", 9, buf, o_default, 0);

I have also found a bug in variable expansions which causes the following
makefile to produce: 
make: *** No way to make target `test/lib.a'.  Stop.

-- Makefile
DESTLIB= ./test

all: $(DESTLIB)/lib.a

$(DESTLIB)/lib.a: a.o
	ar crl a.o $(DESTLIB)/lib.a 
	ranlib lib.a
--
If the value of DESTLIB does not begin with "./" it works fine, I have not
had time to trace the bug but I suspect variable expansion as the following
piece of a make -p shows the expansion has garbage at the end.

test/lib.a
STLIB=./test:
  depends on: a.o
  commands to execute (from `T.m', line 6):
	ar crl a.o $(DESTLIB)/lib.a 
	ranlib lib.a


53 files in 1007 hash buckets (average 0 files per bucket)

The precise garbage that appears between test/lib.a and the : varys from
machine to machine and as you change the makefile.
--
Alan Judge, Dept. of Maths, Trinity College Dublin, Ireland.
ajudge@maths.tcd.ie