Как говорит ошибка, вам нужно указать цель для сборки. Makefile, который не содержит ничего, кроме присваивания переменных, ничего не сделает. Может быть, вы хотите добавить:
all:
@echo 'DIRS = $(DIRS)'
чтобы узнать, какое значение вы получили.
Однако я уже вижу, что это не будет работать так, как написано. Синтаксис Makefile не является синтаксисом оболочки, поэтому оператор $(uname -r)
пытается развернуть переменную make с именем uname -r
(точно так же, как $(FOO)
пытается развернуть переменную make с именем FOO
). Эта переменная не установлена, поэтому UNAME
всегда будет установлен на пустую строку.
Вы, вероятно, хотите вместо этого:
UNAME := $(shell uname -r)
для вызова функции make shell
для запуска сценария оболочки и расширения до результатов.