Я могу использовать File('foo.bar').abspath
, чтобы получить местоположение файла, но если у меня установлена опция variable_dir, то возвращаемый путь будет в варианте вести_переменной, а не в его исходном местоположении. Если у меня установлено duplicate=0
, то возвращенный файл фактически не будет существовать.
Очевидно, что SCons знает, где находится исходный файл, поскольку он передается в качестве аргумента, когда файл фактически создается (например, gcc -c -o variant/foo.o orig/foo.c
).
Есть ли какой-то File('foo.bar').origpath
, который я могу использовать?
Если до него дошло, я мог бы использовать os.path.join(Dir('#').abspath, 'orig')
, но для этого необходимо, чтобы SConscript знал, в каком каталоге он находится, что является грязным.