3 ms·
My Makefile is portable. It builds binaries that run on six OSes and two architectures. So I used my Makefile to build GNU Make and a GCC toolchain. Now I can r
by jart 2y ago
My Makefile is portable. It builds binaries that run on six OSes and two architectures. So I used my Makefile to build GNU Make and a GCC toolchain. Now I can run my Makefile on any of those OSes / architectures too, and it'll produce the same deterministic output, bit for bit.
- whartung 2y agoIf part of your build is building your own build tool in order to ensure you have the proper build tool then why not build a different “better” build tool? Part of the premise of Make is its ubiquity, but if you can’t rely on that save as a simple bootstrap (as you seem to be doing) then why not forego it for something else?
- marci 2y agoAre you suggesting this: https://xkcd.com/927/ https://xkcd.com/927/ ?
- chipdart 2y ago> (..) then why not forego it for something else? Because blindly ditching a technology for no reason at all is not a way to fix problems.
- deleted 2y ago[deleted]
- jart 2y agoMy project is literally to make a compiler toolchain. Do you expect me to not use it? The nice thing is that you can build my project on any computer that has modern GNU Make. That and sh are the only things that needs to be installed.
- ReleaseCandidat 2y ago> My Makefile is portable. Oh yes, in the good old tradition of "... as long as it's some Linux on x86". [...] on Linux 2.6+ (or WSL) using GNU Make. Sorry, it's actually AMD64 _and_ ARM64!
- consteval 2y agoPeople use Windows toolchains and nobody cares. Those are significantly less portable. But here I am, building with Visual Studio.