RPM 4.15 发布

经过近两年的发展 发生了 包管理器发布 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”;
  • 规范文件现在支持条件运算符“%elif”(else if),以及用于绑定到发行版和架构的选项“%elifos”和“%elifarch”;
  • 添加 新部分“%patchlist”和“%sourcelist”,可用于通过简单地列出名称而不指定条目号来添加补丁和源(例如,而不是
    “Patch0: popt-1.16-pkgconfig.patch”在 %patchlist 部分中您可以指定“popt-1.16-pkgconfig.patch”);

  • 在 rpmbuild 中 添加 支持动态组装依赖项并将其包含在 src.rpm 中。 在spec文件中,添加了对“%generate_buildrequires”部分的支持,该部分的内容被处理为依赖项列表(BuildRequires),需要验证(如果缺少依赖项,将显示错误)。
  • 实施的 “^”运算符用于检查早于给定日期的版本,其作用与“~”运算符相反。 例如,
    “1.1^20160101”将涵盖1.1版本以及1年2016月XNUMX日之后添加的补丁;

  • 添加了“--scm”选项以启用“%aut​​osetup 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提供无缝支持,不需要在代码中定义compat。

来源: opennet.ru

添加评论