On Wed, Jan 18, 2017 at 06:20:53PM +0100, Maximilian Wilhelm wrote:
Hi,
Are there any means to build something like that? Like having some defaults in the main config and re-set these values later on (in other config snippets)? If I would generate the defines by a script I would have some time where this part might be missing (like on first install) and my config would fail to load as the defines are referenced but not defined.
Hi Yes, defines are constants. There are some ugly tricks how to do that [*], but i would strongly suggest just to ensure there is always a generated script with defines. Note that if the script referenced by include does not exist, config also fails. That could be avoided by using wildcard in include. [*] e.g. use function variables instead of constants: function get_val() int val; { val = 0; include "val.conf*"; return val; } or use that include may appear inside of expressions: define val = (1 ~ [ include "val.conf*"; 0 ]); (val is either false or true, depending of whether it expands to 1 ~ [0] or 1 ~ [1, 0]; you would have to add comma to the value in included file) -- Elen sila lumenn' omentielvo Ondrej 'Santiago' Zajicek (email: santiago@crfreenet.org) OpenPGP encrypted e-mails preferred (KeyID 0x11DEADC3, wwwkeys.pgp.net) "To err is human -- to blame it on a computer is even more so."