Como forçar um erro em um arquivo gnumake
Pergunta
Eu quero detectar uma condição no meu makefile onde a ferramenta é a versão errada e forçar a fazer a falhar com uma mensagem de erro indicando que o item não é a versão correta.
Alguém pode dar um exemplo de fazer isso?
Eu tentei o seguinte mas não é a sintaxe correta:
ifeq "$(shell svnversion --version | sed s/[^0-9\.]*://)" "1.4"
$error("Bad svnversion v1.4, please install v1.6")
endif
Graças.
Outras dicas
Enquanto $ (erro ... obras, às vezes é mais fácil de usar uma regra que não
test_svn_version:
@if [ $$(svn --version --quiet | \
perl -ne '@a=split(/\./); \
print $$a[0]*10000 + $$a[1]*100 + $$a[2]') \
-lt 10600 ]; \
then \
echo >&2 "Svn version $$(svn --version --quiet) too old; upgrade to v1.6";
false; \
fi
Então você faz test_svn_version um pré-requisito de seu alvo nível superior.
As necessidades condicionais alguma atenção também.
ifeq ($(shell svnversion --version | sed s/[^0-9\.]*://), 1.4) $(error Bad svnversion v1.4, please install v1.6) endif
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow