On Mon, Jan 3, 2011 at 8:01 AM, Santi Saez <santisaez at woop.es> wrote: > Hello, > > I'm trying to use helper variables like %{rhel} in a .SPEC file on > CentOS (as they are defined in RHEL and Fedora [1]), but it seems they > are not available. > > Is there any way to detect automatically CentOS release from a .SPEC > file in a RPM build process? > > As a workaround, I use this hack: > > %if 0%{?rhel} >= 5 > (..) > %endif > > And when calling rpmbuild I use a conditional build, like: > > $ rpmbuild -ba --clean --define "rhel 5" You may want to look into the srpms of nx/freenx in the CentOS extras repository. The spec file contains the following: # centos_ver is a number (2,3,4,5). It can be provided in the build system or # via the command line with the following define for rpmbuild # --define "centos_ver 5" # If centos_ver is not provided the following will find it and should work on # all current redhat based EL rebuilds, will not work properly on FC though %{!?centos_ver: %define centos_ver %(Z=`rpm -q --whatprovides /etc/redhat-release`;A=`rpm -q --qf '%{V}' $Z`; echo ${A:0:1})} I believe this was originally written by Johnny Hughes and is still in use for those packages (now including the upcoming version "6"). Akemi