No announcement yet.

Autodafe 0.2 Released For Freeing Your Project From Autotools

  • Filter
  • Time
  • Show
Clear All
new posts

  • #41
    Autotools was very good at configuring build in quite diverse Unix (posix) environments most of which have now vanished. Pre-2000 you might have had a basic Unix System III derived system with various vendor modifications running on a proprietary CPU etc with possibly quite peculiar toolchains. The included software was normally quite mimimal and the vendor would nickel and dime* you for any add on software (including the toolchain.)
    Consequently otherwise identical systems diverged in the various layers off user built and installed software. This is the world in which autotools excelled.
    Autodafe appears to take advantage of the fact the world has crystallized into Linux and *BSD which are remarkably homogeneous - you can pretty much depend on gcc or a llvm compatible C compiler, the C standard libraries (a post 1990 luxury) , a posix interface (unistd.h) and so on.
    I imagine you can visualize autoafe taking the extremely versatile and dynamic autotools environment and applying static definitions from (linux/bsd/posix), optimizing (dead code elimination, etc) and emitting static Makefiles (nothing other than implicit rules, targets and dependencies, and flag (and other) definitions) which partially address the xz fiasco.
    For distros producing such Makefiles for the source packages could largely eliminated the need for autotools in the users build environment. Quite a few RPM spec files use autotools to configure their packages.

    The Mirriam Webster has -
    Auto-da-fe: the ceremony for pronouncing judgment by the Inquisition which was followed by the execution of sentence by secular authorities.
    broadly : the burning of a heretic
    * multiplied by several orders of magnitude.


    • #42
      The largest project I know still relying on autotools is LibreOffice. Would love to see it building with Meson, CMake, whatever. Such tools are a nice playground (I am playing around with an own hacked version of auto2cmake in my local fork with it). Will give it a try. And yes, it is just for fun. I don't think I'll get it working.


      • #43
        Originally posted by Hazel View Post
        People should just migrate to cmake/mason
        "Just" is good. Try it with LibreOffice.


        • #44
          As far as I know (but haven't used it much), meson sidesteps the complexity of autodetection by requiring a build profile for the target at least for cross-compiling. Which makes a lot of sense, for the same reason you probably don't want stuff like -march=native. Sure, you still need to come up with a profile, but it can be gathered ahead of time and you can make it predictable and static. If you want it an exact fit to the machine, you can probably implement autodetection logic elsewhere.

          Autotools covered the niche where you simply downloaded a package to a random machine, possibly on a completely different OS nobody knew about, and it worked out of the box without much agreement on tooling. In fact, you didn't even need autotools because a generated, POSIX-compliant configure script was distributed. But that's kind of crazy, because you wouldn't be able to review such a script meaningfully.


          • #45
            As time flows by there is a new version 0.3 (released 9 hours ago) - for all people concerned about it.
            Here is the news output:

            I think this is just oldschool when people knew what they were doing - not depending on automatic routines
            which no one has checked or using binary blobs instead of clear scripts or clear source code.
            No simple Internet ready for just cut & paste without knowing anything - no smartphones to wipe things
            away of sight - no AI chat programs to get sentences formed out of garbage ...

            Linux standardized Unix systems a long way ago ... e.g. IBM AIX 5L was released 05/2001 - 23 years back
            in time. At that time simple make was still in use by a lot of programmers ...

            Thinking of the most important languages it is interesting how many people hate C or C++ - and
            Rust has not proven anything right now. But Cobol and Fortrun are still alive and kicking ...
            We will see if Rust will do it as some hope.


            • #46
              By getting rid of autotools, we ease the burden of distro mantainers