diff options
author | Robin Jarry <robin@jarry.cc> | 2023-08-02 21:37:25 +0200 |
---|---|---|
committer | Robin Jarry <robin@jarry.cc> | 2023-08-11 21:13:39 +0200 |
commit | d725defa07b544eef09fe17e24b6fb52255846a4 (patch) | |
tree | 98bb5e4affd86b75cc31941643fee5335153eaf3 /CHANGELOG.md | |
parent | 2788078187c21e1713cbb86368ea4d91b2823bae (diff) | |
download | aerc-d725defa07b544eef09fe17e24b6fb52255846a4.tar.gz |
mk: deprecate BSD make in favor of GNU make
Being portable between BSD and GNU make is a nightmare. It restricts
features to a very minimal surface and in turn requires a lot of code
duplication and manual updating of file lists.
Worse, aerc's makefile relies on the shell assignment operator (!=)
which has been supported by BSD make 2.2 since 1997 but GNU make 4.0
since 2013. Unfortunately, MacOS runs GNU make 3.8 which does not have
that feature. Reducing the feature set even more.
Stop that nonsense and remove BSD make compatibility. The majority of
aerc's users either run a GNU Linux distribution or MacOS. For those who
run any *BSD variant, it is easy for them to install GNU make (gmake) if
they don't have it installed already.
Use GNU make constructs to generate build and install rules dynamically
based on source files discovery.
GNU make will use "GNUmakefile" in priority over "Makefile" if possible.
Leverage this to display an explicit message when other flavours of make
are used. Leave a "Makefile" with a .DEFAULT: target and rename the
actual file to "GNUmakefile".
Signed-off-by: Robin Jarry <robin@jarry.cc>
Acked-by: Moritz Poldrack <moritz@poldrack.dev>
Diffstat (limited to 'CHANGELOG.md')
-rw-r--r-- | CHANGELOG.md | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index 29fba540..e4d63bd4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -43,6 +43,11 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - `:export-mbox` only exports marked messages, if any. Otherwise it exports everything, as usual. +### Deprecated + +- Aerc can no longer be compiled and installed with BSD make. GNU make must be + used instead. + ## [0.15.2](https://git.sr.ht/~rjarry/aerc/refs/0.15.2) - 2023-05-11 ### Fixed |