make-3.82 -- parse error

View: New views
2 Messages — Rating Filter:   Alert me  

make-3.82 -- parse error

by Peter Breitenlohner :: Rate this Message:

| View Threaded | Show Only this Message

Hi,

yesterday, I had built and installed make-3.82 on our x86-linux-gnu systems,
but then had to downgrade to 3.81 due to a serious regression.

Attached is a small self-contained Makefile that works fine with 3.81, but
yields this error with 3.82:
> make-3.82: *** No rule to make target `util.a(foo.o', needed by `util.a'. Stop.

Regards
Peter Breitenlohner <peb@...>
# Demonstrate GNU make-3.82 parsing error

util.a: foo.c bar.c util.a(foo.o bar.o)

foo.c:
        echo '#include <stdio.h>' >$@
        echo 'void foo(void) {}' >>$@

bar.c:
        echo '#include <stdio.h>' >$@
        echo 'void bar(void) {}' >>$@

_______________________________________________
Bug-make mailing list
Bug-make@...
http://lists.gnu.org/mailman/listinfo/bug-make

Re: make-3.82 -- parse error

by Paul Smith-20 :: Rate this Message:

| View Threaded | Show Only this Message

On Fri, 2010-07-30 at 11:17 +0200, Peter Breitenlohner wrote:
> yesterday, I had built and installed make-3.82 on our x86-linux-gnu systems,
> but then had to downgrade to 3.81 due to a serious regression.
>
> Attached is a small self-contained Makefile that works fine with 3.81, but
> yields this error with 3.82:
> > make-3.82: *** No rule to make target `util.a(foo.o', needed by `util.a'. Stop.

Ugh.  I fixed one bug in this area but I can see that the code is quite
wrong here.  It tries to do the right thing but the pointer arithmetic
is just bogus.

I'm out of town for a bit but I'll look into this when I get back.

It would be helpful if you could file a bug on this at Savannah:

        https://savannah.gnu.org/projects/make/



_______________________________________________
Bug-make mailing list
Bug-make@...
http://lists.gnu.org/mailman/listinfo/bug-make