---
title: BSD `make` != GNU `make`
date: 2024-07-31T07:27:50-07:00
description: Discussing some differences between the BSD and GNU variants of `make(1)`.
categories: Tech
tags: [BSD, GNU, Make, Software]
---

While working on a little home networking project, I found myself having to
write a Makefile in a FreeBSD environment.

Having written only GNU Makefiles over the course of my life, I was surprised to
find that my recipes just ... didn't work.

Some resources that helped me make the jump to writing BSD style Makefiles are:

* The [`make(1)`][man] man page that ships with FreeBSD. It's surprisingly
  thorough, but difficult to search through if you don't know exactly what
  you're looking for.
* This FreeBSD mailing list post quoting [GNU make's summary of
  differences][diffs] from BSD `make`.
* And [PMake: A Tutorial][pmake], hosted on FreeBSD.org.

[man]: https://man.freebsd.org/cgi/man.cgi?make(1)
[diffs]: https://lists.freebsd.org/pipermail/freebsd-questions/2007-April/147533.html
[pmake]: https://docs-archive.freebsd.org/44doc/psd/12.make/paper.pdf
