Я пытаюсь определить переменные в Makefile в соответствии с условиями.Поскольку ifeq можно запускать только в правилах, я добавил дополнительное правило (def_rule), к которому я обращаюсь для каждого правила.
Пример:
def_rule:
ifeq ($(TARGET), android)
CC=arm-linux-androideabi-gcc
else
echo "native build"
endf
all: def_rule tp xi_eid_chipset.o
К сожалению, вызов make all возвращает следующее:
ifeq (linux, android)
/ bin / sh: синтаксическая ошибка: слово неожиданно (ожидается ")")
make: *** [def_rule] Ошибка 2
Я не могу понять, почему.Я только что следовал примерам документации GNU Make.
Знаете ли вы, как делать условные определения в файлах Makefile?