我可以从依赖RPM中声明的rpm.spec调用函数吗?

时间:2014-09-09 16:18:40

标签: rpm rpmbuild rpm-spec

假设我有一个构建rpm.spec包的MyRPM.rpm脚本:

- MyRPM.rpm的rpm.spec

%define logdir %{my_dir}/logs/%{name}

Summary: bla bla bla
Name: MyRPM
Version: @@@version@@@
Release: @@@revision@@@
License: bla
Group: Applications/System
Requires: That-Other-RPM

%description
This is my RPM

%prep
%build
%install

doSomething //invoking a function

Requires参数应触发That-Other-RPM的安装过程。假设doSomething函数是在That-Other-RPM中声明的,我可以从MyRPM的rpm.spec调用它,因为它会触发另一个吗?

- 转换为其他RPM.rpm的rpm.spec

%define logdir %{my_dir}/logs/%{name}

Summary: bla bla bla
Name: That-Other-RPM
Version: @@@version@@@
Release: @@@revision@@@
License: bla
Group: Applications/System

%description
This is that other RPM

%prep
%build
%install

function doSomething {
   //doing something here
}

1 个答案:

答案 0 :(得分:3)

不,你不能。

规范文件中的函数这样的部分仅在定义它们的scriptlet中可用。

您的RPM与其他RPM之间没有共享shell会话。