Ich habe ein Projekt, das zur CMake-Zeit ein Shell-Skript generiert (mit file(WRITE
. Wie kann ich CMake dazu bringen, dieses Shell-Skript als ausführbares Element des Projekts zu behandeln (z.B. bereinigen, "neu erstellen" und auch installieren)?
Antwort
Zu viele Anzeigen?Zunächst einmal schauen Sie sich die Funktion configure_file() an, sie kann die gesamte Arbeit für Sie erledigen. Wenn Sie es nicht verwenden können, sollten Sie add_custom_command() verwenden, das Ihre Datei erzeugt, und dann add_custom_target() verwenden, das von ${CMAKE_BINARY_DIR}/your_produced_file
abhängig sein sollte.
In der Verwendung von add_custom_command()
können Sie etwas Ähnliches verwenden:
COMMAND ${CMAKE_PROGRAM} -P ${CMAKE_SCRIPT_THAT_PRODUCES_YOUR_FILE}