Вы можете получить свой AppID на itunesconnect.apple.com «Управление своими приложениями»
Нет. Обработка сигналов в GNU make уже оставляет желать лучшего. Изнутри своего обработчика сигналов он вызывает такие функции, как printf
, которые небезопасно вызывать из обработчика сигналов. Я видел проблемы с этой причиной, например, правила .DELETE_ON_ERROR
не всегда выполняются, если stderr
перенаправлен на stdout
.
Например, на Окно CentOS 7.4:
Создайте следующий Makefile
:
.DELETE_ON_ERROR:
foo:
коснитесь $ @
спать 10
Откройте его в vim
и запустите : make
,
Vim / make printts
Press ENTER or type command to continue
touch foo
sleep 10
^C
shell returned 130
Interrupt: Press ENTER or type command to continue
Программа Make получила сигнал прерывания, но foo
все еще существует.
make выдает коды возврата. Насколько я сейчас помню, он возвращает 0 в случае успеха, 2 в случае неудачи (пожалуйста, проверьте документацию). Следовательно, будет ли вам достаточно обернуть make, например, внутри сценария оболочки?
Насколько я сейчас помню, он возвращает 0 в случае успеха, 2 в случае неудачи (пожалуйста, проверьте документацию). Следовательно, будет ли вам достаточно обернуть make, например, внутри сценария оболочки? Насколько я сейчас помню, он возвращает 0 в случае успеха, 2 в случае неудачи (пожалуйста, проверьте документацию). Следовательно, будет ли вам достаточно обернуть make, например, внутри сценария оболочки?Make не поддерживает его, но с помощью приемов BASH можно добиться чего-то подобного.
default: complete
complete: do_mount
echo "Do something here..."
do_mount:
mkdir -p "$(MOUNTPOINT)"
( while ps -p $$PPID >/dev/null ; do \
sleep 1 ; \
done ; \
unmount "$(MOUNTPOINT)" \
) &
mount "$(MOUNTSOURCE)" "$(MOUNTPOINT)" -o bind
«Размонтировать» запустится после завершения «make». Обычно это удовлетворительное решение, если вы пытаетесь очистить операции, которые могут произойти во время сборки, но не очищаются при выходе "make".