automake
[Top][All Lists]
Advanced

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

Re: Extending default suffix rules.


From: Remco Bras
Subject: Re: Extending default suffix rules.
Date: Sun, 2 Mar 2008 15:39:57 +0100
User-agent: KMail/1.9.6 (enterprise 0.20070907.709405)

Op Sunday 02 March 2008 15:20:42 schreef Ralf Wildenhues:
> Your rule is dangerous.  If the user interrupts make at the time the
> convertors.sh script has run but the backup hasn't been restored yet,
> the source will be wrong, and the next time you may have duplicate
> function definitions (or whatnot else the sed script then does given
> the wrong input file).
>
Fortunately, the sed script only fires on things matching the patterns
convertors(type); or convertors(type,display_name_of_type);, not on the 
expansion (which is a pair of normal C99 function definitions). If it did, 
the same issues would arise if the gcc couldn't compile the generated file. 

I do like the option of using a different suffix, since it alerts any 
contributor that whatever is in there may, in certain areas, not be standard 
C. Also, it isolates any non-portability in the pre-processing process, 
allowing the C that is generated to be compiled portably. Avoiding any 
possible issues of macros that generate expansions that could be invocations 
of themselves is a side benefit, but welcome.

Thanks for the help, 
Remco.

P.S.: I've added a suffix rule for .cgen.c, invoking convertors.sh. So far, it 
seems to work. I'd like to take this opportunity to thank the automake 
developers for their work in producing a package that, combined with the 
other GNU build tools, seamlessly and effortlessly understands that rule and 
lets me include .cgen files as source files.




reply via email to

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