문제를 해결하기 위해 사양 파일의 BuildPrereq 플래그를 사용하려고 합니다. OS가 특정 버전인 경우 몇 가지 전제 조건을 포함하고 싶습니다. 그것은 마치
if os == fedora 4
BuildPrereq >= apr0.9
endif
if os == feodra 10
BuildPrereq >= apr2.0
endif
위의 목적을 달성할 수 있는 방법이 있나요? 이에 대한 대안도 듣고 싶습니다. 문제는 특정 버전의 운영 체제에서 컴파일할 필요가 없는 코드 조각이 있다는 것입니다. 그래서 조건부 컴파일과 위의 내용을 혼합하려고 생각 중입니다.
건배!
답변1
작성한 내용을 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입니다.