Saya mencoba menulis spesifikasi rpm tunggal untuk RHEL / CentOS / SL 5 dan 6. Spesifikasi ini untuk aplikasi python, jadi tidak ada perbedaan dalam proses pembuatan. Tetapi pada RHEL / CentOS5 saya perlu menambahkan satu ketergantungan tambahan.
Bagaimana saya mendefinisikan ketergantungan hanya untuk el5? Saya sudah mencoba mengikuti:
%if 0%{?redhat} == 5 || 0%{?centos} == 5
Requires: kmod-coretemp
%endif
Tidak berfungsi (build on CentOS5 tidak menambah ketergantungan kmod-coretemp).
Saya sudah mencoba juga mengikuti:
%if %{?dist} == "el5"
Ini melaporkan dengan kesalahan sintaks. Saya yakin dist makro diatur dan mengandung 'el5'. Tapi saya tidak yakin apa sintaksis jika conditional dalam rpm? rpmguide tidak memiliki jawaban terinci.
Wiki Fedora, seperti biasa, memberikan pedoman terbaik tentang pengemasan. Lihatlah halaman Pengemasan: DistTag . Anda dapat menggunakan
%{el5}
variabel dan kondisi tulisan cepat untuk memastikan bahwaRequire
baris relevan digunakan ketika membangun paket untuk EL5.Anda mungkin ingin menambahkan
dist
tag ke bidang versi untuk menghindari kebingungan antar paket:Lihat Tujuan Tag Dist .
sumber
redhat-rpm-config
dari Yum.