5 Stimmen

Implizite Liste aller Build Targets in SCONS?

Ich habe ein scons-Projekt, das mehrere Header-Dateien als Compiler-Flag zwangsweise einschließt.

# Forced include files passed directly to the compiler
env.Append(CCFLAGS = ['/FIinclude.h'])

Diese Dateien sind nicht in den Dateien des Projekts enthalten. Ich muss eine explizite Abhängigkeit für sie hinzufügen.

forced_include_headers = ['include.h']

# Trying to add an explicit dependency for each build target
for object in BUILD_TARGETS:
  env.Depends(object, forced_include_headers)

Das Problem, auf das ich stoße, ist, dass BUILD_TARGETS Liste ist leer. Sie scheint nur Dinge zu enthalten, die von COMMAND_LINE_TARGETS o DEFAULT_TARGETS . Alle Ziele in unserem Projekt werden implizit erstellt. Wir machen keinen Gebrauch von env.Default , usw. Gibt es eine Möglichkeit, die implizite Zielliste zu erhalten, oder muss ich sie manuell erstellen? Ich habe festgestellt, dass TARGETS ist reserviert und scheint auch nicht das zu enthalten, was ich will.

Ich kann eine env.Depends(target, forced_include_headers) für alle Ziele in ihren jeweiligen SConscript-Dateien, aber das Projekt ist recht groß.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X