当使用distutils
(或distribute
,或其他(时,是否可以指示特定文件在构建过程中(例如python setup.py sdist
(将变为setup.py?
我希望能够执行python setup-specificbuild.py sdist
,并在dist/
中构建的包tarball中将setup-specificbuild.py
重命名为setup.py
(在setup-specificbuild.py
中或作为命令行参数(。
SO上有一个关于类似问题的答案(创建不同的分发类型(。自定义命令行解析似乎是一个不错的解决方法,然后可以将最终的特定于分发的逻辑推送到单独的模块中,只有在找到时才导入,只有在需要时才包含。
setup.py
最终只是Python程序的一个入口点,因此,如果您想实现分支构建行为,只需让您的标准setup.py
解析命令行参数,并将实际构建过程调度到您想要的任何模块即可。这比尝试通过一些预构建脚本步骤动态地重新命名文件要好得多。