%define 宏中的按位或运算

%define 宏中的按位或运算

在编辑 spec 文件时,我看到了以下一行:

%define _udevdir %(pkg-config --variable udev_dir udev | %{_prefix}/lib/udev)

我不熟悉 rpmbuild 语法,但我猜想它的作者的意思是_udevdir应该包含命令返回的值pkg-config --variable udev_dir udev,或者%{_prefix}/lib/udev前一个命令是否将返回一个空值。但我还猜想此行包含一个错误。

有人能指出我是否正确吗?如果这一行确实包含错误,如何正确地重写它?

答案1

这段代码可以正常工作:

%define _udevdir %(pkg-config --variable udev_dir udev || echo %{_prefix}/lib/udev)

相关内容