public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot-Users] [PATCH] fix for "make doesn't know how to make target in examples/"
@ 2006-07-10  7:45 Wen-chien Jesse Sung
  2006-07-10  8:14 ` Wolfgang Denk
  0 siblings, 1 reply; 7+ messages in thread
From: Wen-chien Jesse Sung @ 2006-07-10  7:45 UTC (permalink / raw)
  To: u-boot

Hi,

Make complains that it doesn't know how to make hello_world.srec.

make[1]: *** No rule to make target `hello_world.srec', needed by `all'.
 Stop.

Introduce $(TARGET) let make to build % before %.srec and %.bin.

CHANGELOG

* Introduce $(TARGET) in Makefile of examples/.

-- 
Best Regards,
Wen-chien Jesse Sung
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0002-fix-for-make-doesn-t-know-how-to-make-target-in-examples.txt.gz
Type: application/x-gzip
Size: 1010 bytes
Desc: not available
Url : http://lists.denx.de/pipermail/u-boot/attachments/20060710/6ae2460a/attachment.bin 

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [U-Boot-Users] [PATCH] fix for "make doesn't know how to make target in examples/"
  2006-07-10  7:45 [U-Boot-Users] [PATCH] fix for "make doesn't know how to make target in examples/" Wen-chien Jesse Sung
@ 2006-07-10  8:14 ` Wolfgang Denk
  2006-07-10  9:27   ` Wen-chien Jesse Sung
  0 siblings, 1 reply; 7+ messages in thread
From: Wolfgang Denk @ 2006-07-10  8:14 UTC (permalink / raw)
  To: u-boot

In message <44B20597.4010103@cola.voip.idv.tw> you wrote:
>
> Make complains that it doesn't know how to make hello_world.srec.

Is it correct to assume that you are using a (broken) BETA version of
the GNU make tool?

I reject your patch. AFAIK, any sane  version  of  make  handles  the
current Makefile correctly.

Please get working tools.

Best regards,

Wolfgang Denk

-- 
Software Engineering:  Embedded and Realtime Systems,  Embedded Linux
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Man did not weave the web of life; he  is  merely  a  strand  in  it.
Whatever he does to the web, he does to himself.     - Seattle [1854]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [U-Boot-Users] [PATCH] fix for "make doesn't know how to make target in examples/"
  2006-07-10  8:14 ` Wolfgang Denk
@ 2006-07-10  9:27   ` Wen-chien Jesse Sung
  2006-07-10 10:28     ` Andreas Schweigstill
  2006-07-10 12:51     ` Wolfgang Denk
  0 siblings, 2 replies; 7+ messages in thread
From: Wen-chien Jesse Sung @ 2006-07-10  9:27 UTC (permalink / raw)
  To: u-boot

Wolfgang Denk wrote:
>> Make complains that it doesn't know how to make hello_world.srec.
> 
> Is it correct to assume that you are using a (broken) BETA version of
> the GNU make tool?
> 
> I reject your patch. AFAIK, any sane  version  of  make  handles  the
> current Makefile correctly.
> 
> Please get working tools.

Hi,

I'm using make 3.81-2 that is in Debian etch and sid currently.

$ make --version
GNU Make 3.81

$ dpkg -l make
ii  make           3.81-2         The GNU version of the "make" utility.

A test with the attached Makefile:
$ touch 1.src
$ make
make: *** No rule to make target `1.out', needed by `all'.  Stop.

I would file a bug against make on Debian BTS if that is believed to be one.

-- 
Best Regards,
Wen-chien Jesse Sung
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: Makefile
Url: http://lists.denx.de/pipermail/u-boot/attachments/20060710/f8f37bd5/attachment.txt 

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [U-Boot-Users] [PATCH] fix for "make doesn't know how to make target in examples/"
  2006-07-10  9:27   ` Wen-chien Jesse Sung
@ 2006-07-10 10:28     ` Andreas Schweigstill
  2006-07-10 12:51     ` Wolfgang Denk
  1 sibling, 0 replies; 7+ messages in thread
From: Andreas Schweigstill @ 2006-07-10 10:28 UTC (permalink / raw)
  To: u-boot

Dear all!

Wen-chien Jesse Sung schrieb:
 > ------------------------------------------------------------------------
 >
 > %.out:	%
 > 	cp $< $@
 > 	echo $@
 >
 > %:	%.src
 > 	cp $< $@
 > 	echo $@
 >
 > all:	1.out
 > 	echo $@
 >
 >
 > ------------------------------------------------------------------------

I have tested the Makefile on a Suse 9.3 Professional system with
GNU make 3.80 (RPM package version make-3.80-187) and it fails
there, too.

But if I add the line

1.out: 1

everything is working.

With best regards
Andreas Schweigstill

-- 
Dipl.-Phys. Andreas Schweigstill
Schweigstill IT | Embedded Systems
Schauenburgerstra?e 116, D-24118 Kiel, Germany
Phone: (+49) 431 5606-435, Fax: (+49) 431 5606-436
Mobile: (+49) 171 6921973, Web: http://www.schweigstill.de/

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [U-Boot-Users] [PATCH] fix for "make doesn't know how to make target in examples/"
  2006-07-10  9:27   ` Wen-chien Jesse Sung
  2006-07-10 10:28     ` Andreas Schweigstill
@ 2006-07-10 12:51     ` Wolfgang Denk
  2006-07-10 13:45       ` Wen-chien Jesse Sung
  1 sibling, 1 reply; 7+ messages in thread
From: Wolfgang Denk @ 2006-07-10 12:51 UTC (permalink / raw)
  To: u-boot

Hello,

in message <44B21D7F.5070603@cola.voip.idv.tw> you wrote:
> 
> I'm using make 3.81-2 that is in Debian etch and sid currently.

This is supposed to be ok. 

> A test with the attached Makefile:
> $ touch 1.src
> $ make
> make: *** No rule to make target `1.out', needed by `all'.  Stop.

This Makefile is not equivlent to what we use in the U-Boot code.

> all:	1.out

The "examples/Makefile" is different; it corresponds to:

	all:	1.out 1

...and this works fine for me with make 3.81

Best regards,

Wolfgang Denk

-- 
Software Engineering:  Embedded and Realtime Systems,  Embedded Linux
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
The first 90% of a project takes 90% of the time, the last 10%  takes
the other 90% of the time.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [U-Boot-Users] [PATCH] fix for "make doesn't know how to make target in examples/"
  2006-07-10 12:51     ` Wolfgang Denk
@ 2006-07-10 13:45       ` Wen-chien Jesse Sung
  2006-07-10 16:41         ` Wolfgang Denk
  0 siblings, 1 reply; 7+ messages in thread
From: Wen-chien Jesse Sung @ 2006-07-10 13:45 UTC (permalink / raw)
  To: u-boot

Wolfgang Denk wrote:
>> A test with the attached Makefile:
>> $ touch 1.src
>> $ make
>> make: *** No rule to make target `1.out', needed by `all'.  Stop.
> 
> This Makefile is not equivlent to what we use in the U-Boot code.
> 
>> all:	1.out
> 
> The "examples/Makefile" is different; it corresponds to:
> 
> 	all:	1.out 1
> 
> ...and this works fine for me with make 3.81

Hi,

I modify the testing Makefile (attached).

$ make
make: *** No rule to make target `1.out', needed by `all'.  Stop.

And then I replace "all: 1.out 1" with "all: 1 1.out", it works.

The sequence of the prerequisites affect the result for me, and that's
what the patch does: place $(TARGET) before $(SREC) and $(BIN). Besides,
it removes the duplicated entries,
SREC = foo.srec
BIN = foo.bin foo
now becomes
SREC = foo.srec
only.

I'm just curious about the difference of make's behavior. :)

-- 
Best Regards,
Wen-chien Jesse Sung
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: Makefile
Url: http://lists.denx.de/pipermail/u-boot/attachments/20060710/053781a2/attachment.txt 

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [U-Boot-Users] [PATCH] fix for "make doesn't know how to make target in examples/"
  2006-07-10 13:45       ` Wen-chien Jesse Sung
@ 2006-07-10 16:41         ` Wolfgang Denk
  0 siblings, 0 replies; 7+ messages in thread
From: Wolfgang Denk @ 2006-07-10 16:41 UTC (permalink / raw)
  To: u-boot

In message <44B259F8.8090902@cola.voip.idv.tw> you wrote:
>
> $ make
> make: *** No rule to make target `1.out', needed by `all'.  Stop.
> 
> And then I replace "all: 1.out 1" with "all: 1 1.out", it works.

Aha! This is exactly what I wanted to  know.  This  is  the  specific
failure  mode  tha  has  been  reported  couple times before. See for
example
http://sourceforge.net/mailarchive/message.php?msg_id=15318222

> The sequence of the prerequisites affect the result for me, and that's

Yes, this is the observation all users of GNU make version 3.81 made,
and which I consider a bug in make. Nothing in the 3.80 documentation
gives any hint that the order of the file names in  the  prerequisite
list (to be precise, we're talking about `normal' prerequisites here,
not  about  `order-only"  prerequisites)  might  be important for the
result of the depemdency checking. Actually I am convinced that there
must be no such dependency on the order, as this can lead to circular
dependencies that would be impossible to solve.

So as a summary: your version of make is broken.

Best regards,

Wolfgang Denk

-- 
Software Engineering:  Embedded and Realtime Systems,  Embedded Linux
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
In a survey taken several years ago, all  incoming  freshmen  at  MIT
were  asked  if  they  expected  to graduate in the top half of their
class. Ninety-seven percent responded that they did.

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2006-07-10 16:41 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-07-10  7:45 [U-Boot-Users] [PATCH] fix for "make doesn't know how to make target in examples/" Wen-chien Jesse Sung
2006-07-10  8:14 ` Wolfgang Denk
2006-07-10  9:27   ` Wen-chien Jesse Sung
2006-07-10 10:28     ` Andreas Schweigstill
2006-07-10 12:51     ` Wolfgang Denk
2006-07-10 13:45       ` Wen-chien Jesse Sung
2006-07-10 16:41         ` Wolfgang Denk

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox