RPM 4.15 リリース

約XNUMX年の開発期間を経て 起こった パッケージマネージャーのリリース RPM 4.15.0。 RPM4 プロジェクトは Red Hat によって開発され、RHEL (派生プロジェクト CentOS、Scientific Linux、AsiaLinux、Red Flag Linux、Oracle Linux を含む)、Fedora、SUSE、openSUSE、ALT Linux、OpenMandriva、Mageia、PCLinuxOS などのディストリビューションで使用されています。ティゼンやその他多数。 以前は独立した開発チーム 発展した プロジェクト RPM5、RPM4 とは直接関係がなく、現在は放棄されています (2010 年以降更新されていません)。

最も注目すべき 改善 RPM 4.15:

  • chroot 環境での非特権アセンブリの実験的サポートを追加しました。
  • 実装済み マルチコア システムでのパッケージ アセンブリの並列化のサポート。 スレッド数の制限は、マクロ「%_smp_build_ncpus」と $RPM_BUILD_NCPUS 変数によって設定されます。 CPU の数を決定するために、マクロ「%getncpus」が提案されています。
  • Spec ファイルは、条件演算子「%elif」 (else if) と、ディストリビューションおよびアーキテクチャへのバインドのためのオプション「%elifos」および「%elifarch」をサポートするようになりました。
  • 追加した 新しいセクション「%patchlist」および「%sourcelist」。エントリ番号を指定せずに名前をリストするだけでパッチとソースを追加するために使用できます(たとえば、
    %patchlist セクションの「Patch0: Popt-1.16-pkgconfig.patch」には「popt-1.16-pkgconfig.patch」を指定できます。

  • rpmbuild 内 追加した src.rpm に含める依存関係の動的アセンブリのサポート。 仕様ファイルでは、「%generate_buildrquires」セクションのサポートが追加されており、その内容は依存関係のリスト (BuildRequires) として処理され、検証が必要になります (依存関係が欠落している場合は、エラーが表示されます)。
  • 実装済み 「^」演算子は、「~」演算子の逆のことを行い、指定された日付よりも古いバージョンをチェックするために使用されます。 例えば、
    「1.1^20160101」は、バージョン 1.1 と 1 年 2016 月 XNUMX 日以降に追加されたパッチを対象とします。

  • 「%autosetup SCM」モードを有効にする「--scm」オプションを追加しました。
  • 任意の式を評価するための組み込みマクロ「%{expr:...}」を追加しました (数日前には、 提案された 形式 "%[ expr ]");
  • ヘッダー内の文字列データのデフォルトのエンコードが UTF-8 であることを確認します。
  • コンパイラとリンカーのフラグを備えたグローバル マクロ %build_cflags、%build_cxxflags、%build_fflags、および %build_ldflags を追加しました。
  • コメントを挿入するためのマクロ「%dnl」(次の行に破棄)を追加しました。
  • Python 3 のバインディングにより、文字列がバイト データではなくエスケープされた UTF-8 シーケンスとして返されることが保証されます。
  • rpmdb のないシステム (例: Debian) のサポートを向上させるために、ダミー データベース バックエンドを追加しました。
  • ARM アーキテクチャの検出が改善され、armv8 のサポートが追加されました。
  • コード内で互換性定義を必要としない Lua 5.2 ~ 5.3 のシームレスなサポートを提供します。

出所: オープンネット.ru

コメントを追加します