build: detect broken make version on macOS
authorFelix Fietkau <nbd@nbd.name>
Sat, 14 Nov 2020 11:37:39 +0000 (12:37 +0100)
committerFelix Fietkau <nbd@nbd.name>
Sat, 14 Nov 2020 13:48:30 +0000 (14:48 +0100)
Apple ships a broken make version with the Xcode command line tools.
Homebrew installs make as gmake by default in order to not collide with
Apple's version.
Exit with an error if the broken one is used accidentally

Signed-off-by: Felix Fietkau <nbd@nbd.name>
include/toplevel.mk

index c233a4c214c9ba01734ef129b93943784cb528d9..4003b4824182bf7d3f4243e68c3d4da806d4fc76 100644 (file)
@@ -29,6 +29,12 @@ export GNU_HOST_NAME:=$(shell $(TOPDIR)/scripts/config.guess)
 export HOST_OS:=$(shell uname)
 export HOST_ARCH:=$(shell uname -m)
 
+ifeq ($(HOST_OS),Darwin)
+  ifneq ($(filter /Applications/Xcode.app/% /Library/Developer/%,$(MAKE)),)
+    $(error Please use a newer version of GNU make. The version shipped by Apple is not supported)
+  endif
+endif
+
 # prevent perforce from messing with the patch utility
 unexport P4PORT P4USER P4CONFIG P4CLIENT