1

我在 SCons 中创建了一个特殊的构建器,用于从需求文件在 Python 中创建 virtualenv。如果给定一个标志--virtualenv,我想设置一个名为的环境变量HOSTPYTHON,它会更改 scons 用来构建和测试我的其余代码的 Python。

这意味着我需要 virtualenv 构建器始终在所有其他构建器之前运行。我怎样才能做到这一点?

4

1 回答 1

0

与其将 定义virtualenv为构建器,不如考虑将其设为简单的 Python 函数并使用 SCons Execute()函数运行它。Execute 将始终在任何构建器之前执行。

我不知道如何在构建过程中更改 SCons 使用的 Python 版本,因此您可能必须运行 SCons 两次。第一次,检查--virtualenv命令行参数,Execute()如果存在则调用(或始终调用 Execute() 并在内部检查 cmd 行),然后Exit().

于 2013-07-15T16:07:01.927 回答