2016-11-27 20 views
1

setup.pyを実行するとき、私はビルドしているビルドの種類に応じて、通常、コールにさまざまなコマンドラインオプションを追加します。例えばターゲットに基づいてsetup.pyにコマンドラインオプションを自動的に追加する

私は、Windowsインストーラ(bdist_wininst)を構築する場合--user-access-control forceを追加します。 別の例では、ソース配布を構築する際に、インストール後スクリプトへの呼び出しを省略します。

私の現在の解決策は、setup.pyへの望ましい呼び出しで小さな.batと.shスクリプトを作成することですが、何とか間違っていると感じます。 私が欲しいことをするための良い方法はありますか、私の本能は私に失敗ですか?

編集:正しい方法が見つかりました。下の私の答えを見てください。

答えて

0

使用setup.cfg ビルドターゲット/種類の配布(sdistbdist_wheelbdist_wininstなど)のセクションを定義できる標準の設定ファイルです。このファイルには、setup.pyに与えるコマンドラインオプションが含まれていますそれを構築する。

1

一つの方法はsetup.pyでOSを検出することである:

それを行うには「正しい」方法は、前方にかなりまっすぐだったドキュメントで見たときに、私はちょうどそれを逃し判明
import os 
print(os.name) 

if os.name == 'posix': 
    ... 
+1

これはどのように私の問題を解決するのですか?私はOSに基づいて別のアクションをしたくないのですが、どのような種類のディストリビューションをビルドするかによってsetup.pyに異なるオプションを与えます。 – snejjj

関連する問題