使用 `python setup.py develop` 安装更多文件

Installing more files with `python setup.py develop`

我正在对 Python 2 进行 Swift 扩展。由于 distutils/setuptools 仅支持 C/C++ 扩展,因此我需要修改构建命令使它们构建 Swift 代码。

我对 python setup.py buildpython setup.py install 的运行似乎是成功的:包及其内容位于正确的位置并且本机扩展在 import 上正确加载。

但是,我的团队更喜欢使用 pip install -e .,最终会 python setup.py develop,以稍微加快开发速度;就目前而言,setup.py 不知道将 build 编译的本机库复制到源目录。

在我当前的设置中:

我需要更改什么才能使 develop 正常工作?

我发现它正在读取 setuptools.command.develop 的源代码:develop 使用 inplace 参数运行 build_ext 命令,它告诉 build_ext 保存构建输出到源代码树。可以使用 build_ext 子类中的 self.inplace 来测试此参数。从那里开始,只需更改复制文件的位置即可。

在Python 3中以不同的方式处理,我还没有探索过。