Generic RPM package for Python 2.x

Posted by RaphDG on Server Fault See other posts from Server Fault or by RaphDG
Published on 2012-01-10T15:42:43Z Indexed on 2012/03/28 5:33 UTC
Read the original article Hit count: 523

Filed under:
|

I have a python application, it can run on Python >= 2.6 and it's architecture independant.

I need the rpm package of this application to be installed on Fedora 14 (python 2.7) and Centos 6.2 (python 2.6).

I currently use mock to build one rpm package for each "flavour" and it works well. I apparently can't install the Centos compiled rpm on Fedora.

It gives me this error message :

error: Failed dependencies:
    python(abi) = 2.6 is needed by myapp-0.9.el6.noarch

Here is the relevant part of my .spec file :

%{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")}
%{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")}

Name:           myapp
Version:        #VERSION#
Release:        #RELEASE#%{dist}
Summary:        myapp

Group:          Development/Languages
License:        Apache v2
Source0:        %{name}-%{version}-#RELEASE#.tar.gz
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)

BuildArch:      noarch

BuildRequires: python-devel
BuildRequires: python-setuptools


%description
myapp

%prep
%setup -c


%build
%{__python} setup.py build

%install
%{__rm} -rf %{buildroot}

%{__python} setup.py install -O1 --skip-build --root %{buildroot}

Do I really have to use mock and build 2 rpms or is there another way to create a single generic 2.x rpm package ?

© Server Fault or respective owner

Related posts about python

Related posts about rpm