automake-ng
[Top][All Lists]
Advanced

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

Re: [Automake-NG] [PATCH] [ng] suffix: drop Automake-time chaining of su


From: Stefano Lattarini
Subject: Re: [Automake-NG] [PATCH] [ng] suffix: drop Automake-time chaining of suffix rules
Date: Tue, 29 May 2012 18:33:47 +0200

Hi Akim.

On 05/29/2012 03:44 PM, Akim Demaille wrote:
> 
> Le 29 mai 2012 à 13:16, Stefano Lattarini a écrit :
> 
>> +  But Autommake-NG *won't follow those implicit chains of pattern rules*
>> +  anymore; so that the idiom above will have to be re-worked like follows
>> +  to preserve its intent and behaviour:
> 
> I would be happy if there were a means to help
> Automake-ng to know there are transitive rules
> playing in here.
>
You mean something like this?

    %.bar: %.foo
        $(preprocess-foo) $< >$@
    %.cc: %.bar
        $(preprocess-foo) $< >$@

    %.f: %.ratfor
        $(RATFOR) $< >$@

    AM_EXTENSIONS_TRANSFORMS = cc:foo f:ratfor

    prog_SOURCES = main.c something.foo
    CLEANFILES = something.bar something.c

    prog2_SOURCES = main.f fft.ratfor
    # We don't expect the user to have ratfor installed
    EXTRA_DIST = fft.f

I honestly don't see a great advantage over something like this:

    %.bar: %.foo
        $(preprocess-foo) $< >$@
    %.cc: %.bar
        $(preprocess-foo) $< >$@

    %.f: %.ratfor
        $(RATFOR) $< >$@

    prog_SOURCES = main.c
    nodist_prog_SOURCES = something.c
    CLEANFILES = $(nodist_prog_SOURCES) $(nodist_prog_SOURCES:.c=.bar)
    EXTRA_DIST = $(nodist_prog_SOURCES:.c=.foo)

    prog2_SOURCES = main.f fft.f
    EXTRA_DIST = fft.ratfor

> That's one of the nice features
> from Make, so it would be nice that Automake new
> about it.  Even if that means adding something
> specific to tell Automake.
> Also, Automake used to be magical, dwim.  Here,
> reading the doc will be needed.
> 
The use cases I dropped support for were not documented AFAICT.

Regards,
  Stefano



reply via email to

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