cmake add_custom_command
Ich kämpfe mit add_custom_command. Lassen Sie mich das Problem im Detail erklären.
Ich habe diesen Satz von Cxx-Dateien und Hxx-Dateien. Ich führe auf jedem ein Perl-Skript aus, um eine bestimmte Art von Übersetzungsdatei zu generieren. Der Befehl sieht aus wie
perl trans.pl source.cxx -o source_cxx_tro
und ähnlich auch für header.hxx-Dateien.
Also werde ich mit einigen mehreren Befehlen enden (jeweils für eine Datei)
Dann starte ich ein weiteres Perl-Skript für die Ausgabe, die mit diesen Befehlen generiert wurde (source_cxx_tro, header_hxx_tro)
perl combine.pl source_cxx_tro header_hxx_tro -o dir.trx
dir.trx ist die Ausgabedatei.
Ich habe so etwas.
Loop_Over_All_Files()
Add_Custom_Command (OUTPUT ${trofile} COMMAND perl trans.pl ${file} -o ${file_tro})
List (APPEND trofiles ${file_tro})
End_Loop()
Add_Custom_Command (TARGET LibraryTarget POST_BUILD COMMAND perl combine.pl ${trofiles} -o LibraryTarget.trx)
Was ich erwarte, ist, dass beim Erstellen des Postbuild-Ziels zuerst die Trofiles erstellt werden. aber das ist nicht der Fall. Die $ {trofiles} werden nicht erstellt und daher endet der Befehl nach dem Erstellen mit einem Fehler. Kann ich feststellen, dass der Befehl POST_BUILD vom vorherigen benutzerdefinierten Befehl abhängt?
Irgendwelche Vorschläge ?
Danke im Voraus, Surya