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

Re: New make is breaking several packages



On Wed, 28 Dec 2005 20:17:27 +0100, Frank Küster <frank@debian.org> said: 

> Manoj Srivastava <srivasta@debian.org> wrote:

> I don't think that the change was made without thoroughly thinking
> about it.  But in fact it seems as if there are no instructions for
> transitioning Makefiles that rely on the old behavior, be it
> non-POSIX-compliant or not.  And I think such an instruction should
> have been given - not by you, but already by upstream.

        Err, while such changes should be present (and shall be,
 before the new version is released),  it does seem to me that
 Debian developers should (and have) been able figure out how to redo
 the makefiles.


> Err, it seems to have broken other packages.  Even telling people
> "most cases where line continuation is used will work just fine with
> both versions" would be a valuable piece of information; right now
> we have only some complaints, a proposed workaround that brakes with
> older make versions, and a new proposal which probably works with
> both, but has not been tested.

        How about just trying it out? 
--------------------------------------------------
all:
  @echo 'foo'\
 'bar'
  @echo 'baz'\
'boo'
  @echo 'baz'\
    'boo'
--------------------------------------------------

        On sarge's make. I always get two words; on current make, I get
 two words, one word, two words.
-
> Well, I tested it, and it doesn't work:

frank@sarge$ cat Makefile
all:
	@echo 'foo'\
'bar'
frank@sarge$ make
foo bar
frank@sarge$ cp Makefile /sid/home/frank/
frank@sarge$ chrootsid 
frank@sid$ make
foobar
frank@sid$ 

        Err, what are you trying to do? You have demonstrated here
 that with the new make, you can concatenate words, the old make did
 not. If you want to have echo echo two words in both, try this:

all:
	@echo 'foo'\
 'bar'
frank@sarge$ make
foo bar

        See? just like old times.

> So it seems that it is not possible to make shell commands with line
> continuation work with both make versions, and one has to resort to
> the make variable solution.

        Trivial to make a makefile that echoes two words in the old
 and the new version -- unless I am missing what you are trying to do? 

        manoj
-- 
Children are unpredictable.  You never know what inconsistency they're
going to catch you in next. -- Franklin P. Jones
Manoj Srivastava   <srivasta@debian.org>  <http://www.debian.org/%7Esrivasta/>
1024D/BF24424C print 4966 F272 D093 B493 410B  924B 21BA DABB BF24 424C



Reply to: