LINUX.ORG.RU

переменные make

 


0

2

Как избавиться от лишней переменной PROG_MOD в 5-й строке?

1) PROG=./prog/main.cpp 
2) MOD=./module/module1.cpp
3) TEST=./test/test_main.cpp
4) 
5) PROG_MOD=$(PROG) $(MOD) 
6) prog1: $(PROG_MOD:.cpp=.o) $(MOD:.cpp:.h)
	$(CXX) -o $@ $^ 

Для GNU Make можно так:

prog1: $(patsubst %.cpp,%.o,$(PROG) $(MOD)) $(MOD:.cpp:.h)
Иначе очевидно, что можно замену для каждой переменной отдельно написать:
prog1: $(PROG:.cpp=.o) $(MOD:.cpp=.o) $(MOD:.cpp:.h)

xaizek ★★★★★
()
Ответ на: комментарий от xaizek

спасибо!

P.S. я немного ошибся, хотел в команде сборке объектные файлы подцепить $<.

hight-technology
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.