2011-09-18 142 views
1

運行SCons到目前爲止,我只看到在單個SConstruct文件所在的文件夾中運行SCons的示例。比方說,我的項目結構是這樣的:文件夾層次結構中的多個位置從

  • 的src/*(CPP | H)
  • 工具/ mytool/*(CPP | H)

我想是什麼。能夠在根目錄以及tools/mytool中運行'scons'。後者只編譯mytool。這對SCons來說可能嗎?

我假定它涉及到創建另一個SConstruct文件。我做了另一個問題:工具/ mytool/SConstruct

我把它僅包含:

SConscript('../../SConstruct') 

,我是想這樣做導入( 'ENV mytoolTarget')並調用默認(mytoolTarget),但只用上述運行在當前目錄而不是根目錄運行它,所以包含路徑被破壞。

這樣做的正確方法是什麼?

+0

我相信你只想要多個SConstruct文件,如果你想建立多個獨立的產品。否則,您希望避免「遞歸製造問題」,並且在單個SConstruct下具有SConscript文件的層次結構,並按照答案中的建議使用-u運行。 –

回答

2

您可以使用-u選項來執行此操作。從任何子目錄中,scons -u將在目錄樹中向上搜索SConstruct文件。