Hacker ApprovedDepartments

GNU Make

Ranked 2 of 17 build systems by recommenders

Ubiquitous, simple build and script runner, widely recommended for small projects and for avoiding extra dependencies; main caveat is it struggles as projects grow large.

Ubiquitous, simple build and script runner, widely recommended for small projects and for avoiding extra dependencies; main caveat is it struggles as projects grow large.

118 people gave an opinion

recommend it
76
criticize it
42
approval share
64%
Each figure is one person. RecommendsCriticizes

Recommended in 12 of 13 months

  1. November 2025: recommended
  2. December 2025: recommended
  3. January 2026: recommended
  4. February 2026: recommended
  5. March 2026: recommended
  6. April 2026: recommended
  7. May 2026: recommended
  8. June 2026: recommended
  9. July 2026: recommended
  10. August 2026: recommended
  11. September 2026: recommended
  12. October 2026: recommended
  13. November 2026: not recommended (month in progress)

Why it doesn’t carry the badge

  • 76 people recommend itNeeds 10 or more, met.
  • 1.8 recommenders for every criticNeeds 2 to 1 or better, not met.
  • Recommended in 12 of 13 monthsNeeds 4 or more, met.

The same three rules apply to every product, and the badge can’t be bought. How the badge works

What people say about it

The reasons people give, with the number of comments that give each one. Open a reason to read what they said.

Why people recommend it

Each mark is one comment

  • Stable, ubiquitous, rarely needs changes

    “Make is ubiquitous, cross-platform, the targets are essentially snippets of shell with some additional features/syntax added on top”

    Comment from 28 Jan 2026 in “Make.ts”

    “I have written once a set of GNU Makefiles, according to its manual, around 1998, and I have never had to change them since then”

    Comment from 10 Mar 2026 in “Practical Guide to Bare Metal C++”

    “once the Makefile is written I'm not going to be constantly adding and removing packages on a frequent basis”

    Comment from 18 Nov 2025 in “Giving C a superpower: custom header file (safe_c.h)”
  • Lighter than CMake, no extra dependency

    “you can use a makefile and distribution-provided dependencies, or vendored dependencies, and you don't need cmake”

    Comment from 25 Nov 2025 in “APT Rust requirement raises questions”

    “It's true for any C/C++ project which bothers to write 10 lines of GNU `make` code.”

    Comment from 15 Nov 2025 in “Go's Sweet 16”

    “it is portable already and does not add yet another host dependency on everybody”

    Comment from 1 Oct 2026 in “Show HN: Ledge.sh – Runnable Markdown Notes”
  • Glue for scripts and tooling

    “IMHO, Make makes a decent glue system at smaller organizations lacking a compiler/build/tooling team.”

    Comment from 17 Dec 2025 in “Introduction to Software Development Tooling (2024)”

    “I just finished writing a nicely recursive set of gMake for cloud a pipeline”

    Comment from 12 Dec 2025 in “My productivity app is a never-ending .txt file (2020)”

    “treat the FPGA tools as command line tools that are invoked by running make”

    Comment from 23 Dec 2025 in “FPGAs Need a New Future”
  • Same build and test commands everywhere

    “I recommend just putting a Makefile in the repo and have that have CI targets”

    Comment from 14 Jan 2026 in “I Hate GitHub Actions with Passion”

    “It's wonderful to have the same build, test, release commands in all projects”

    Comment from 30 Mar 2026 in “ninja: a small build system with a focus on speed”

    “it's sure nice to just be able to type `make` and see a pdf pop out”

    Comment from 18 Aug 2026 in “How I Under-Engineered My Book”

What people warn about

Each mark is one comment

  • Struggles as projects grow large

    “For toy projects good old Make is fine...but at some point a project gets large enough that you need something more powerful”

    Comment from 9 Apr 2026 in “I built a Cargo-like build tool for C/C++”

    “it's great for smaller ones, but for the huge ones, there are much better runners available”

    Comment from 30 Sep 2026 in “Recursive `make` and `-j`”
  • Unfamiliar, unorthodox syntax

    “Make suffers from unfamiliar and somewhat unorthodox syntax, and inconsistent language design.”

    Comment from 8 Jun 2026 in “OCaml Onboarding: Introduction to the Dune build system”

    “Make suffers from unfamiliar and somewhat unorthodox syntax, and inconsistent language design”

    Comment from 8 Jun 2026 in “OCaml Onboarding: Introduction to the Dune build system”
  • Breaks down at complex edge cases

    “make and CMake work perfect right up until they don't and the last 2% cost you 98% of the time.”

    Comment from 12 Dec 2025 in “The Tor Project is switching to Rust”

    “make and CMake work perfect right up until they don't and the last 2% cost you 98% of the time”

    Comment from 12 Dec 2025 in “The Tor Project is switching to Rust”

    “fighting cmake/make/autoconf/configure/automake build spaghetti is not my idea of a good time”

    Comment from 28 Dec 2025 in “Rust Errors Without Dependencies”
  • Timestamp-based freshness checks are outdated

    “We'd have been a lot further along if tools like make had ever adopted hashes for freshness checking rather than timestamps”

    Comment from 19 Nov 2025 in “Reproducible C++ builds by logging Git hashes”

    “Make is timestamp based. That is a thoroughly out-of-date approach only suitable for a single computer.”

    Comment from 26 Feb 2026 in “BuildKit: Docker's Hidden Gem That Can Build Almost Anything”

Other build systems people recommend

The four most recommended other build systems, with the same counts for each, so you can compare like for like. The tick on each bar marks the 2 to 1 line the badge needs.

GNU Make compared with 4 alternatives
ProductRecommendCriticizeApprovalMonthsOwnedBadge
Bazel794166%123 yrs3 owners—
GNU MakeThis page764264%12——
CMake589338%12——
Apache Maven444251%12——
Ninja build system371079%11—Approved
See all 17 build systems, ranked

What people said

40 of the 135 comments that mention it, newest first. Each links to the original comment.

“it is portable already and does not add yet another host dependency on everybody”

RecommendsComment from 1 Oct 2026 in “Show HN: Ledge.sh – Runnable Markdown Notes”

“it's great for smaller ones, but for the huge ones, there are much better runners available”

MixedComment from 30 Sep 2026 in “Recursive `make` and `-j`”

“Graph-based programming environments like make and Spring also free developers from having to worry about what order things have to be done in which can get really cumbersome”

MixedComment from 30 Sep 2026 in “Ask HN: What would an ideal programming language for the use by AI look like?”

“it's sure nice to just be able to type `make` and see a pdf pop out”

RecommendsComment from 18 Aug 2026 in “How I Under-Engineered My Book”

“bash, xargs, wget, make, etc are well-understood, well-maintained tools”

RecommendsComment from 14 Aug 2026 in “Choose Boring Technology (2015)”

“One of those things that is useful both when you are working on the project and when you later return to it”

RecommendsComment from 3 Aug 2026 in “Use Task Runners for Common Coding Tasks”

“Make has long been my go-to script runner and build tool, simple and ubiquitous”

RecommendsComment from 28 Jul 2026 in “Show HN: MKPM – GNU Make Package Manager”

“Make is sufficiently bad that everyone who has used it has considered writing a better way to do it.”

MixedComment from 27 Jun 2026 in “Show HN: Smart model routing directly in Claude, Codex and Cursor”

“Make suffers from unfamiliar and somewhat unorthodox syntax, and inconsistent language design”

CriticizesComment from 8 Jun 2026 in “OCaml Onboarding: Introduction to the Dune build system”

“Make suffers from unfamiliar and somewhat unorthodox syntax, and inconsistent language design.”

MixedComment from 8 Jun 2026 in “OCaml Onboarding: Introduction to the Dune build system”

“Anyone who's struggled over a complex Makefile wishes they had a more sane declarative language!”

MixedComment from 19 Apr 2026 in “The seven programming ur-languages”

“What started as a simple fix for the quirks of traditional build systems like make”

MixedComment from 14 Apr 2026 in “Interview with the Author of Just [video]”

“GNU Make has a debugger. This alone makes it far superior to every other build tool I've ever seen.”

RecommendsComment from 9 Apr 2026 in “I built a Cargo-like build tool for C/C++”

“For toy projects good old Make is fine...but at some point a project gets large enough that you need something more powerful”

MixedComment from 9 Apr 2026 in “I built a Cargo-like build tool for C/C++”

“It's wonderful to have the same build, test, release commands in all projects”

RecommendsComment from 30 Mar 2026 in “ninja: a small build system with a focus on speed”

“Works like a charm (and never messes up incremental builds by not rebuilding on a header-only change).”

RecommendsComment from 11 Mar 2026 in “Practical Guide to Bare Metal C++”

“I have written once a set of GNU Makefiles, according to its manual, around 1998, and I have never had to change them since then”

RecommendsComment from 10 Mar 2026 in “Practical Guide to Bare Metal C++”

“Make is timestamp based. That is a thoroughly out-of-date approach only suitable for a single computer.”

CriticizesComment from 26 Feb 2026 in “BuildKit: Docker's Hidden Gem That Can Build Almost Anything”

“Let me introduce you to a few of my friends: Make, Task, Dagu, Windmill, Rivet, Inngest”

RecommendsComment from 23 Feb 2026 in “Google restricting Google AI Pro/Ultra subscribers for using OpenClaw”

“many of them lack some of the basic features that 'make' has had for half a century”

RecommendsComment from 6 Feb 2026 in “GitHub Actions Is Slowly Killing Your Engineering Team”

“I am pretty sure that GNU Make with Makefile is still lighter than CMake”

RecommendsComment from 1 Feb 2026 in “C++ Minesweeper Implementation”

“Make is ubiquitous, cross-platform, the targets are essentially snippets of shell with some additional features/syntax added on top”

RecommendsComment from 28 Jan 2026 in “Make.ts”

“using Make will allow for a less flaky CI experience, that doesn't break the next time the git hoster changes something”

RecommendsComment from 14 Jan 2026 in “I Hate GitHub Actions with Passion”

“To me the Python code is more verbose and not as simple compared to the Makefile's target so it is less readable as well.”

RecommendsComment from 14 Jan 2026 in “I Hate GitHub Actions with Passion”

“I recommend just putting a Makefile in the repo and have that have CI targets”

RecommendsComment from 14 Jan 2026 in “I Hate GitHub Actions with Passion”

“They work great for simple tasks, but as a developer, I hated having my logic trapped in a GUI”

MixedComment from 12 Jan 2026 in “Show HN: ETLR – An alternative to Zapier/Make/n8n for developers (YAML-based)”

“Robust security against agent actions going haywire can be achieved via command runners like just or make”

MixedComment from 9 Jan 2026 in “MCP Is a Fad”

“It is nice, but I am currently dropping all make/meson/cmake/etc based build systems”

MixedComment from 7 Jan 2026 in “GNU Make, Parallel Processing”

“fighting cmake/make/autoconf/configure/automake build spaghetti is not my idea of a good time”

CriticizesComment from 28 Dec 2025 in “Rust Errors Without Dependencies”

“treat the FPGA tools as command line tools that are invoked by running make”

RecommendsComment from 23 Dec 2025 in “FPGAs Need a New Future”

“IMHO, Make makes a decent glue system at smaller organizations lacking a compiler/build/tooling team.”

RecommendsComment from 17 Dec 2025 in “Introduction to Software Development Tooling (2024)”

“I don't want to .. but people keep using it because it's simpler than other build systems.”

MixedComment from 17 Dec 2025 in “Introduction to Software Development Tooling (2024)”

“Having Make shell out to the real build system is a nice compromise.”

RecommendsComment from 14 Dec 2025 in ““You should never build a CMS””

“make and CMake work perfect right up until they don't and the last 2% cost you 98% of the time.”

CriticizesComment from 12 Dec 2025 in “The Tor Project is switching to Rust”

“make and CMake work perfect right up until they don't and the last 2% cost you 98% of the time”

CriticizesComment from 12 Dec 2025 in “The Tor Project is switching to Rust”

“I just finished writing a nicely recursive set of gMake for cloud a pipeline”

RecommendsComment from 12 Dec 2025 in “My productivity app is a never-ending .txt file (2020)”

“you can use a makefile and distribution-provided dependencies, or vendored dependencies, and you don't need cmake”

RecommendsComment from 25 Nov 2025 in “APT Rust requirement raises questions”

“We'd have been a lot further along if tools like make had ever adopted hashes for freshness checking rather than timestamps”

CriticizesComment from 19 Nov 2025 in “Reproducible C++ builds by logging Git hashes”

“once the Makefile is written I'm not going to be constantly adding and removing packages on a frequent basis”

RecommendsComment from 18 Nov 2025 in “Giving C a superpower: custom header file (safe_c.h)”

“It's true for any C/C++ project which bothers to write 10 lines of GNU `make` code.”

RecommendsComment from 15 Nov 2025 in “Go's Sweet 16”

Counts come from 1,795,640 Hacker News comments, November 2025 to November 2026. How we count. Report a mistake.