help-make
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Implicit rule changes between 3.80 and 3.81?


From: Martin Hicks
Subject: Implicit rule changes between 3.80 and 3.81?
Date: Thu, 6 Apr 2006 09:23:13 -0400
User-agent: Mutt/1.5.11+cvs20060126

Hi,

I've run into a problem compiling u-boot with make 3.81 that looks like
a change in make's behavior or a broken makefile.  We have an implicit
rule that works with make 3.80 that changes an elf binary into a .srec
file, but make 3.81 errors out:

make[1]: *** No rule to make target `hello_world.srec', needed by `all'.  Stop.
make[1]: Leaving directory `/home/mort/src/targa/u-boot/u-boot-TOT/examples'
make: *** [examples] Error 2
address@hidden:~/src/targa/u-boot/u-boot-TOT$

I played around, and switching the implicit rule to a "%.srec : %.o"
rule makes it work, as does switching around the order that we specify
dependencies.

I would rather hear what the problem is, or why the behavior changed
between 3.80 and 3.81.  u-boot's "examples/Makefile" attached, as are
the two patches that I played with that made things work.

Fails both 3.81 from gnu.org, and the 3.80+3.81.rc2-1 package that I
have from debian testing.

Any help appreciated.
thanks
mh

-- 
Martin Hicks || address@hidden || PGP/GnuPG: 0x4C7F2BEE

Attachment: 0001-Switch-order-of-ELF-and-BIN-objects-for-make-3.81.txt
Description: Text document

Attachment: Makefile
Description: Text document

Attachment: 0001-objcopy-for-srec-and-bin-files-should-be-done-on-.o-files.txt
Description: Text document

Attachment: signature.asc
Description: Digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]