6.5.4. pyproject RPM マクロを使用した Python プロジェクトのパッケージ化


pyproject.TOML または setup.py ファイルを使用する Python プロジェクトを、CodeReady Linux Builder (CRB) リポジトリーから pyproject RPM マクロを使用して RPM パッケージにパッケージ化します。

6.5.4.1. Python パッケージング用の pyproject RPM マクロ

pyproject RPM マクロを使用して、Python プロジェクトを RPM パッケージにパッケージ化します。これらのマクロは、setup.pypyproject.TOML、またはその両方でメタデータを定義し、標準化されたプロトコルを通じて標準ベースのビルドバックエンドを呼び出すプロジェクトで機能します。

アップストリーム Python プロジェクトの多くは、setup.py スクリプトに依存しなくなりました。代わりに、プロジェクトのメタデータを pyproject.TOML に保存し、setuptoolsflit-corehatchlingpoetry-core などのビルドバックエンドを使用します。pyproject RPM マクロは、setup.py を直接呼び出すのではなく、標準化されたプロトコルを通じて準拠したビルドバックエンドを呼び出します。

pyproject RPM マクロは、可能な限りアップストリームメタデータを再利用します。たとえば、spec ファイルに同じ依存関係を手動でリストするのではなく、pyproject.TOML 内の build-system 要件から BuildRequires を生成できます。

pyproject-rpm-macros パッケージは、CodeReady Linux Builder (CRB) リポジトリーで入手できます。%pyproject_buildrequires マクロは、パッケージのビルド中にそのパッケージに生成された BuildRequires を追加します。CRB コンテンツは Red Hat ではサポートされていません。マクロは、新しい Python パッケージング標準に準拠するように必要に応じて更新されます。

アップストリームプロジェクトが setup.pypyproject.TOML、またはその両方でメタデータを定義しているかどうかに関係なく、pyproject RPM マクロを使用して Python プロジェクトをパッケージ化します。

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

Red Hat ドキュメントについて

Legal Notice

Theme

© 2026 Red Hat
トップに戻る