添加安装选项

如前面的示例所示,此脚本的基本用法是:

python setup.py install

但是还有更多的选择,比如安装软件包,可以更改代码并对其进行测试,而无需重新安装。这是使用:

python setup.py develop

如果要执行特定操作(如编译 Sphinx 文档或构建 fortran 代码),可以创建自己的选项,如下所示:

cmdclasses = dict()

class BuildSphinx(Command):

    """Build Sphinx documentation."""

    description = 'Build Sphinx documentation'
    user_options = []

    def initialize_options(self):
        pass

    def finalize_options(self):
        pass

    def run(self):
        import sphinx
        sphinx.build_main(['setup.py', '-b', 'html', './doc', './doc/_build/html'])
        sphinx.build_main(['setup.py', '-b', 'man', './doc', './doc/_build/man'])

cmdclasses['build_sphinx'] = BuildSphinx

setup(
...
cmdclass=cmdclasses,
)

initialize_optionsfinalize_options 将在 run 函数之前和之后执行,正如他们的名字所暗示的那样。

之后,你可以拨打你的选项:

python setup.py build_sphinx