У меня есть этот код, и он работает, но, как вы видите, я сделать заменяющих три раза, я хотел бы установить переменную на значение, но без успехаУстановить переменную внутри предпосылок или Eval функции
$($(PKG)-py-valgrind-tests-status): $($(PKG)-swig-dlib)
$($(PKG)-py-valgrind-tests-status): $(OBJ_OUTPUT_DIR)%.valgrind_passed: %.py
@echo env $(PKG-TEST-HELPER-ENV) valgrind $(VALGRIND-FLAGS) --log-file=$(subst valgrind_passed,valgrind.log,[email protected]) $(PYTHON_BIN) $< -v ; \
env $(PKG-TEST-HELPER-ENV) $(VALGRIND) $(VALGRIND-FLAGS) --log-file=$(subst valgrind_passed,valgrind.log,[email protected]) $(PYTHON_BIN) $< -v \
|| (cat $(subst valgrind_passed,valgrind.log,[email protected]); exit 1)
@touch [email protected]
проблемная линия $ (Подст valgrind_passed, valgrind.log, $ @)
Я пробовал:
$($(PKG)-py-valgrind-tests-status): LOG-FILE = $(subst valgrind_passed,valgrind.log,[email protected])
и
.SECONDEXPANSION:
$($(PKG)-py-valgrind-tests-status): LOG-FILE = $$(subst valgrind_passed,valgrind.log,[email protected])
и (в рецепте)
$(eval LOG-FILE = $$(subst valgrind_passed,valgrind.log,[email protected]))
, но и для всех, если я пишу файл журнала
--log-file=$(LOG-FILE)
приходят в очередной пустой.
У меня нет больше идей о том, как идти вперед, оцените помощь, спасибо!
Я бегу 3.8.1 – DsCpp
Вы имеете в виду 3.81. Нет такой версии, как 3.8.1. Ну, вам нужно будет привести пример с вашей фактической попыткой, прежде чем мы сможем узнать, что не так, поскольку, как вы ее написали (разбившись на две разные части), это кажется правильным. – MadScientist