Martin Uecker <uec...@tugraz.at> writes: > Do we really still need complex build systems such as autoconf? Are > there still so many different configurations with subtle differences > that every single feature needs to be tested individually by running > code at build time?
We have taken the alternative approach in build2. Specifically, instead of dynamic compilation/linking tests (which can fail for all kinds of reasons besides the absent feature), we use static expected values based on the platform/compiler macro checks. For example, if we are compiling with glibc and the version is 2.38 or later, then we know the strl*() function family is available: https://github.com/build2/libbuild2-autoconf We currently have ~200 checks and have built quite a bit of software using this approach (including Qt classic libraries and all their dependencies) on the mainstream platforms (Linux, Windows, Mac OS, FreeBSD).