Distutilsを使うためにインストールする必要がある唯一のモジュールが distutils.coreモジュールです。setup()関数 (セットアップスクリプトから呼び出されます)を提供します。間接的に distutils.dist.Distributionクラスと distutils.cmd.Command クラスを提供します。
arguments) |
setup関数はたくさんの引数をとります。以下のテーブルにまとめます。
argument name | value | type |
---|---|---|
パッケージの名前 | 文字列 | |
パッケージのバージョン番号 | distutils.versionを参照してください | |
1行で書いたパッケージ解説 | 文字列 | |
パッケージの長い解説 | 文字列 | |
パッケージ作者の名前 | 文字列 | |
パッケージ作者のemailアドレス | 文字列 | |
現在のメンテナの名前(パッケージ作者と異なる場合) | 文字列 | |
現在のメンテナのemailアドレス(パッケージ作者と異なる場合) | ||
パッケージのURL(ホームページ) | URL | |
パッケージダウンロード用URL | URL | |
distutilsが操作するPythonパッケージのリスト | 文字列のリスト | |
distutilsが操作するPythonモジュールのリスト | 文字列のリスト | |
ビルドおよびインストールする単体スクリプトファイルのリスト | 文字列のリスト | |
ビルドする拡張モジュール | distutils.core.Extensionインスタンスのリスト | |
パッケージのカテゴリのリスト | 利用可能なカテゴリ一覧は http://cheeseshop.python.org/pypi?:action=list_classifiers にあります。 | |
使用する Distributionクラス | distutils.core.Distributionのサブクラス | |
setup.pyスクリプトの名前 - デフォルトではsys.argv[0] |
文字列 | |
セットアップスクリプトの引数 | 文字列のリスト | |
セットアップスクリプトのデフォルト引数 | 文字列 | |
パッケージのライセンス | ||
説明用メタデータ。 PEP 314を参照してください | ||
コマンド名から Command サブクラスへのマッピング | 辞書 |
script_name[, script_args=None , stop_after='run' ]) |
script_name は execfile()で実行されるファイルです。
sys.argv[0]
は、 呼び出しのためにscript_nameと置換されます。
script_args は文字列のリストです。もし提供されていた場合、
sys.argv[1:]
は、呼び出しのためにscript_args で置換されます。
stop_after は いつ動作を停止するか関数setup() に伝えます。 とりうる値は:
値 | 説明 |
---|---|
Distributionインスタンスを作成し、キーワード引数を setup()に渡したあとに停止する。 | |
設定ファイルをパーズしたあと停止する(そしてそのデータは Distributionインスタンスに保存される)。 | |
コマンドライン (sys.argv[1:] または
script_args) がパーズされたあとに停止する (そしてそのデータは
Distributionインスタンスに保存される)。 | |
全てのコマンドを実行したあとに停止する(関数 setup() を通常の方法で呼び出した場合と同じ)。 デフォルト値。 |
これに加えて、distutils.coreモジュールは他のモジュールにある いくつかのクラスを公開しています。
それぞれの簡単な説明を以下に記します。完全な説明についてはそれぞれの モジュールをごらんください。
Extension クラスは、セットアップスクリプト中で C または C++拡張モジュー ルを表します。コンストラクタで以下のキーワード引数をとります。
argument name | value | type |
---|---|---|
拡張のフルネーム(パッケージを含む) -- ファイル名やパス 名ではなく、Pythonのピリオド区切りの名前 | string | |
ソースファイル名のリスト。配布物ルートディレクトリ
(setupスクリプトのある場所) からの相対パス、プラットフォーム独立のた
め Unix 形式(スラッシュで区切る)で記述します。ソースファイルは C, C++,
SWIG (.i)、特定プラットフォーム用のリソースファイル、その他
build_ext コマンドがソースファイルだと認識するどの形式でもありえます。 |
string | |
C/C++ヘッダファイルを検索するディレクトリのリ スト(プラットフォーム独立のため Unix 形式で記述する) | string | |
定義するマクロのリスト; それぞれのマクロは
2要素のタプルで定義されます。'値'には定義しようとしている文字列、
または内容なしで定義する場合はNone (ソースコード中で
#define FOO と書く、または Unix Cコンパイラのコマンドラインで
-DFOO を指定するのと等価です)を指定します。 |
(string,string)
または (name,None ) のタプル | |
定義を消すマクロのリスト | string | |
リンク時にC/C++ライブラリを検索するディレクトリのリスト | string | |
リンクするライブラリ名のリスト (ファイル名やパスではない) | string | |
実行時(shared extensionでは、拡張が読み 込まれる時)に C/C++ライブラリを探索するディレクトリのリスト | string | |
追加でリンクするファイル('sources'に対応するコー ドが含まれていないファイル、バイナリ形式のリソースファイルなど)のリスト | string | |
'sources'のソースをコンパイルする時に 追加するプラットフォーム特有またはコンパイラ特有の情報 コマンドラインを利用できるプラットホームとコンパイラでは、これは通常 コマンドライン引数のリストですが、他のプラットホームでも、それは何か に使えます。 | string | |
オブジェクトファイルをリンクして拡張(または新しいPythonインタプ リタ)を作る時に 追加するプラットフォーム特有またはコンパイラ特有の情報 'extra_compile_args'に似た実装です。 | string | |
shared extensionからエクスポートされるシンボルのリスト。
全てのプラットフォームでは使われず、
Python拡張(典型的には init + extension_name という1つのシンボル
だけエクスポートする)に一般的に必要なものでもない。 |
string | |
拡張が依存するファイルのリスト | string | |
拡張の言語 (例: 'c' , 'c++' ,
'objc' )。指定しなければソースの拡張子で検出される。 |
string |
Distributionのコンストラクタが取りうる キーワード引数のリストに関しては、setup()関数を見てください。 setup()はDistributionのインスタンスを作ります。
ご意見やご指摘をお寄せになりたい方は、 このドキュメントについて... をご覧ください。