12.16. Vermeiden Sie den Gebrauch des `.error`-Konstruktes
Zurück | Kapitel 12. Was man machen respektive vermeiden sollte | Weiter

## 12.16. Vermeiden Sie den Gebrauch des `.error`-Konstruktes

Der korrekte Weg eines `Makefile` anzuzeigen, dass der Port aufgrund eines externen Grundes nicht installiert werden kann (zum Beispiel, weil der Benutzer eine ungültige Kombination von Build-Optionen angegeben hat), ist `IGNORE` auf einen nicht leeren Wert zu setzen. Dieser wird dann formatiert und dem Benutzer von `make install` ausgegeben.

Es ist ein verbreiteter Fehler `.error` für diesem Zweck zu verwenden. Das Problem dabei ist, dass viele automatisierte Werkzeuge, die mit dem Ports-Baum arbeiten, in dieser Situation fehlschlagen. Am Häufigsten tritt das Problem beim Versuch `/usr/ports/INDEX` zu bauen auf (siehe Abschnitt 9.1, „`make describe` ausführen“). Jedoch schlagen auch trivialere Befehle wie `make maintainer` in diesem Fall fehl. Dies ist nicht akzeptabel!

Beispiel 12.1. Wie vermeidet man die Verwendung von `.error`

Nehmen Sie an, dass die Zeile

USE_POINTYHAT=yes

in `make.conf` enthalten ist. Der erste der folgenden zwei `Makefile`-Schnipsel lässt `make index` fehlschlagen, während der zweite dies nicht tut.

.if USE_POINTYHAT .error "POINTYHAT is not supported" .endif
.if USE_POINTYHAT IGNORE=POINTYHAT is not supported .endif

Zurück | Nach oben | Weiter
12.15. Kennzeichnen eines Ports zur Entfernung durch `DEPRECATED` oder `EXPIRATION_DATE` | Zum Anfang | 12.17. Verwendung von `sysctl`

Wenn Sie Fragen zu FreeBSD haben, schicken Sie eine E-Mail an <de-bsd-questions@de.FreeBSD.org>.
Wenn Sie Fragen zu dieser Dokumentation haben, schicken Sie eine E-Mail an <de-bsd-translators@de.FreeBSD.org>.