Когда я создаю шаблонное правило или какое-то другое пользовательское правило, мне нужно иметь возможность работать с целевым каталогом, который не существует.Это для случая, когда проект создается в каталоге, отличном от самого исходного каталога.
Например:
%.out: %.in
gen_file.sh $< > $@
Проблема в том, что кто-то указывает путь в зависимости:
some_target: some/path/sample.out
Сбой, потому что каталог some/path
не существует.
Существует ли стандартный способ создания этого каталога?
ПРИМЕЧАНИЕ: Сейчас я пытаюсь использовать mkdir, но возникают проблемы с получением имени каталога, а не имени файла.Вероятно, просто уйти от проблемы.Обновление: Получил это, чтобы работать с @mkdir -p $(shell dirname $@)
Это, вероятно, не переносимо.