On Wed, 20 Jan 2021, Nate Bargmann wrote:
Thanks for your effort over this past year, Zack. As a user of
Autoconf, your work, as is that of all contributors, is much
appreciated.
One strength of the Autotools that I think stands above the rest is the
fact that a user of a distributed package does not need to install any
of the Autotools packages. On the odd occasion I build a cmake or qmake
based project locally I always need to install those build bootstrap
systems. This, I think, was a stroke of genius from the start on the
part of Autoconf. I think this should always be a primary goal of the
project.
This capability to be able to configure and build the tarball package
without needing more than a compiler is great. However, this
statement is not actually true because a full Unix shell environment
is needed in order to run the product of Autotools.
People who prefer CMake continually point out that Autotools is
written primarily for "Unix". If they want to build packages using
Autotools under Microsoft Windows, then they need to install a Unix
emulation environment such as MSYS or Cygwin. Then the user learns
that the configure and build seems to take 20x longer than under
GNU/Linux.
The desire to support Microsoft Windows as well causes Autotools to be
less desireable.
This (and the desire to get rid of m4 and ugly stuff like sed) is why
I suggested development of a special slimmed-down portable "shell"
which has built in extensions for Autoconf and avoids the need for
thousands of fork/exec cycles. Autoconf macros can then be based on
libraries of script code rather than libraries of m4 code.
Unfortunately, with this approach it may be necessary to install
another package (just like with CMake) before starting.
The implementation of Autoconf is over-burdened with syntax. It
contains more "syntax" than anything else I have ever seen.
Bob
--
Bob Friesenhahn
bfrie...@simple.dallas.tx.us, http://www.simplesystems.org/users/bfriesen/
GraphicsMagick Maintainer, http://www.GraphicsMagick.org/
Public Key, http://www.simplesystems.org/users/bfriesen/public-key.txt