doc: Change yat2m to allow arbitrary condition names.
authorWerner Koch <wk@gnupg.org>
Mon, 16 Dec 2013 15:54:53 +0000 (16:54 +0100)
committerWerner Koch <wk@gnupg.org>
Mon, 16 Dec 2013 15:54:53 +0000 (16:54 +0100)
commit9a912f8c4f366c53f1cdb94513b67b937e87178b
tree5a908dcdd332a28b35d4207d31f1c34cfccfab4a
parent0d3bd23d7f730b9bbc81fc8da8d99f4853c36020
doc: Change yat2m to allow arbitrary condition names.

* doc/yat2m.c (MAX_CONDITION_NESTING): New.
(gpgone_defined): Remove.
(condition_s, condition_stack, condition_stack_idx): New.
(cond_is_active, cond_in_verbatim): New.
(add_predefined_macro, set_macro, macro_set_p): New.
(evaluate_conditions, push_condition, pop_condition): New.
(parse_file): Rewrite to use the condition stack.
(top_parse_file): Set prefined macros.
(main): Change -D to define arbitrary macros.
--

This change allows the use of other conditionals than "gpgone" and
thus make "gpgtwoone" et al. actually work.  It does now also track
conditionals over included files.

Signed-off-by: Werner Koch <wk@gnupg.org>
From GnuPG master commit a15c35f37ed2b58805adc213029998aa3e52f038
doc/yat2m.c