从setup.py构建一个通用轮

时间:2017-04-12 19:04:16

标签: python python-wheel

如何从setup.py构建万向轮?我不希望每次都传递--universal选项,也不想为此选项创建setup.cfg文件。

我知道https://stackoverflow.com/a/35112241/6947337中的解决方法,但有没有一种干净的方法可以暂时创建setup.cfg文件?

2 个答案:

答案 0 :(得分:1)

setup.py的setup()支持一个options参数,用于将选项传递给任何命令。它是命令名称和命令选项的词典。您可以通过提供strtobool接受的任何真实值(例如

)来指示其构建通用轮子

setup(options={'bdist_wheel':{'universal':'1'})

setup(options={'bdist_wheel':{'universal':True})

另请参阅https://github.com/python/cpython/blob/master/Lib/distutils/dist.py#L247

答案 1 :(得分:0)

您可以对script_args使用setup()选项来覆盖命令行。因此,您可以这样做:

import sys
from setuptools import setup
setup(script_args=sys.argv[1:]+['--universal'])

这不是非常优雅,但可能比创建临时setup.cfg丑陋