Version 2 (modified by owa, 13 years ago) (diff) |
---|
Python 関連のパッケージングポリシーを定めます。
(ただし後付けなので現状を無理に変えることを提案してるわけではありません -- owa)
Python 本体は以下のディレクトリに配置されます。
%{_prefix}/lib/python2.6 # arch に依存しないもの
%{_prefix}/%{_lib}/python2.6 # arch に依存するもの
arch が i686 や ppc の場合は同じ場所 "/usr/lib" になりますが、x86_64 の場合は %{_lib} が lib64 と定義されているので違う場所 "/usr/lib64" に配置されます。 また組込モジュルーはマクロ定義されている %python_sitelib に配置されますが、 arch に依存するモジュールは %python_sitearch に配置されます。 arch に依存するものは %_lib の値によって配置される場所が異なることに注意してください。
原則として RPM パッケージでいれる Python ライブラリは %python_sitelib に配置し、
arch に依存するライブラリは %python_sitearch に配置するものとします。
現在は自動で振り分けてくれるものが多いと思いますが、
古いパッケージではそうで無いものもあると思います。
迷った時は上の指針で配置してください。
原則としてその RPM パッケージ独自のディレクトリに配置すること。
他の Python ライブラリを使用する場合は Python ライブラリへのパス指定などを使用
することが望ましい。
(他から利用されないライブラリを site-packages の下に入れないで欲しい -- owa)
%__python /usr/bin/python
%pyver %(%{__python} -c "import sys; sys.stdout.write(sys.version[:3])")
%python_sitelib %(%{__python} -c 'from distutils.sysconfig import sys; sys.stdout.write(get_python_lib(0))')
%python_sitearch %(%{__python} -c 'from distutils.sysconfig import sys; sys.stdout.write(get_python_lib(1))')