Linux
如何在 RPM 規範文件中指定作業系統條件建構要求?
我正在嘗試使用規範文件中的 BuildPrereq 標誌來解決問題。如果作業系統是特定版本,我希望包含一些先決條件。就像是
if os == fedora 4 BuildPrereq >= apr0.9 endif if os == feodra 10 BuildPrereq >= apr2.0 endif
有沒有辦法實現上述目標?我也想听聽一些關於這個的替代方案。問題是我有一段程式碼不需要在幾個版本的作業系統上編譯。所以我正在考慮混合條件編譯和上述內容。
乾杯!
要將您編寫的內容直接轉換為 specfile 宏:
%if 0%{?fedora} == 4 BuildPrereq >= apr0.9 %endif %if 0%{?fedora} == 10 BuildPrereq >= apr2.0 %endif
您可能可以將第一個更改
%endif
為 an,%else
但我想讓我的重寫盡可能相似,以防涉及其他情況。如果您想支持 fc4 和 f10 或更高版本之間的 fedora,您也可以使用 >= 和 <=。如果您關心 RHEL,那麼
%{rhel}
對於 RHEL4 的評估結果為 4,對於 RHEL5 的評估結果為 5。