Scons - 如何在Install()之后运行命令

时间:2012-07-25 17:40:12

标签: scons

背景

我们的构建脚本使用Install()InstallAs()将一些.dylib和.so文件安装到“dist”目录。

Install(dist_dir, 'libfoo')
Install(dist_dir, 'libbar')
...

问题

将库文件复制到dist_dir后,我们希望在每个文件上运行自定义函数。该自定义命令如下:

def add_magic(lib_filename, arg1, arg2, arg3)

我们感谢任何帮助以实现我们的目标。

到目前为止我们尝试了什么?

  • 我们刚开始研究通过Builder()
  • 创建自定义构建器
  • 我们还查看了Command()构建器
  • 我们还查看了AddMethod()函数来创建伪构建器

现在我们的赌注是前两种方法,我们正在阅读用户指南并处理简单示例。我们没有接近结束,并欣赏任何提示/提示。

1 个答案:

答案 0 :(得分:3)

您可以尝试这样的事情:

AddPostAction(target, action)
env.AddPostAction(target, action)
  

安排在指定之后执行指定的操作   目标已经建成。指定的操作可以是操作   对象,或任何可以转换为Action对象的东西(参见   下文)。

     

当提供多个目标时,该动作可以被称为多个   时间,一次在每个生成一个或多个目标的行动之后   清单。

示例:

installBarCmd = Install(dist_dir, 'libbar')
AddPostAction(installBarCmd, Action(...))