Some binaries save the command line used to configure them inside the binary (I don't remember any that do, otherwise I'd check the source). Is there a way to obtain the command line used as a macro in configure.ac?For example, if I compile my code with./configure --foo bar CXX=g++I would like to save --foo bar CXX=g++ to a macro in config.h so it can be output by the binary using a flag./myprogram -VVersion 1.0, compiled using: ./configure --foo bar CXX=g++
autoconf save ./configure command line to config.h
compiling;autoconf
configure is essentially a shell script bootstrapped from M4 macros, so you can use $* to grab all the arguments to ./configure. As per the autoconf manual you should do this right after AC_INIT, e.g.:AC_INIT([My Program], 1.0, ...)config_flags=$*AC_DEFINE_UNQUOTED([CONFIG_FLAGS],[$config_flags],[Flags passed to configure])This will #define CONFIG_FLAGS in config.h.