Erzwinge das Beenden eines Makefile-Ziels, ohne einen Fehler zu verursachen

8

Ich arbeite mit einem Makefile, das von einem externen Tool (Netbeans) erzeugt wird, wo ich die Logik des Hauptziels nicht ändern kann, aber ich bin in der Lage, Logik in ein Ziel zu "injizieren", das vor dem eigentlichen Build ausgeführt wird. Build-Pre, um in Netbeans-generated Makefile spezifisch zu sein)

Ich möchte, dass das Ziel die make-Ausführung bedingt beendet, aber ohne einen Fehler zu erzeugen. Wenn ich das tue

%Vor%

Innerhalb der "pre" -Regel passiert nichts (ich meine, die Regel wird beendet, aber make macht weiter). Wenn ich

hinzufüge %Vor%

make wird beendet, aber es wird ein Fehlerstatus zurückgegeben.

Gibt es einen Weg, um zu zwingen, sauber zu gehen? Ich suchte nach make-Funktionen, fand aber nur error / warn / info, aber nichts wie exit.

Vielen Dank im Voraus!

EDIT: Basierend auf Kommentaren scheint es nicht möglich. Das Mitleid.

Zur Vollständigkeit ein konkreteres Beispiel für das, was ich erreichen möchte:

%Vor%

Mit Makefile wie oben, würde ich gerne in der Lage sein, pre auszuführen und die Ausführung von 'default' bedingt zu verhindern, aber immer noch 0 an die Shell zurückgeben.

    
Marcin Zukowski 04.11.2013, 17:34
quelle

2 Antworten

10

Sie können festlegen, dass alle Ziele nichts tun, wenn eine Variable nicht gesetzt ist:

%Vor%     
Ken 15.05.2014 16:53
quelle
0

Ich erweitere nur ein wenig die ausgezeichnete Antwort von @ Ken. Sie können dies auch tun:

%Vor%     
Matt 14.09.2017 04:15
quelle

Tags und Links