Blame SPECS/scons.spec

a8f513
#global posttag .final.0
a8f513
a8f513
# SCons 3.0.1 does not run under (3.0.0) < Python3 < (3,5,0) or
a8f513
# Python < (2,7,0).
a8f513
# Epel7 provides Python3.4
a8f513
a8f513
%if 0%{?fedora} || 0%{?rhel} > 7
a8f513
%global with_python3 1
a8f513
%if 0%{?rhel} > 7
a8f513
%global with_python2 0
a8f513
%else
a8f513
%global with_python2 1
a8f513
%endif
a8f513
%else
a8f513
%global with_python3 0
a8f513
%global with_python2 1
a8f513
%endif
a8f513
a8f513
Name:		    scons
35a468
Version:	    3.1.2
35a468
Release:	    1%{?posttag}%{?dist}
a8f513
Summary:	    An Open Source software construction tool
a8f513
a8f513
License:	    MIT
a8f513
URL:		    http://www.scons.org
a8f513
Source:		    http://prdownloads.sourceforge.net/scons/scons-%{version}.tar.gz
a8f513
BuildArch:	    noarch
a8f513
a8f513
%description
a8f513
SCons is an Open Source software construction tool--that is, a build
a8f513
tool; an improved substitute for the classic Make utility; a better way
a8f513
to build software. SCons is based on the design which won the Software
a8f513
Carpentry build tool design competition in August 2000.
a8f513
a8f513
SCons "configuration files" are Python scripts, eliminating the need
a8f513
to learn a new build tool syntax. SCons maintains a global view of
a8f513
all dependencies in a tree, and can scan source (or other) files for
a8f513
implicit dependencies, such as files specified on #include lines. SCons
a8f513
uses MD5 signatures to rebuild only when the contents of a file have
a8f513
really changed, not just when the timestamp has been touched. SCons
a8f513
supports side-by-side variant builds, and is easily extended with user-
a8f513
defined Builder and/or Scanner objects.
a8f513
a8f513
%if 0%{?with_python2}
a8f513
%package -n     python2-%{name}
a8f513
Summary:        An Open Source software construction tool
a8f513
a8f513
BuildRequires:  python2-devel
a8f513
Provides:       scons = %{version}-%{release}
a8f513
Obsoletes:      scons < %{version}-4
a8f513
%{?python_provide:%python_provide python2-%{name}}
a8f513
a8f513
%description -n python2-%{name}
a8f513
SCons is an Open Source software construction tool--that is, a build
a8f513
tool; an improved substitute for the classic Make utility; a better way
a8f513
to build software. SCons is based on the design which won the Software
a8f513
Carpentry build tool design competition in August 2000.
a8f513
a8f513
SCons "configuration files" are Python scripts, eliminating the need
a8f513
to learn a new build tool syntax. SCons maintains a global view of
a8f513
all dependencies in a tree, and can scan source (or other) files for
a8f513
implicit dependencies, such as files specified on #include lines. SCons
a8f513
uses MD5 signatures to rebuild only when the contents of a file have
a8f513
really changed, not just when the timestamp has been touched. SCons
a8f513
supports side-by-side variant builds, and is easily extended with user-
a8f513
defined Builder and/or Scanner objects.
a8f513
%endif
a8f513
a8f513
%if 0%{?with_python3}
a8f513
%package -n     python3-%{name}
a8f513
Summary:        An Open Source software construction tool
a8f513
a8f513
BuildRequires:  python3-devel
a8f513
Provides:       scons-python3 = %{version}-%{release}
a8f513
%{?python_provide:%python_provide python3-%{name}}
a8f513
a8f513
%description -n python3-%{name}
a8f513
SCons is an Open Source software construction tool--that is, a build
a8f513
tool; an improved substitute for the classic Make utility; a better way
a8f513
to build software. SCons is based on the design which won the Software
a8f513
Carpentry build tool design competition in August 2000.
a8f513
a8f513
SCons "configuration files" are Python scripts, eliminating the need
a8f513
to learn a new build tool syntax. SCons maintains a global view of
a8f513
all dependencies in a tree, and can scan source (or other) files for
a8f513
implicit dependencies, such as files specified on #include lines. SCons
a8f513
uses MD5 signatures to rebuild only when the contents of a file have
a8f513
really changed, not just when the timestamp has been touched. SCons
a8f513
supports side-by-side variant builds, and is easily extended with user-
a8f513
defined Builder and/or Scanner objects.
a8f513
%endif
a8f513
a8f513
%prep
a8f513
%setup -qc
a8f513
a8f513
# Convert to UTF-8
a8f513
for file in %{name}-%{version}%{?posttag}/*.txt; do
a8f513
    iconv -f ISO-8859-1 -t UTF-8 -o $file.new $file && \
a8f513
    touch -r $file $file.new && \
a8f513
    mv $file.new $file
a8f513
done
a8f513
%if 0%{?with_python3}
a8f513
cp -a %{name}-%{version}%{?posttag} %{name}-%{version}%{?posttag}-py3
a8f513
%endif
a8f513
%if 0%{?with_python2}
a8f513
sed -i 's|/usr/bin/env python|%{__python2}|' %{name}-%{version}%{?posttag}/script/*
a8f513
%endif
a8f513
%if 0%{?with_python3}
a8f513
sed -i 's|/usr/bin/env python|%{__python3}|' %{name}-%{version}%{?posttag}-py3/script/*
a8f513
%endif
a8f513
a8f513
%build
a8f513
%if 0%{?with_python2}
a8f513
pushd %{name}-%{version}%{?posttag}
a8f513
%py2_build
a8f513
popd
a8f513
%endif
a8f513
%if 0%{?with_python3}
a8f513
pushd %{name}-%{version}%{?posttag}-py3
a8f513
%py3_build
a8f513
popd
a8f513
%endif
a8f513
a8f513
%install
a8f513
%if 0%{?with_python3}
a8f513
cd %{name}-%{version}%{?posttag}-py3
a8f513
%py3_install \
a8f513
 --standard-lib \
a8f513
 --no-install-bat \
a8f513
 --no-version-script \
a8f513
 --install-scripts=%{_bindir} \
a8f513
 --install-data=%{_datadir}
a8f513
cd ..
a8f513
a8f513
#Avoiding collisions between the python 2 and python 3 stacks
a8f513
mv %{buildroot}%{_bindir}/%{name} %{buildroot}%{_bindir}/%{name}-3
a8f513
mv %{buildroot}%{_bindir}/%{name}-configure-cache %{buildroot}%{_bindir}/%{name}-configure-cache-3
a8f513
mv %{buildroot}%{_bindir}/%{name}ign %{buildroot}%{_bindir}/%{name}ign-3
a8f513
mv %{buildroot}%{_bindir}/%{name}-time %{buildroot}%{_bindir}/%{name}-time-3
a8f513
a8f513
pushd %{buildroot}%{_bindir} 
a8f513
for i in %{name}-v%{version}-%{python3_version} %{name}-%{python3_version}; do
a8f513
  ln -fs %{_bindir}/%{name}-3 %{buildroot}%{_bindir}/$i
a8f513
done
a8f513
for i in %{name}ign-v%{version}-%{python3_version} %{name}ign-%{python3_version}; do
a8f513
  ln -fs %{_bindir}/%{name}ign-3 %{buildroot}%{_bindir}/$i
a8f513
done
a8f513
for i in %{name}-time-v%{version}-%{python3_version} %{name}-time-%{python3_version}; do
a8f513
  ln -fs %{_bindir}/%{name}-time-3 %{buildroot}%{_bindir}/$i
a8f513
done
a8f513
for i in %{name}-configure-cache-v%{version}-%{python3_version} %{name}-configure-cache-%{python3_version}; do
a8f513
  ln -fs %{_bindir}/%{name}-configure-cache-3 %{buildroot}%{_bindir}/$i
a8f513
done
a8f513
popd
a8f513
%endif
a8f513
a8f513
%if 0%{?with_python2}
a8f513
cd %{name}-%{version}%{?posttag}
a8f513
%py2_install \
a8f513
 --standard-lib \
a8f513
 --no-install-bat \
a8f513
 --no-version-script \
a8f513
 --install-scripts=%{_bindir} \
a8f513
 --install-data=%{_datadir}
a8f513
cd ..
a8f513
a8f513
#Avoiding collisions between the python 2 and python 3 stacks
a8f513
pushd %{buildroot}%{_bindir} 
a8f513
for i in %{name}-2 %{name}-%{python2_version} %{name}-v%{version}-%{python2_version}; do
a8f513
  ln -fs %{_bindir}/%{name} %{buildroot}%{_bindir}/$i
a8f513
done
a8f513
for i in %{name}ign-2 %{name}ign-%{python2_version} %{name}ign-v%{version}-%{python2_version}; do
a8f513
  ln -fs %{_bindir}/%{name}ign %{buildroot}%{_bindir}/$i
a8f513
done
a8f513
for i in %{name}-time-2 %{name}-time-%{python2_version} %{name}-time-v%{version}-%{python2_version}; do
a8f513
  ln -fs %{_bindir}/%{name}-time %{buildroot}%{_bindir}/$i
a8f513
done
a8f513
for i in %{name}-configure-cache-2 %{name}-configure-cache-%{python2_version} %{name}-configure-cache-v%{version}-%{python2_version}; do
a8f513
  ln -fs %{_bindir}/%{name}-configure-cache %{buildroot}%{_bindir}/$i
a8f513
done
a8f513
popd
a8f513
%endif
a8f513
a8f513
%if 0%{?with_python2}
a8f513
%files -n python2-%{name}
a8f513
%doc %{name}-%{version}%{?posttag}/CHANGES.txt %{name}-%{version}%{?posttag}/README.txt %{name}-%{version}%{?posttag}/RELEASE.txt
a8f513
%license %{name}-%{version}%{?posttag}/LICENSE.txt
a8f513
%{_bindir}/%{name}
a8f513
%{_bindir}/%{name}ign
a8f513
%{_bindir}/%{name}-time
a8f513
%{_bindir}/%{name}-configure-cache
a8f513
%{_bindir}/%{name}*-2
a8f513
%{_bindir}/%{name}*-%{python2_version}
a8f513
%{python2_sitelib}/SCons/
a8f513
%{python2_sitelib}/scons-%{version}*.egg-info
a8f513
%{_mandir}/man?/*
a8f513
%endif
a8f513
%if 0%{?with_python3}
a8f513
%files -n python3-%{name}
a8f513
%doc %{name}-%{version}%{?posttag}-py3/CHANGES.txt %{name}-%{version}%{?posttag}-py3/README.txt %{name}-%{version}%{?posttag}-py3/RELEASE.txt
a8f513
%license %{name}-%{version}%{?posttag}-py3/LICENSE.txt
a8f513
%{_bindir}/%{name}*-3
a8f513
%{_bindir}/%{name}*-%{python3_version}
a8f513
%{python3_sitelib}/SCons/
a8f513
%{python3_sitelib}/scons-%{version}*.egg-info
a8f513
%{_mandir}/man?/*
a8f513
%endif
a8f513
a8f513
%changelog
35a468
* Mon Jan 10 2022 Honza Horak <hhorak@redhat.com> - 3.1.2-1
35a468
- Rebase to 3.1.2
35a468
  Resolves: #1823510
35a468
a8f513
* Fri Jul 20 2018 Honza Horak <hhorak@redhat.com> - 3.0.1-8
a8f513
- Do not build python2-scons on rhel>7
a8f513
  Resolves: #1591722
a8f513
a8f513
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.1-7
a8f513
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
a8f513
a8f513
* Tue Jan 23 2018 Merlin Mathesius <mmathesi@redhat.com> - 3.0.1-6
a8f513
- Cleanup spec file conditionals
a8f513
a8f513
* Mon Dec 25 2017 Antonio Trande <sagitter at fedoraproject.org> - 3.0.1-5
a8f513
- Remove 'Obsoletes scons' for scons-python3
a8f513
a8f513
* Mon Dec 25 2017 Antonio Trande <sagitter at fedoraproject.org> - 3.0.1-4
a8f513
- Fix Provides tag
a8f513
a8f513
* Mon Dec 25 2017 Antonio Trande <sagitter at fedoraproject.org> - 3.0.1-3
a8f513
- Set Obsoletes tag
a8f513
a8f513
* Mon Dec 25 2017 Antonio Trande <sagitter at fedoraproject.org> - 3.0.1-2
a8f513
- Provide Python2 and Python3 scons
a8f513
- Avoiding collisions between the python 2 and python 3 stacks
a8f513
a8f513
* Tue Nov 28 2017 Antonio Trande <sagitter at fedoraproject.org> - 3.0.1-1
a8f513
- Update to 3.0.1
a8f513
- Build with Python2 on epel7
a8f513
a8f513
* Tue Oct 03 2017 Fabian Affolter <mail@fabian-affolter.ch> - 2.5.1-1
a8f513
- Update to new upstream version 3.0.0 (rhbz#1497891)
a8f513
a8f513
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.5.1-3
a8f513
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
a8f513
a8f513
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.5.1-2
a8f513
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
a8f513
a8f513
* Tue Nov 15 2016 Fabian Affolter <mail@fabian-affolter.ch> - 2.5.1-1
a8f513
- Update to new upstream version 2.5.1 (rhbz#1391798)
a8f513
a8f513
* Mon Jun 13 2016 Fabian Affolter <mail@fabian-affolter.ch> - 2.5.0-1
a8f513
- Update to new upstream version 2.5.0
a8f513
a8f513
* Sat May 07 2016 Fabian Affolter <mail@fabian-affolter.ch> - 2.4.1-1
a8f513
- Update to new upstream version 2.4.1 (rhbz#1265037)
a8f513
a8f513
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 2.3.6-2
a8f513
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
a8f513
a8f513
* Sat Aug 01 2015 Fabian Affolter <mail@fabian-affolter.ch> - 2.3.6-1
a8f513
- Update to new upstream version 2.3.6 (rhbz#1234119)
a8f513
a8f513
* Wed Jul 22 2015 Fabian Affolter <mail@fabian-affolter.ch> - 2.3.5-1
a8f513
- Update to new upstream version 2.3.5 (rhbz#1234119)
a8f513
a8f513
* Fri Jun 19 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.4-2
a8f513
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
a8f513
a8f513
* Tue Sep 30 2014 Fabian Affolter <mail@fabian-affolter.ch> - 2.3.4-1
a8f513
- Update to new upstream version 2.3.4 (rhbz#1147461)
a8f513
a8f513
* Mon Sep 01 2014 Fabian Affolter <mail@fabian-affolter.ch> - 2.3.3-1
a8f513
- Update to new upstream version 2.3.3 (rhbz#1133527)
a8f513
a8f513
* Mon Jul 07 2014 Fabian Affolter <mail@fabian-affolter.ch> - 2.3.2-1
a8f513
- Update to new upstream version 2.3.2 (rhbz#1116635)
a8f513
a8f513
* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.1-2
a8f513
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
a8f513
a8f513
* Wed Mar 05 2014 Fabian Affolter <mail@fabian-affolter.ch> - 2.3.1-1
a8f513
- Update to new upstream version 2.3.1
a8f513
a8f513
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.0-2
a8f513
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
a8f513
a8f513
* Sat Mar 09 2013 Fabian Affolter <mail@fabian-affolter.ch> - 2.3.0-1
a8f513
- Update to new upstream version 2.3.0
a8f513
a8f513
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2.0-2
a8f513
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
a8f513
a8f513
* Wed Aug 29 2012 Fabian Affolter <mail@fabian-affolter.ch> - 2.2.0-1
a8f513
- Update to new upstream version 2.2.0
a8f513
a8f513
* Sat Jul 21 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.1.0-3
a8f513
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
a8f513
a8f513
* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.1.0-2
a8f513
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
a8f513
a8f513
* Sat Sep 10 2011 Fabian Affolter <mail@fabian-affolter.ch> - 2.1.0-1
a8f513
- Update to new upstream version 2.1.0
a8f513
a8f513
* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.0.1-2
a8f513
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
a8f513
a8f513
* Mon Aug 23 2010 Chen Lei <supercyper@163.com> - 2.0.1-1
a8f513
- new release 2.0.1
a8f513
a8f513
* Wed Aug 11 2010 David Malcolm <dmalcolm@redhat.com> - 2.0.0-2.final.0
a8f513
- recompiling .py files against Python 2.7 (rhbz#623357)
a8f513
a8f513
* Thu Jul 08 2010 Chen Lei <supercyper@163.com> - 2.0.0-1.final.0
a8f513
- new release 2.0.0.final.0
a8f513
a8f513
* Sun Jul 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.2.0-3
a8f513
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
a8f513
a8f513
* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.2.0-2
a8f513
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
a8f513
a8f513
* Thu Dec 25 2008 Alex Lancaster <alexlan[AT]fedoraproject org> - 1.2.0-1
a8f513
- Update to 1.2.0 to fix problems with Python 2.6 (#475903)
a8f513
  (currently causing broken deps with other packages)
a8f513
a8f513
* Thu Dec 18 2008 Gerard Milmeister <gemi@bluewin.ch> - 1.1.0-1
a8f513
- new release 1.1.0
a8f513
a8f513
* Fri Sep  5 2008 Gerard Milmeister <gemi@bluewin.ch> - 1.0.0-1.d20080826
a8f513
- new release 1.0.0
a8f513
a8f513
* Sun Aug  3 2008 Gerard Milmeister <gemi@bluewin.ch> - 0.98.5-1
a8f513
- new release 0.98.5
a8f513
a8f513
* Sun Jun  1 2008 Gerard Milmeister <gemi@bluewin.ch> - 0.98.4-2
a8f513
- added buildreq sed
a8f513
a8f513
* Sat May 31 2008 Gerard Milmeister <gemi@bluewin.ch> - 0.98.4-1
a8f513
- new release 0.98.4
a8f513
a8f513
* Sun May  4 2008 Gerard Milmeister <gemi@bluewin.ch> - 0.98.3-2
a8f513
- changed shebang line of scripts
a8f513
a8f513
* Sun May  4 2008 Gerard Milmeister <gemi@bluewin.ch> - 0.98.3-1
a8f513
- new release 0.98.3
a8f513
a8f513
* Sat Apr 19 2008 Gerard Milmeister <gemi@bluewin.ch> - 0.98.1-1
a8f513
- new release 0.98.1
a8f513
a8f513
* Sat Apr  5 2008 Gerard Milmeister <gemi@bluewin.ch> - 0.98-1
a8f513
- new release 0.98
a8f513
a8f513
* Mon May 21 2007 Gerard Milmeister <gemi@bluewin.ch> - 0.97-1
a8f513
- new version 0.97
a8f513
a8f513
* Thu May 10 2007 Gerard Milmeister <gemi@bluewin.ch> - 0.96.96-1
a8f513
- new version 0.96.96
a8f513
a8f513
* Mon Aug 28 2006 Gerard Milmeister <gemi@bluewin.ch> - 0.96.1-3
a8f513
- Rebuild for FE6
a8f513
a8f513
* Sat Jun 18 2005 Gerard Milmeister <gemi@bluewin.ch> - 0.96.1-1
a8f513
- New Version 0.96.1
a8f513
a8f513
* Thu Apr  7 2005 Michael Schwendt <mschwendt[AT]users.sf.net>
a8f513
- rebuilt
a8f513
a8f513
* Tue Jan 25 2005 Thorsten Leemhuis <fedora[AT]leemhuis[DOT]info> 0.96-4
a8f513
- Place libs in {_prefix}/lib/ and not in {libdir}; fixes x86_64 problems
a8f513
- Adjust minor bits to be in sync with python-spec-template