조건부 패키지 종속성

조건부 패키지 종속성

Red Hat Enterprise Linux용 RPM 패키지를 만들고 있습니다. 내 소프트웨어는 RHEL 7 및 8에서 실행될 때 "redhat-lsb" 패키지가 필요하지만 RHEL 9에서는 필요하지 않습니다. 또한 이 패키지는 RHEL 9 리포지토리에서도 사용할 수 없습니다.

한 줄에 패키지를 포함하면 Requires:RHEL9에서 패키지 설치가 실패합니다.

Requires해당 줄을 다음과 같은 조건식에 넣으면 :

%if 0%{?rhel} <= 8
Requires: redhat-lsb
%endif

그런 다음 빌드 시 조건이 평가되며, RHEL7에서 빌드하고 있으므로 결과 패키지에는 항상 종속성이 있습니다.

설치할 때 OS 버전에 따라 종속성을 조건으로 만드는 자동화된 방법이 있습니까? 그렇지 않다면 문제를 해결하는 가장 좋은 방법은 무엇입니까? 목록 에 추가하지 않으면 Requires:수동으로 설치해야 합니까?

예를 들어 요구 사항을 선택 사항으로 만들 수 있나요?

관련 정보