Rejuvenating Autoconf
Rejuvenating Autoconf
Posted Oct 24, 2020 15:26 UTC (Sat) by khim (subscriber, #9252)In reply to: Rejuvenating Autoconf by smurf
Parent article: Rejuvenating Autoconf
If you would look on the Linux kernel's build system then you would arrive at the correct conclusion: make doesn't scale at all.
Can you build Linux in Windows using native compiler? No.
Can you build kernel and include module developed by someone else, who doesn't even care Linux kernel exist? Nope.
And so on.
Make solves one problem and does it acceptably well: build the code for something where all sources are available and all code lives in a single repo and you control everything about your config.
That's how Unix (and it's descendants) are structured and thus it's not surprising Make alone works for them.
If you try to split your software into independent packages… Make stops working. You need something on top of make or you need something to replace make.
Posted Oct 24, 2020 16:43 UTC (Sat)
by pizza (subscriber, #46)
[Link]
Why not? Linux is cross-compiled all the time; it's not "make" that's a problem here. Unless by "native" you mean a compiler that's not GCC, in which case that's because Linux expliticly requires GCC, not a five-year-old visual studio compiler or whatever.
> Can you build kernel and include module developed by someone else, who doesn't even care Linux kernel exist? Nope.
Why would "someone who doesn't even care Linux exists" develop a Linux kernel module? And how are their sins Make's fault?
> Make solves one problem and does it acceptably well: build the code for something where all sources are available and all code lives in a single repo and you control everything about your config.
So... how exactly are you supposed to build/compile/link/whatever something when you don't have everything you need to create the final output?
> If you try to split your software into independent packages… Make stops working. You need something on top of make or you need something to replace make.
At the end of the day, make is just a dependency resolver. It can only do what it's told. If you rip out a pile of your android app into a separate module, are you seriously trying to tell us that maven/gradle/whatever will just magically do the right thing without altering the build scripts in some way?
FFS.
Posted Oct 25, 2020 9:35 UTC (Sun)
by smurf (subscriber, #17840)
[Link]
In what way, pray tell, is that the "fault" of 'make'??
> Can you build kernel and include module developed by someone else, who doesn't even care Linux kernel exist? Nope.
Can you put a car engine into a train? Nope. That's hardly the fault of the program used to design the engine.
Nice try, but FAIL: next time please post real arguments instead of strawmen.
Posted Oct 25, 2020 11:07 UTC (Sun)
by jnxx (guest, #142729)
[Link]
https://github.com/apenwarr/redo
https://redo.readthedocs.io/en/latest/
Apart from that, it is extremely simple.
It is, however, not a solution that will make Linux/POSIX software automagically
What I think is already a very, very good solution for defining dependencies
Again, Guix is not the solution to provide commercial software vendors
I think it is probably often a solution where otherwise one
Rejuvenating Autoconf
Rejuvenating Autoconf
A possible succesor to make
run on Windows.
between packages, and building them from source, is GNU Guix.
It is really well done.
a kind of app store to distribute their binary closed-source licensed
stuff. However, it works breathtakingly well for defining
environments and developing in Linux environments.
would need to set up a whole bunch of virtual machines.