Попытка сделать условную компиляцию на Makefile. Если все три условия (или совпадения) выполнены, то продолжайте компиляцию определенного подкаталога, иначе сделайте что-нибудь еще.
MATCH1 := $(if $(strip $(VAR1)),$(patsubst 6000,,$(VAR1)),NO)
MATCH2 := $(if $(strip $(VAR2)),$(patsubst cp,,$(VAR2)),NO)
MATCH3 := $(if $(strip $(VAR3)),$(patsubst 100g,,$(VAR3)),NO)
ifneq ($(and $(MATCH1)[,$(MATCH2)[,$(MATCH3)]])). <<< error here
do-something
else
do-something-else
endif
Код выдает ошибку в вышеупомянутой строке, говоря
«Makefile: 26: *** неверный синтаксис в условных выражениях.»
Что я делаю не так?