- ✅ You probably have Make installed by default, your CI does too;
- ✅ When you write a Makefile, you are just defining your dependency graph;
- ✅ It is incremental, so it only create files, compile, run tasks that are necessary;
- ✅ Efficient. It can run jobs in parallel;
- ✅ Easily integrates with any CLI tool;
- ✅ Superfast, it's made in C;
- ✅ A boring tool: stable, reliable, predictable, fast and powerful;
- ✅ Your CI will love it;
- ✅ Full control over your workflow;
- ✅ Used for compiling large C, Go and many other codebase for decades;
- ✅ Easy to prepare and setup a cloned/forked project in a dev machine;
- ✅ Efficient tool for managing development workflows (Tasks, Aliases, Dev Automation);
- ✅ It makes visible how your source code is managed, it is not a "magic black box";
- ✅ Can save you from lots of dependencies that tried to do the same thing;
- ✅ Remote Caching? Yes, possible;
- ✅ Local Caching? Made for it;
- ✅ It is language agnostic, learn once, use everywhere;
- ✅ Monorepo? Tasks and Commands can be run recursively in a workspace;
- ✅ Monorepo? Every package can have its own Makefile;
- ✅ Task or Command Runner? Point directly to the executable you need, no need for a slow proxy like npm;
- ✅ You will laugh of satisfaction when you try it;
Last active
May 16, 2024 18:24
-
-
Save inodaf/04b6c23e3c39c00194fce830ef65f08d to your computer and use it in GitHub Desktop.
N reasons to use GNU Make (in my opinion)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment