wie man xcode veranlasst, ein Skript vor Abhängigkeiten auszuführen?
Szenario:
ich habeTargetA
, das ist eine iOS-Anwendung. Diese App verwendet eine statische Bibliothek, die von erstellt wurdeTargetB
. Offensichtlich,TargetB
ist eine Abhängigkeit vonTargetA
, undTargetB
wird immer vorher gebautTargetA
. So weit, ist es gut.
Jetzt möchte ich ein Skript ausführenTargetA
gebaut ist, aberschon vorherTargetB
.
TargetA
. Es funktioniert zur Hälfte: Xcode läuftsetup
undTargetB
zur gleichen Zeit, soTargetB
kann zu früh gebaut werden. Nicht gut genug.Das gleiche, aber in dem Schema angeben, nicht parallel zu bauen. Dies funktioniert, ist aber eine Verschwendung, da es andere Ziele gibt, diekönnen parallel gebaut werden.Führen Sie das Skript in a auspre-action
Schritt innerhalb des Schemas. Dies funktioniert, scheint aber falsch zu sein (warum? Die Ausgabe dieses Schritts wird nicht in das Build-Protokoll geschrieben; ich soll sie also möglicherweise nicht so verwenden?).Was ich nicht machen möchte:Fügen Sie das Skript als Abhängigkeit von hinzuTargetB
. Das würde funktionieren; jedoch,TargetB
stammt tatsächlich aus einem anderen Unterprojekt, und im Kontext der Erstellung sind die Parameter für das Skript noch nicht bekannt (hauptsächlich das Stammverzeichnis vonTargetA
Projekt).
Vermisse ich etwas oder muss ich mich mit # 2 oder # 3 zufrieden geben?
BEARBEITEN: in Option 2 oben, Ändern der Reihenfolge der Abhängigkeiten (in meinem Fall zwischenSetup
undTargetB
hilft nicht - Xcode wählt die Reihenfolge trotzdem willkürlich aus.