Ich schreibe ein Makefile, das an einer Stelle einen String-Abgleich durchführt. Der Code lautet wie folgt:
if test ...; \
then \
shell scripts... \
fi
ifeq ($(DIST_TYPE),nightly)
shell scripts ...
endif
Hier ist das erste if
Shell-Skript, das zweite ifeq
ist die Bedingung von GNU Make. Der folgende Fehler wird jedoch generiert:
ifeq (jede Nacht, jede Nacht)
/ bin / sh: -c: Zeile 0: Syntaxfehler in der Nähe eines unerwarteten Tokens `nightly, nightly '
/ bin / sh: -c: Zeile 0: `ifeq (jede Nacht, jede Nacht) '
Was passiert hier? Es scheint, dass Make versucht, die Shell aufzurufen.
Vielen Dank.
sh
(wie die erste) mit bedingten Anweisungen inmake
(wie die zweite).