Scons: циклы зависимости?

Я пытаюсь получить Spons, чтобы скопировать проект Makefile из источника DIR в сборку DIR и запустить некоторые команды для создания libmoo.a, но я работаю в цикле зависимости ошибка. Подробности следуют:

. / Сказок:

env = Environment()
Export('env')

dirs = ['.']

variant_dir = 'build'

for dir in dirs:
        SConscript(dir + '/' + 'SConscript', variant_dir=variant_dir + '/' + dir, duplicate=0)

./ Sconscript:

import os
Import('env')

env.Command(env.Dir('moo2').abspath, env.Dir('#moo').abspath, ["echo copying moo to the build dir", Copy("$TARGET", "$SOURCE")])

env.Command(env.Dir('moo2/Makefile').abspath, env.Dir('moo2').abspath, 'echo would run moo2.configure')

moolib = env.Command(env.Dir('moo2/libmoo.a').abspath, env.Dir('moo2/Makefile').abspath, 'echo would run make')

Default(moolib)

Ошибка работает Scons:

scons: *** Found dependency cycle(s):
  build/moo2/Makefile -> build/moo2 -> build/moo2/Makefile
  build/moo2/libmoo.a -> build/moo2 -> build/moo2/Makefile -> build/moo2/libmoo.a

также пытался без использования .abspath, но это не должно иметь значения, верно?

Я не Смотрите какие-либо циклы:

  • Build / Moo2 / libmoo.a требует сборки / moo2 / makefile
  • build / moo2 / makefile Требуется сборка / moo2
  • build / moo2 требует (источник /) moo

Как дела Видеть цикл? Кажется, думает, что сборка / moo2 / makefile зависит от сборки / moo2 / libmoo.a, что не то, что я намеревался уточнить.

Любые связанные предложения также приветствуются: -)

6
задан Pavel 12 September 2011 в 16:38
поделиться