It's possible that new projects will want to use this module, which brings the "what flavor to use" questions. Autoconf seems the most natural but the problem with Autoconf's #undef is that it prevents having genuine #undef directives, for example, if we need to tweak some auto-defined macros. We could use either #cmakedefine or #mesondefine but them having a different build system hardcoded in their makes the idea feel inelegant.
So perhaps we should provide our own flavor and a special directive (#autodefine)? We could also switch to the strict substitution mode in this flavor.
It's possible that new projects will want to use this module, which brings the "what flavor to use" questions. Autoconf seems the most natural but the problem with Autoconf's
#undefis that it prevents having genuine#undefdirectives, for example, if we need to tweak some auto-defined macros. We could use either#cmakedefineor#mesondefinebut them having a different build system hardcoded in their makes the idea feel inelegant.So perhaps we should provide our own flavor and a special directive (
#autodefine)? We could also switch to thestrictsubstitution mode in this flavor.