On 2024-06-02 19:02:46 +0000, [email protected] wrote:
> Hey Guix!
>
> Have you heard about autodafe?  I just did today.
>
> So it looks like autodafe (1) converts autotools into
> simple makefiles. Quoting from it's hacker's guide (2):
> "The proximate goal of this project is to eliminate autotools's
>  piles of intermediate products and scripts that create a
> jungle in which exploits like the xz crack of 2024 can hide.
>  The wider goal is to abolish the festering complexity sink
> that autotools recipes have become."  Sounds like a fairly cool
> goal eh?

Goal might be cool, but the implementation seems to leave few things to be
desired.  I tried to follow the steps[0] for one project of mine, but got stuck
on 8.  The makemake just hangs, with no CPU usage and no debug output (even with
-ddddddddd).  I killed it after few minutes.

The ./configure seems to lack --program-... family of options, but hopefully
that will be added later (I hope, they are useful).  The renaming of
PACKAGE_VERSION to just VERSION seem somewhat unnecessary (maybe I just missed
the reason?).

EDIT: Ah, if I run `makemake .' instead of just `makemake', it does work right
away.  Interesting choice.  However now I get:

    $ make clean
    Makefile:29: warning: overriding recipe for target 'DEBUG'
    Makefile:28: warning: ignoring old recipe for target 'DEBUG'
    Makefile:30: warning: overriding recipe for target 'DEBUG'
    Makefile:29: warning: ignoring old recipe for target 'DEBUG'
    Makefile:31: warning: overriding recipe for target 'DEBUG'
    Makefile:30: warning: ignoring old recipe for target 'DEBUG'
    Makefile:32: warning: overriding recipe for target 'DEBUG'
    Makefile:31: warning: ignoring old recipe for target 'DEBUG'
    Makefile:33: warning: overriding recipe for target 'DEBUG'
    Makefile:32: warning: ignoring old recipe for target 'DEBUG'
    Makefile:34: warning: overriding recipe for target 'DEBUG'
    Makefile:33: warning: ignoring old recipe for target 'DEBUG'
    Makefile:35: warning: overriding recipe for target 'DEBUG'
    Makefile:34: warning: ignoring old recipe for target 'DEBUG'
    Makefile:36: warning: overriding recipe for target 'DEBUG'
    Makefile:35: warning: ignoring old recipe for target 'DEBUG'
    Makefile:37: warning: overriding recipe for target 'DEBUG'
    Makefile:36: warning: ignoring old recipe for target 'DEBUG'
    Makefile:38: warning: overriding recipe for target 'DEBUG'
    Makefile:37: warning: ignoring old recipe for target 'DEBUG'
    Makefile:39: warning: overriding recipe for target 'DEBUG'
    Makefile:38: warning: ignoring old recipe for target 'DEBUG'
    Makefile:42: warning: overriding recipe for target 'DEBUG'
    Makefile:39: warning: ignoring old recipe for target 'DEBUG'
    Makefile:43: warning: overriding recipe for target 'DEBUG'
    Makefile:42: warning: ignoring old recipe for target 'DEBUG'
    Makefile:44: warning: overriding recipe for target 'DEBUG'
    Makefile:43: warning: ignoring old recipe for target 'DEBUG'
    Makefile:45: warning: overriding recipe for target 'DEBUG'
    Makefile:44: warning: ignoring old recipe for target 'DEBUG'
    Makefile:54: warning: overriding recipe for target 'DEBUG'
    Makefile:45: warning: ignoring old recipe for target 'DEBUG'
    Makefile:55: warning: overriding recipe for target 'DEBUG'
    Makefile:54: warning: ignoring old recipe for target 'DEBUG'
    Makefile:56: *** multiple target patterns.  Stop.

This is where I gave up.

>
> I know that guix has wanted to create a "guile based build
> system" to replace autotools (autodafe is written in
> python 3).  It sounds like Eric's work is moving to
> supplant and/or fix or repace autotools.  Eric is there
> anything Guix can do for you to help you with your goal?
> We do love our guile, so we will probably encourage you
> to use some scheme code.  :)
>
> Richard do you have any advice for Eric in how to "fix or
> replace" autotools?
>
> Ludo, does guix need to do anything to get ready for some
> software wanting to use autodafe  ?  Is there a way we
> could use autodafe to help us get started on a guile based
> build tool?

Not Ludo, but since it still tries to provide the `./configure && make && make
install' interface, should it not mostly just work?  Did you run into any
specific issues?

>
> Thanks,
>
> Joshua
>
>
> 1) https://www.phoronix.com/news/Autodafe-1.0-Released
>
> 2) https://gitlab.com/esr/autodafe/-/blob/master/hacking.adoc
>

Have a nice day,
Tomas Volf

0: https://gitlab.com/esr/autodafe/-/blob/master/de-autoconfiscation.adoc

--
There are only two hard things in Computer Science:
cache invalidation, naming things and off-by-one errors.

Attachment: signature.asc
Description: PGP signature

Reply via email to