diff --git a/scons.spec b/scons.spec index 87a0c16..bfa48c7 100644 --- a/scons.spec +++ b/scons.spec @@ -6,7 +6,7 @@ %global with_python3 1 %endif -%if 0%{?rhel} && 0%{?rhel} < 8 +%if 0%{?rhel} && 0%{?rhel} == 7 %global with_python3 1 %global with_python2 1 %endif @@ -18,7 +18,7 @@ Name: scons Version: 3.0.5 -Release: 2%{?dist} +Release: 3%{?dist} Summary: An Open Source software construction tool License: MIT URL: http://www.scons.org @@ -55,7 +55,12 @@ Summary: An Open Source software construction tool BuildRequires: python2-devel %{?python_provide:%python_provide python2-%{name}} -Provides: scons-python2 = %{version}-%{release} +%if 0%{?rhel} && 0%{?rhel} == 7 +Provides: scons = 0:%{version}-%{release} +%endif +%if 0%{?fedora} || 0%{?rhel} > 7 +Provides: scons-python2 = 0:%{version}-%{release} +%endif %description -n python2-%{name} SCons is an Open Source software construction tool--that is, a build @@ -78,11 +83,14 @@ defined Builder and/or Scanner objects. Summary: An Open Source software construction tool BuildRequires: python%{python3_pkgversion}-devel +%if 0%{?fedora} || 0%{?rhel} > 7 Provides: scons = 0:%{version}-%{release} Provides: scons-python3 -Obsoletes: scons < 0:5.0.3-2 +Obsoletes: scons < 0:5.0.3-3 +%endif %if 0%{?rhel} Obsoletes: python34-%{name} +Provides: scons-python3 = 0:%{version}-%{release} %endif %{?python_provide:%python_provide python%{python3_pkgversion}-%{name}} @@ -176,7 +184,7 @@ popd %endif %install - +%if 0%{?fedora} || 0%{?rhel} > 7 %if 0%{?with_python2} pushd %{name}-%{version}/build/scons %py2_install \ @@ -187,8 +195,6 @@ pushd %{name}-%{version}/build/scons --install-data=%{_datadir} popd -#Avoiding collisions between the python 2 and python 3 stacks -%if 0%{?fedora} || 0%{?rhel} > 7 mv %{buildroot}%{_bindir}/%{name} %{buildroot}%{_bindir}/%{name}-2 mv %{buildroot}%{_bindir}/%{name}-configure-cache %{buildroot}%{_bindir}/%{name}-configure-cache-2 mv %{buildroot}%{_bindir}/%{name}ign %{buildroot}%{_bindir}/%{name}ign-2 @@ -209,25 +215,6 @@ for i in %{name}-configure-cache-2 %{name}-configure-cache-%{python2_version} %{ done popd %endif - -%if 0%{?rhel} && 0%{?rhel} == 7 -pushd %{buildroot}%{_bindir} -for i in %{name}-2 %{name}-%{python2_version} %{name}-v%{version}-%{python2_version}; do - ln -fs %{_bindir}/%{name} %{buildroot}%{_bindir}/$i -done -for i in %{name}ign-2 %{name}ign-%{python2_version} %{name}ign-v%{version}-%{python2_version}; do - ln -fs %{_bindir}/%{name}ign %{buildroot}%{_bindir}/$i -done -for i in %{name}-time-2 %{name}-time-%{python2_version} %{name}-time-v%{version}-%{python2_version}; do - ln -fs %{_bindir}/%{name}-time %{buildroot}%{_bindir}/$i -done -for i in %{name}-configure-cache-2 %{name}-configure-cache-%{python2_version} %{name}-configure-cache-v%{version}-%{python2_version}; do - ln -fs %{_bindir}/%{name}-configure-cache %{buildroot}%{_bindir}/$i -done -popd -%endif -%endif - %if 0%{?with_python3} pushd %{name}-%{version}-py3/build/scons %py3_install \ @@ -237,8 +224,33 @@ pushd %{name}-%{version}-py3/build/scons --install-scripts=%{_bindir} \ --install-data=%{_datadir} popd +pushd %{buildroot}%{_bindir} +for i in %{name}-v%{version}-%{python3_version} %{name}-%{python3_version}; do + ln -fs %{_bindir}/%{name} %{buildroot}%{_bindir}/$i +done +for i in %{name}ign-v%{version}-%{python3_version} %{name}ign-%{python3_version}; do + ln -fs %{_bindir}/%{name}ign %{buildroot}%{_bindir}/$i +done +for i in %{name}-time-v%{version}-%{python3_version} %{name}-time-%{python3_version}; do + ln -fs %{_bindir}/%{name}-time %{buildroot}%{_bindir}/$i +done +for i in %{name}-configure-cache-v%{version}-%{python3_version} %{name}-configure-cache-%{python3_version}; do + ln -fs %{_bindir}/%{name}-configure-cache %{buildroot}%{_bindir}/$i +done +popd +%endif +%endif %if 0%{?rhel} && 0%{?rhel} == 7 +%if 0%{?with_python3} +pushd %{name}-%{version}-py3/build/scons +%py3_install \ + --standard-lib \ + --no-install-bat \ + --no-version-script \ + --install-scripts=%{_bindir} \ + --install-data=%{_datadir} +popd mv %{buildroot}%{_bindir}/%{name} %{buildroot}%{_bindir}/%{name}-3 mv %{buildroot}%{_bindir}/%{name}-configure-cache %{buildroot}%{_bindir}/%{name}-configure-cache-3 mv %{buildroot}%{_bindir}/%{name}ign %{buildroot}%{_bindir}/%{name}ign-3 @@ -259,19 +271,26 @@ for i in %{name}-configure-cache-v%{version}-%{python3_version} %{name}-configur done popd %endif - -%if 0%{?fedora} || 0%{?rhel} > 7 +%if 0%{?with_python2} +pushd %{name}-%{version}/build/scons +%py2_install \ + --standard-lib \ + --no-install-bat \ + --no-version-script \ + --install-scripts=%{_bindir} \ + --install-data=%{_datadir} +popd pushd %{buildroot}%{_bindir} -for i in %{name}-v%{version}-%{python3_version} %{name}-%{python3_version}; do +for i in %{name}-2 %{name}-%{python2_version} %{name}-v%{version}-%{python2_version}; do ln -fs %{_bindir}/%{name} %{buildroot}%{_bindir}/$i done -for i in %{name}ign-v%{version}-%{python3_version} %{name}ign-%{python3_version}; do +for i in %{name}ign-2 %{name}ign-%{python2_version} %{name}ign-v%{version}-%{python2_version}; do ln -fs %{_bindir}/%{name}ign %{buildroot}%{_bindir}/$i done -for i in %{name}-time-v%{version}-%{python3_version} %{name}-time-%{python3_version}; do +for i in %{name}-time-2 %{name}-time-%{python2_version} %{name}-time-v%{version}-%{python2_version}; do ln -fs %{_bindir}/%{name}-time %{buildroot}%{_bindir}/$i done -for i in %{name}-configure-cache-v%{version}-%{python3_version} %{name}-configure-cache-%{python3_version}; do +for i in %{name}-configure-cache-2 %{name}-configure-cache-%{python2_version} %{name}-configure-cache-v%{version}-%{python2_version}; do ln -fs %{_bindir}/%{name}-configure-cache %{buildroot}%{_bindir}/$i done popd @@ -334,11 +353,12 @@ popd %if 0%{?fedora} || 0%{?rhel} > 7 %{_bindir}/%{name}*-2 %endif -%if 0%{?rhel} || 0%{?rhel} == 7 +%if 0%{?rhel} && 0%{?rhel} == 7 %{_bindir}/%{name} %{_bindir}/%{name}ign %{_bindir}/%{name}-time %{_bindir}/%{name}-configure-cache +%{_bindir}/%{name}*-2 %endif %{_bindir}/%{name}*-%{python2_version} %{python2_sitelib}/SCons/ @@ -381,6 +401,9 @@ popd %license %{name}-%{version}/src/LICENSE.txt %changelog +* Wed Jul 24 2019 Antonio Trande - 3.0.5-3 +- Fix builds on EPEL7 + * Tue Jul 23 2019 Antonio Trande - 3.0.5-2 - Unversioned commands point to Python3 on Fedora - Obsolete Python2 version on Fedora