Tom Tromey <[EMAIL PROTECTED]> writes:
> Akim> * automake.in (read_am_file): TRUE and FALSE are predefined
> Akim> conditionals.
> Akim> (&by_condition): Adjust.
> Akim> (&conditional_string): Recognize (TRUE|FALSE)_(TRUE|FALSE).
> Akim> (&make_condition):
Akim> * automake.in (&rule_define): Extract from...
Akim> (&read_am_file): here.
I'd prefer a name to parallel whatever happens with "variable_define".
If these are just subroutines of read_am_file then one approach is to
say that: "read_am_file_rule_define".
Tom
Akim> * automake.in (&variable_define, &read_am_file): More work for the
Akim> former from the latter. Reorganize the latter.
This depends on 14, which isn't ready yet.
But it is ok once 14 is ready.
Akim> +# FIXME: I don't understand what's so special wrt `:', nor
Akim> +# why we f
Akim> * automake.in (&variable_define): Extract from...
Akim> (&read_am_file): here.
I don't like this. With this patch we have subroutines named
define_variable and variable_define.
How about a longer, more descriptive name, like
`define_variable_from_am_file'? Or you could make a suggest
Akim> Patch is several chunks because it took me several steps to
Akim> reach the right one.
That makes it a lot harder to read. Please don't do that.
Akim> -=> $am_var_defs{'_am_installdirs'} || ''));
Akim> +=> $contents{'_am_installdirs'} || ''));
In general c
Akim> * automake.in (read_am_file): TRUE and FALSE are predefined
Akim> conditionals.
Akim> (&by_condition): Adjust.
Akim> (&conditional_string): Recognize (TRUE|FALSE)_(TRUE|FALSE).
Akim> (&make_condition): Use it.
Akim> * tests/cond9.test: s/FALSE/WRONG/.
I don't really like the use
Akim> * automake.in (&conditional_string): Produce a unique string
Akim> characterizing a condition stack.
Akim> (&conditional_same): Remove, comparing two strings is now enough.
Akim> (&variable_defined): Adjust.
Ok, but you forgot a ChangeLog entry for &read_am_file.
Tom
hi peeps
enclosed is a patch which emits targets for
partially specified conditional targets
e.g.
bin_PROGRAMS = do_me
if HAVE_DO_ME
do_me_SOURCES = do_me.c
else
do_me:
echo ok do me
touch do_me
endif
both targets get generated, with the proper test.
nested stuff works too it
Full scale use is not ready, please don't try to use if/endif by
yourselves.
There are several traps, the easiest being that for the time being it
does not work for variables (fortunately there are only a few). It's
very easy to fix this, the problem being that there are several
possible choices
Index: ChangeLog
from Akim Demaille <[EMAIL PROTECTED]>
* automake.in (IF_PATTERN): Unobfuscate the parens.
(ENDIF_PATTERN): Allow a condition to be specified.
(&file_contents): Use a @cond_stack.
(&transform): At least for an easy transition, also transform
The reason you can observe a difference on the Makefile.in is that I
changed file_contents to dump *exactly* what it saw, instead of
reconstructing it. The drawback is that when we were reconstructing,
we could clean up the output for duplicate spaces around the colon.
These precise spaces are c
Index: ChangeLog
from Akim Demaille <[EMAIL PROTECTED]>
* automake.in (&variable_define): Don't rely on $1.
Initialize the variable.
Set its Automakism only if not defined or if given to the user.
When concatenating values, insert a separator only if the value
Index: ChangeLog
from Akim Demaille <[EMAIL PROTECTED]>
* automake.in (&rule_define): Extract from...
(&read_am_file): here.
Index: automake.in
--- automake.in Thu, 08 Mar 2001 22:57:30 +0100 akim (am/f/39_automake.i 1.129 755)
+++ automake.in Thu, 08 Mar 2001 2
Index: ChangeLog
from Akim Demaille <[EMAIL PROTECTED]>
* automake.in (&variable_define, &read_am_file): More work for the
former from the latter. Reorganize the latter.
Index: automake.in
--- automake.in Thu, 08 Mar 2001 22:47:46 +0100 akim (am/f/39_automake.i 1.128 755)
+++
I am still on my way to if/endif in *.am files. I am unifying the
handling of the different kinds of variable so that I can extract
simple variable handling functions which are currently coded here and
there, and in particular in read_am_file.
Once I have extracted these, it should be simple to
Index: ChangeLog
from Akim Demaille <[EMAIL PROTECTED]>
* automake.in (&variable_define): Extract from...
(&read_am_file): here.
Index: automake.in
--- automake.in Thu, 08 Mar 2001 22:46:13 +0100 akim (am/f/39_automake.i 1.127 755)
+++ automake.in Thu, 08 Mar 20
Index: ChangeLog
from Akim Demaille <[EMAIL PROTECTED]>
* automake.in (read_am_file): TRUE and FALSE are predefined
conditionals.
(&by_condition): Adjust.
(&conditional_string): Recognize (TRUE|FALSE)_(TRUE|FALSE).
(&make_condition): Use it.
* tes
Index: ChangeLog
from Akim Demaille <[EMAIL PROTECTED]>
* automake.in (&conditional_string): Produce a unique string
characterizing a condition stack.
(&conditional_same): Remove, comparing two strings is now enough.
(&variable_defined): Adjust.
Index: automake.i
Alexandre Duret-Lutz <[EMAIL PROTECTED]> writes:
> >>> "Akim" == Akim Demaille <[EMAIL PROTECTED]> writes:
>
> [...]
>
> Akim> I don't understand why Automake would not always use
> Akim> AC_CHECK_TOOL(STRIP, strip) in AM_INIT_AUTOMAKE, just
> Akim> like for any other tool it requires.
>
>
Tom Tromey <[EMAIL PROTECTED]> writes:
> > "Akim" == Akim Demaille <[EMAIL PROTECTED]> writes:
>
> Akim> As a first step, I can apply this patch *but* with this part and
> Akim> the --Werror part in defs.
>
> I don't see a `defs' change here.
Hm, I suppose I'm still using `but' incorrectly
>>> "Akim" == Akim Demaille <[EMAIL PROTECTED]> writes:
[...]
Akim> I don't understand why Automake would not always use
Akim> AC_CHECK_TOOL(STRIP, strip) in AM_INIT_AUTOMAKE, just
Akim> like for any other tool it requires.
This is what the original patch did, however Automake would then
req
21 matches
Mail list logo