Моя сборка имеет вид:
SConstruct
subdir/SConscript
subdir/module/__init__.py
SConstruct
вызывает subdir/SConscript
в качестве дочерней компании:
# SConstruct
SConscript('subdir/SConscript')
subdir/SConscript
импорт module
:
# subdir/SConscript
from module import foo
do SConsy stuff with foo()...
Это прекрасно работает, пока я не использую variant_dir
с subdir/SConscript
:
# SConstruct
SConscript('subdir/SConscript', variant_dir='subdir/build', duplicate=0)
Проблема в том, что import
завершается ошибкой, потому что module
больше не находится на пути, который был изменен variant_dir
.
Существует ли стандартный способ решения этой проблемы в SCons или Python? Я знаю о специальном каталоге site_scons
, но, похоже, этот каталог должен существовать на верхнем уровне с корнем SConstruct
, и я хотел бы сохранить subdir
-специфичные файлы в subdir
.