Правило не заменяет целевой% на обязательный% - PullRequest
0 голосов
/ 28 апреля 2019

У проекта фактически есть множество различных каталогов, в которых расположены исходные файлы, поэтому я немного упрощаю.

Переменная SOURCES содержит:

src/main.cpp src/test.cpp

целевое правило $ (BUILD_PATH)% .o расширяется до:

linux_build/test.o

, поэтому я пытаюсь создать правило, которое берет цель, смотрит на часть "nodir" и пытается сопоставить ее с соответствующей записью из списка SOURCES.Затем он использует это в качестве необходимого условия:

$(BUILD_PATH)%.o: $(strip $(foreach path, $(SOURCES), $(if $(findstring %.cpp,$(path)), $(path),)))
    $(CL) $(CL_FLAGS) $(INC) $< -o $@

, что, похоже, не работает, это% в "% .cpp".Что я здесь не так делаю?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...