public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* make-3.79.1 bug breaks linux-2.5.24/drivers/net/hamradio/soundmodem
@ 2002-06-22  6:57 Adam J. Richter
  2002-06-22 13:51 ` Henning Makholm
  2002-06-24 15:33 ` [PATCH] " Thomas Sailer
  0 siblings, 2 replies; 8+ messages in thread
From: Adam J. Richter @ 2002-06-22  6:57 UTC (permalink / raw)
  To: bug-make; +Cc: linux-hams, linux-kernel, sailer

	linux-2.5.24/drivers/net/hamradio/soundmodem/Makefile contains
the following rule:

$(obj)/sm_tbl_%: $(obj)/gentbl
        $<

	obj was set to "." /usr/src/linux/Rules.make, which was included
earlier in the Makefile.

	The problem is that when make executes this rule it executes
"gentbl" rather than "./gentbl".  This causes the command to fail if
you do not have "." in your path.  Make-3.79.1 is apparently being too
clever in expanding file names.  I think this is a make bug.

	Until the make bug is fixed, I have worked around the problem
by replacing the rule with:

$(obj)/sm_tbl_%: $(obj)/gentbl
        PATH=$(obj):$$PATH $<


Adam J. Richter     __     ______________   575 Oroville Road
adam@yggdrasil.com     \ /                  Milpitas, California 95035
+1 408 309-6081         | g g d r a s i l   United States of America
                         "Free Software For The Rest Of Us."

^ permalink raw reply	[flat|nested] 8+ messages in thread
* Re: make-3.79.1 bug breaks linux-2.5.24/drivers/net/hamradio/soundmodem
@ 2002-06-22 21:56 Adam J. Richter
  2002-06-24 12:13 ` Henning Makholm
  0 siblings, 1 reply; 8+ messages in thread
From: Adam J. Richter @ 2002-06-22 21:56 UTC (permalink / raw)
  To: henning; +Cc: bug-make, linux-hams, linux-kernel, sailer

enning Makholm wrote:
>Scripsit "Adam J. Richter" <adam@yggdrasil.com>
>> 	Until the make bug is fixed, I have worked around the problem
>> by replacing the rule with:

>> $(obj)/sm_tbl_%: $(obj)/gentbl
>>         PATH=$(obj):$$PATH $<

>That looks like an excessively complicated workaround. Why not just

>$(obj)/sm_tbl_%: $(obj)/gentbl
>	$(obj)/gentbl

	Thanks.  That is a cleaner workaround.



>I'm not sure this is really a bug either. It is a Good Thing that make
>tries to normalize the names of targets and dependencies internally,
>lest the build may be incomplete or redundant if make does not realize
>that foo.bar and ./foo.bar is the same file. It is quite reasonable
>for $< to unfold to the *canonical* name of the file in question, I
>think.

	That just makes the behavior of make less predictable.
Whatever make does with the file names internally is its own business.
Rewriting the file names passed to commands unnecessarily is
potentially a big problem.  Suppose, for example, that this was a
command that wanted to chop up the directory prefix and that the
bottom level directory was a symbolic link (for example, maybe I have
/usr/netscape/bin as a symlink to /usr/local/bin, but I want the
installation command to record the path name as /usr/netscape/bin).



>If one absolutely wants the command to use the exact form of the
>dependency that's used in the dependency list, it's easy to simply
>reproduce that form, replacing the % by $*

	Sorry, I do not understand what you mean.  If you want to
explain it to me, you may have to write the rule out.

	Thanks for the better workaround and the advice.

Adam J. Richter     __     ______________   575 Oroville Road
adam@yggdrasil.com     \ /                  Milpitas, California 95035
+1 408 309-6081         | g g d r a s i l   United States of America
                         "Free Software For The Rest Of Us."

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

end of thread, other threads:[~2002-06-24 15:34 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-06-22  6:57 make-3.79.1 bug breaks linux-2.5.24/drivers/net/hamradio/soundmodem Adam J. Richter
2002-06-22 13:51 ` Henning Makholm
2002-06-22 20:23   ` Riley Williams
2002-06-22 21:24     ` Kai Germaschewski
2002-06-24 12:00     ` Henning Makholm
2002-06-24 15:33 ` [PATCH] " Thomas Sailer
  -- strict thread matches above, loose matches on Subject: below --
2002-06-22 21:56 Adam J. Richter
2002-06-24 12:13 ` Henning Makholm

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