Я пытаюсь создать пользовательскую функцию в Makefile, чтобы определить текущую платформу и вернуть соответствующий файл соответственно.Вот моя попытка.
UNAME := $(shell uname -s)
define platform
ifeq ($(UNAME),Linux)
$1
else ifneq ($(findstring MINGW32_NT, $(UNAME)),)
$2
else ifeq ($(UNAME),Darwin)
$3
endif
endef
all:
@echo $(call platform,linux,windows,mac)
Не удается выполнить следующую ошибку.
/bin/sh: Syntax error: "(" unexpected
[Finished]make: *** [all] Error 2
Что я делаю не так?