質問

どのように私は?私のsetup.pyプレ削除作成し、ビルドディレクトリを後削除できます。

役に立ちましたか?

解決

前の削除については、単に設定を呼び出す前にdistutils.dir_util.remove_treeでそれを削除します。

ポスト・削除については、私はあなただけ選択したコマンドの後、削除投稿したいと仮定します。サブクラスそれぞれのコマンド、(ベースの実行を呼び出した後のinvoke remove_treeに)そのrunメソッドをオーバーライドして、セットアップのcmdclass辞書に新しいコマンドを渡します。

他のヒント

これはそれに答えるしていますか? IIRC、あなたが--allのスタッフ外を取り除くためにbuild/libフラグを使用する必要があります:

python setup.py clean --all

をインストールする前に、これは、ビルドディレクトリをクリア
python setup.py clean --all install

しかし、あなたの要件に応じて:これは前にそれを行う、と

の後になります
python setup.py clean --all install clean --all

ここではマットの回答(すべての可能なビルド領域の世話をclean)の機能とマーティンの答えのプログラム的なアプローチを組み合わせた答えがあります:

from distutils.core import setup
from distutils.command.clean import clean
from distutils.command.install import install

class MyInstall(install):

    # Calls the default run command, then deletes the build area
    # (equivalent to "setup clean --all").
    def run(self):
        install.run(self)
        c = clean(self.distribution)
        c.all = True
        c.finalize_options()
        c.run()

if __name__ == '__main__':

    setup(
        name="myname",
        ...
        cmdclass={'install': MyInstall}
    )
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top