Blob Blame History Raw
# EPEL5-specific bits
%__python2 /usr/bin/python2.4
%python_sitearch %(%{__python2} -c "from distutils.sysconfig import get_python_lib; import sys; sys.stdout.write(get_python_lib(1))")
%python_sitelib     %(%{__python2} -c "from distutils.sysconfig import get_python_lib; import sys; sys.stdout.write(get_python_lib())")
%python_version     %(%{__python2} -c "import sys; sys.stdout.write(sys.version[:3])")
%python2_sitelib %python_sitelib
%python2_sitearch %python_sitearch

%py3_build %{nil}
%py3_install %{nil}

# Stock Python macros from EPEL7
%py_setup setup.py
%py_shbang_opts -s

%py2_build() %{expand:
CFLAGS="%{optflags}" %{__python2} %{py_setup} %{?py_setup_args} build --executable="%{__python2} %{py_shbang_opts}" %{?1}
}

%py2_install() %{expand:
CFLAGS="%{optflags}" %{__python2} %{py_setup} %{?py_setup_args} install -O1 --skip-build --root %{buildroot} %{?1}
}

%python_provide() %{lua:
        function string.starts(String,Start)
                return string.sub(String,1,string.len(Start))==Start
        end
        package = rpm.expand("%{?1:%{1}}");
        vr = rpm.expand("%{?epoch:%{epoch}:}%{version}-%{release}")
        if (string.starts(package, "python2-")) then
                if (rpm.expand("%{?buildarch}") ~= "noarch") then
                        str = "Provides: python-" .. string.sub(package,9,string.len(package)) .. "%{?_isa} = " .. vr;
                        print(rpm.expand(str));
                end
                print("\\nProvides: python-");
                print(string.sub(package,9,string.len(package)));
                print(" = ");
                print(vr);
                --Obsoleting the previous default python package
                if (rpm.expand("%{?buildarch}") ~= "noarch") then
                        str = "\\nObsoletes: python-" .. string.sub(package,9,string.len(package)) .. "%{?_isa} < " .. vr;
                        print(rpm.expand(str));
                end
                print("\\nObsoletes: python-");
                print(string.sub(package,9,string.len(package)));
                print(" < ");
                print(vr);
        elseif (string.starts(package, "python" .. rpm.expand("%{python3_pkgversion}") .. "-")) then
                --No unversioned provides as python3 is not default
        elseif (rpm.expand("%{?python3_other_pkgversion}") ~= "" and string.starts(package, "python" .. rpm.expand("%{python3_other_pkgversion}") .. "-")) then
                --No unversioned provides as python3_other is not default
        elseif (string.starts(package, "pypy-")) then
                --No unversioned provides as pypy is not default
        elseif (string.starts(package, "pypy3-")) then
                --No unversioned provides as pypy is not default
        elseif (string.starts(package, "python-")) then
                --Providing the current default python
                print("Provides: python2-");
                print(string.sub(package,8,string.len(package)));
                print(" = ");
                print(vr);
        else
                print("%python_provide: ERROR: ");
                print(package);
                print(" not recognized.");
        end
}