У меня есть проект scons, который принудительно включает несколько заголовочных файлов в качестве флага компилятора.
# Forced include files passed directly to the compiler
env.Append(CCFLAGS = ['/FIinclude.h'])
Эти файлы не включены ни в один файл проекта.Мне нужно добавить явную зависимость для них.
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)
Проблема, с которой я сталкиваюсь, состоит в том, что список BUILD_TARGETS
пуст.Кажется, он содержит только то, что передано из COMMAND_LINE_TARGETS
или DEFAULT_TARGETS
.Все цели в нашем проекте построены неявно.Мы не используем env.Default
и т. Д. Есть ли способ получить неявный список целей или мне нужно его вручную построить?Я заметил, что TARGETS
зарезервирован и, похоже, не содержит того, что я хочу.
Я могу добавить env.Depends(target, forced_include_headers)
для всех целей в их соответствующих файлах SConscript, но проект довольно большой.