macros - RPM 规范中的 `%setup -q` 是什么?

标签 macros rpm specifications

如果您创建一个 .spec文件,编辑器将使用它的骨架。很方便!

然而,生成的 %setup 让我感到困扰宏有这个-q我在任何地方都找不到的标志。

我在 max-rpm guide page on macros 上没有发现任何提及,并且不会被 rpmspec 扩展:rpmspec --eval '%setup'只返回 %setup ,以及 -p不会改变任何东西。其他relevant docs中没有提到还有。

通过进一步调查,我注意到有很多宏没有被 rpmspec 扩展。 ,即使我可以在 /usr/lib/rpm 中找到很多宏(在我的 Fedora 上)。

所以我想知道:

  • 什么是-q为了?
  • 为什么我看不到所有扩展?我错过了什么吗?
  • 上述最大 RPM 指南声称存在 --test标志为 rpm -b命令。我可以在我的系统上看到没有 rpm -b ,实际上我用 rpmbuild 完成所有工作.在 rpmbuild没有 --test旗帜。如何查看展开的脚本?
  • 最佳答案

    -q 有什么用?

    https://docs.fedoraproject.org/en-US/Fedora_Draft_Documentation/0.1/html-single/RPM_Guide/index.html#id366540

    它代表:以最少的输出安静地运行。

    为什么我看不到所有扩展?我错过了什么吗?

    我不是 100% 确定,但 %setup 很可能是这个术语,由 rpm 内部处理。它与 %if 相同,也没有展开。

    前面提到的最大 RPM 指南声称存在 rpm -b 命令的 --test 标志。我可以看到我的系统上没有 rpm -b,实际上我用 rpmbuild 完成了所有工作。在 rpmbuild 中没有 --test 标志。如何查看展开的脚本?

    最大转速 很旧了。它写于 2000 年。从那时起就没有更新。虽然它仍然是最好和最全面的指南之一。有些事情发生了变化。这是其中之一。我不知道任何等效的 --test。存在“rpm --eval”和“rpm --showrc”。最后一个显示系统上所有定义的宏。

    关于macros - RPM 规范中的 `%setup -q` 是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37811317/

    相关文章:

    c - 使用宏在 C 中实现通用 vector 。这是个好主意吗?

    rpm - 如何在 RPM 安装期间访问用户在安装后脚本中指定的 --prefix 值?

    jsf - #{resource} EL 在哪里指定?

    entity-framework - 在 EF Code First Orderby 函数期间无法将类型 'System.Int32' 转换为类型“System.Object”

    linux - 使用通过 RPM 交付的产品执行发布周期

    c# - 如果使用 out 参数,调用范围中的变量何时更改?

    Z3 中定义变量和常量的宏

    clojure - Clojure 宏生成的代码中的反射警告

    c - "Variably modified ' 变量名 ' at file scope"大小在宏中定义

    linux - rpm %config(noreplace) 用 %config 覆盖