Я хочу, чтобы правила цели выполнялись, но все зависимые объекты должны считать эту цель удовлетворенной.GNU make: выполнить задачу, но принять зависимость от файла
Как я могу это достичь?
Пример:
$(NETWORK_SHARE)/foo.log:
@echo Warning: server offline, still continue ...
@exit 0
foo.csv: $(NETWORK_SHARE)/foo.log
@echo Long export from a (different) server
@echo sleep 20
@echo foo > [email protected]
Если $ (NETWORK_SHARE) /foo.log существует: foo.csv должна быть восстановлена, если $ (NETWORK_SHARE) /foo.log более новый, чем foo.csv; в противном случае ничего не должно произойти (по умолчанию)
Если $ (NETWORK_SHARE) /foo.log не существует (например, сервер форума, отказ, ...) только сообщение, указывающее на проблемы должны быть напечатаны, но foo.csv должен строиться только в том случае, если foo.csv не существует.
Я играл с .PHONY и возвращаются различные возвращаемые значения, но для случая 2, дорогой «экспорт» происходит, как только я исполняю что-то на $ (NETWORK_SHARE) /foo.log ...
С уважением DIVB
Я не знаю чистого способа сделать это, но вы можете клудж его с условными жгутами команды ... – Beta
Привета, Спасибо, это то, что Однако у меня все еще есть проблема. Я думаю, что нашел хороший способ повторного формулирования: _I хочу вывести сообщение (выполнить команды) на цель, которая соответствует дате_. – divB