Build 如何将文件从项目目录复制到项目目录之外?

Build 如何将文件从项目目录复制到项目目录之外?,build,copy,scons,Build,Copy,Scons,当我要将路径复制到项目目录之外的点时,SconsCopybuilder不会执行任何操作。有没有办法让它真正做到这一点?下面或多或少是测试用例: p4_dir='../../../documents' def prefix_dir(文件,*目录): 如果类型(目录)不是元组: 目录=(目录,) 返回[os.path.realpath]( join(*(目录+(f,)))。替换文件中f的('\\','/')) def p4doc(): 对于zip中的x,y(前缀为_-dir(p4-goodies,d

当我要将路径复制到项目目录之外的点时,Scons
Copy
builder不会执行任何操作。有没有办法让它真正做到这一点?下面或多或少是测试用例:

p4_dir='../../../documents'
def prefix_dir(文件,*目录):
如果类型(目录)不是元组:
目录=(目录,)
返回[os.path.realpath](
join(*(目录+(f,)))。替换文件中f的('\\','/'))
def p4doc():
对于zip中的x,y(前缀为_-dir(p4-goodies,dir('.')。abspath,p4-dir),p4-goodies):
打印“复制到:%s,从:%s%”(x,y)
命令(x,y,[删除(“$TARGET”)、复制(“$TARGET”、“$SOURCE”)])
p4doc()

此外,当它复制时,它不会真正复制它被告知要复制的文件,它会将所有的目标都交给构建器,而构建器会调用此操作。。。您可以用任何字符串替换
Copy
命令中的
$TARGET
$SOURCE
。如果它没有双点,所有生成器的源代码都将被复制。现在这不仅仅是错的。。。这是故意的愚蠢:|

你可以试试这个。它复制/安装的文件应该是SCons目标,如果不是,它们可能不会被复制。

@wvxvw,这一切都源于两个SCons概念:其设计仅适用于SCON结构所在的同一目录或子目录中的目录/文件,并且通常仅适用于SCons目标文件。