What documentation says AC_INIT should be called with constant arguments? Quoting from https://www.gnu.org/software/autoconf/manual/autoconf-2.67/html_node/Initializing-configure.html
"The arguments of AC_INIT must be static, i.e., there should not be any shell computation, quotes, or newlines, but they can be computed by M4. This is because the package information strings are expanded at M4 time into several contexts, and must give the same text at shell time whether used in single-quoted strings, double-quoted strings, quoted here-documents, or unquoted here-documents. It is permissible to use m4_esyscmd or m4_esyscmd_s for computing a version string that changes with every commit to a version control system (in fact, Autoconf does just that, for all builds of the development tree made between releases)." This says to me that it is perfectly permissible to use m4_esyscmd to get a version string. And having all our version information in one place and one place only seems to be to be a good strategy. Carl On 1/8/20, 12:49 PM, "jonas.hahnf...@gmail.com" <jonas.hahnf...@gmail.com> wrote: On 2020/01/08 19:40:06, c_sorensen wrote: > How about > AC_INIT([LilyPond],m4_esyscmd(echo `VERSION.AC')) > The documentation says it is permissible to use m4_esyscmd as part of the > package information strings in AC_INIT. > Carl Not quite, but a variation seems to work. However I find this so ugly that I'm not willing to pursue this direction. The documentation says AC_INIT should be called with constant arguments, and we're again trying to find ways around it :-( https://codereview.appspot.com/549350043/