a815645
%if 0%{?fedora} > 12
a815645
%global with_python3 1
a815645
%else
a815645
%{!?__python2: %global __python2 /usr/bin/python2}
a815645
%{!?python2_sitelib: %global python2_sitelib %(%{__python2} -c "from distutils.sysconfig import get_python_lib; print (get_python_lib())")}
a815645
%endif
a815645
7e85a74
%global commit fcfad8f2070e326192c0f50546fc2d40b05a4008
5dc58d4
%global shortcommit %(c=%{commit}; echo ${c:0:7})
2a7b6fb
%global srcname rospkg
f680e80
2a7b6fb
Name:           python-%{srcname}
7e85a74
Version:        1.1.0
c4c316b
Release:        2%{?dist}
f680e80
Summary:        Utilities for ROS package, stack, and distribution information
f680e80
f680e80
License:        BSD
f680e80
URL:            http://ros.org/wiki/rospkg
2a7b6fb
Source0:        https://github.com/ros-infrastructure/%{srcname}/archive/%{commit}/%{srcname}-%{commit}.tar.gz
f680e80
BuildArch:      noarch
f680e80
cef9eae
BuildRequires:  python2-devel
cef9eae
BuildRequires:  python-setuptools
cef9eae
BuildRequires:  python-catkin-sphinx
b71cdf1
%if 0%{?rhel} && 0%{?rhel} < 7
b71cdf1
BuildRequires:  python-sphinx10
b71cdf1
BuildRequires:  python-nose1.1
b71cdf1
%else
f680e80
BuildRequires:  python-sphinx
b71cdf1
BuildRequires:  python-nose
b71cdf1
%endif
67a35fc
BuildRequires:  PyYAML
9ce7183
BuildRequires:  python-mock
9ce7183
BuildRequires:  python-coverage
cef9eae
f680e80
4f1ca62
%description
4f1ca62
The ROS packaging system simplifies development and distribution of code
4f1ca62
libraries. It enables you to easily specify dependencies between code
4f1ca62
libraries, easily interact with those libraries from the command-line, and
4f1ca62
release your code for others to use.
4f1ca62
2a7b6fb
2a7b6fb
%package -n python2-%{srcname}
242777f
Summary:        Utilities for ROS package, stack, and distribution information
2a7b6fb
%{?python_provide:%python_provide python2-%{srcname}}
0ce3e1c
Requires:       PyYAML
2a7b6fb
2a7b6fb
%description -n python2-%{srcname}
2a7b6fb
The ROS packaging system simplifies development and distribution of code
2a7b6fb
libraries. It enables you to easily specify dependencies between code
2a7b6fb
libraries, easily interact with those libraries from the command-line, and
2a7b6fb
release your code for others to use.
2a7b6fb
b71cdf1
%if 0%{?with_python3}
2a7b6fb
%package -n python3-%{srcname}
b71cdf1
Summary:        Utilities for ROS package, stack, and distribution information
b71cdf1
b71cdf1
BuildRequires:  python3-coverage
b71cdf1
BuildRequires:  python3-devel
b71cdf1
BuildRequires:  python3-mock
b71cdf1
BuildRequires:  python3-nose
b71cdf1
BuildRequires:  python3-PyYAML
b71cdf1
BuildRequires:  python3-setuptools
b71cdf1
BuildRequires:  python3-sphinx
3b25d80
BuildRequires:  python3-catkin-sphinx
b71cdf1
Requires:       python3-PyYAML
b71cdf1
2a7b6fb
%description -n python3-%{srcname}
b71cdf1
The ROS packaging system simplifies development and distribution of code
b71cdf1
libraries. It enables you to easily specify dependencies between code
b71cdf1
libraries, easily interact with those libraries from the command-line, and
f680e80
release your code for others to use.
2a7b6fb
b71cdf1
%endif
f680e80
f680e80
%prep
2a7b6fb
%setup -qn %{srcname}-%{commit}
b71cdf1
b71cdf1
%if 0%{?with_python3}
b71cdf1
rm -rf %{py3dir}
b71cdf1
cp -a . %{py3dir}
b71cdf1
find %{py3dir} -name '*.py' | xargs sed -i '1s|^#!python|#!%{__python3}|'
cef9eae
%endif
b71cdf1
b71cdf1
find -name '*.py' | xargs sed -i '1s|^#!python|#!%{__python2}|'
f680e80
f680e80
%build
cef9eae
%{__python2} setup.py build
b71cdf1
%if 0%{?rhel} && 0%{?rhel} < 7
b71cdf1
make -C doc html man SPHINXBUILD=sphinx-1.0-build
b71cdf1
%else
b71cdf1
make -C doc html man
b71cdf1
%endif
cef9eae
rm -f doc/_build/html/.buildinfo
cef9eae
b71cdf1
%if 0%{?with_python3}
b71cdf1
pushd %{py3dir}
b71cdf1
%{__python3} setup.py build
b71cdf1
# TODO: Disabled until python3-catkin-sphinx is built
b71cdf1
#make -C doc html man SPHINXBUILD=sphinx-build-%{python3_version}
b71cdf1
pushd build/scripts-%{python3_version}
b71cdf1
for f in *; do mv $f python3-$f; done
b71cdf1
popd
b71cdf1
popd
b71cdf1
%endif
b71cdf1
cef9eae
%check
cef9eae
# Tests expect the base folder name to be 'rospkg', so move the source folder
cef9eae
cd ..
7e85a74
mv %{srcname}-%{commit} %{srcname}/
2a7b6fb
cd %{srcname}
cef9eae
# Run the nosetests
b71cdf1
%if 0%{?rhel} && 0%{?rhel} < 7
b71cdf1
LANG=en_US.utf8 PYTHONPATH=%{buildroot}%{python2_sitelib} nosetests1.1 -w test
b71cdf1
%else
b71cdf1
LANG=en_US.utf8 PYTHONPATH=%{buildroot}%{python2_sitelib} nosetests -w test
b71cdf1
%endif
cef9eae
# Put the source folder back to its original name
cef9eae
cd ..
2a7b6fb
mv %{srcname} %{srcname}-%{commit}
2a7b6fb
cd %{srcname}-%{commit}
f680e80
b71cdf1
%if 0%{?with_python3}
b71cdf1
# Tests expect the base folder name to be 'rospkg', so move the source folder
b71cdf1
cd ..
2a7b6fb
mv %{py3dir} %{srcname}
2a7b6fb
cd %{srcname}
b71cdf1
# Run the nosetests
b71cdf1
LANG=en_US.utf8 PYTHONPATH=%{buildroot}%{python3_sitelib} nosetests-%{python3_version} -w test
b71cdf1
# Put the source folder back to its original name
b71cdf1
cd ..
2a7b6fb
mv %{srcname} %{py3dir}
b71cdf1
cd %{py3dir}
b71cdf1
%endif
b71cdf1
f680e80
%install
f680e80
rm -rf $RPM_BUILD_ROOT
cef9eae
%{__python2} setup.py install --skip-build --root $RPM_BUILD_ROOT
2a7b6fb
mkdir -p $RPM_BUILD_ROOT%{_datadir}/%{srcname}
2a7b6fb
install -p -m 0644 manifest.xml $RPM_BUILD_ROOT%{_datadir}/%{srcname}
f680e80
mkdir -p $RPM_BUILD_ROOT%{_mandir}/man1
f680e80
install -p -m 0644 doc/man/rosversion.1 $RPM_BUILD_ROOT%{_mandir}/man1
f680e80
2a7b6fb
sed -i 's|#!/usr/bin/env python||' $RPM_BUILD_ROOT%{python_sitelib}/%{srcname}/*.py
f680e80
b71cdf1
%if 0%{?with_python3}
b71cdf1
pushd %{py3dir}
b71cdf1
%{__python3} setup.py install --skip-build --root %{buildroot}
b71cdf1
popd
b71cdf1
%endif
b71cdf1
2a7b6fb
%files -n python2-%{srcname}
cef9eae
%doc doc/_build/html
b71cdf1
%{_bindir}/rosversion
2a7b6fb
%{python2_sitelib}/%{srcname}-%{version}-py?.?.egg-info
2a7b6fb
%{python2_sitelib}/%{srcname}
f680e80
%{_mandir}/man1/*.gz
2a7b6fb
%{_datadir}/%{srcname}
f680e80
b71cdf1
%if 0%{?with_python3}
2a7b6fb
%files -n python3-%{srcname}
b71cdf1
%doc doc/_build/html
b71cdf1
%{_bindir}/python3-rosversion
2a7b6fb
%{python3_sitelib}/%{srcname}-%{version}-py?.?.egg-info
2a7b6fb
%{python3_sitelib}/%{srcname}
b71cdf1
%endif
b71cdf1
f680e80
%changelog
c4c316b
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.0-2
c4c316b
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
c4c316b
7e85a74
* Sun Apr 09 2017 Rich Mattes <richmattes@gmail.com> - 1.1.0-1
7e85a74
- Update to release 1.1.0 (rhbz#1425997)
7e85a74
882844f
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.41-2
882844f
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
882844f
b0c08ea
* Wed Dec 21 2016 Rich Mattes <richmattes@gmail.com> - 1.0.41-1
b0c08ea
- Update to release 1.0.41 (rhbz#1329031)
b0c08ea
ebbd2bb
* Mon Dec 19 2016 Miro HronĨok <mhroncok@redhat.com> - 1.0.40-2
ebbd2bb
- Rebuild for Python 3.6
ebbd2bb
2a7b6fb
* Mon Sep 26 2016 Rich Mattes <richmattes@gmail.com> - 1.0.40-1
2a7b6fb
- Update to release 1.0.40 (rhbz#1329031)
2a7b6fb
- Remove dependencies on python-argparse
2a7b6fb
735fa57
* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.38-5
735fa57
- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages
735fa57
fc17d0a
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.38-4
fc17d0a
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
fc17d0a
dcee10f
* Thu Dec 10 2015 Rich Mattes <richmattes@gmail.com> - 1.0.38-3
dcee10f
- Add additional architectures to uname test (rhbz#1290136)
dcee10f
56566e7
* Tue Nov 10 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.38-2
56566e7
- Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5
56566e7
1f0eed0
* Tue Oct 20 2015 Rich Mattes <richmattes@gmail.com> - 1.0.38-1
1f0eed0
- Update to release 1.0.38 (rhbz#1270086)
1f0eed0
4f1ca62
* Sun Oct 18 2015 Rich Mattes <richmattes@gmail.com> - 1.0.37-1
4f1ca62
- Update to release 1.0.37 (rhbz#1270086)
4f1ca62
864d330
* Thu Jun 18 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.35-2
864d330
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
864d330
77744b6
* Wed Mar 04 2015 Rich Mattes <richmattes@gmail.com> - 1.0.35-1
77744b6
- Update to release 1.0.35
77744b6
- Remove Fedora 12 spec conditionals
77744b6
94e727d
* Tue Dec 30 2014 Rich Mattes <richmattes@gmail.com> - 1.0.33-1
94e727d
- Update to release 1.0.33
94e727d
- Remove upstreamed patch
94e727d
b71cdf1
* Sat Oct 25 2014 Scott K Logan <logans@cottsay.net> - 1.0.31-1
b71cdf1
- Update to release 1.0.31
b71cdf1
- Fix test failure on PPC
b71cdf1
- Remove argparse patch (fixed upstream)
b71cdf1
- Fix sphinx and nose dependencies in el6
b71cdf1
- Add python3 package
b71cdf1
d9dbb39
* Tue Jul 15 2014 Scott K Logan <logans@cottsay.net> - 1.0.29-1
d9dbb39
- Update to release 1.0.29
d9dbb39
- Fix test failure on ARM
d9dbb39
9528764
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.28-2
9528764
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
9528764
cef9eae
* Wed Apr 16 2014 Rich Mattes <richmattes@gmail.com> - 1.0.28-1
cef9eae
- Update to release 1.0.28
cef9eae
- Remove argparse from python dependency list (rhbz#1088448)
cef9eae
- Add requirement on python-argparse
cef9eae
- Add check section
cef9eae
- Add html documentation
cef9eae
67a35fc
* Fri Apr 04 2014 Scott K Logan <logans@cottsay.net> - 1.0.27-1
67a35fc
- Update to release 1.0.27
67a35fc
- Added PyYAML BuildRequires and Requires
67a35fc
67b57a0
* Sat Feb 08 2014 Rich Mattes <richmattes@gmail.com> - 1.0.26-1
67b57a0
- Update to release 1.0.26
67b57a0
5dc58d4
* Mon Aug 19 2013 Rich Mattes <richmattes@gmail.com> - 1.0.21-1
5dc58d4
- Update to release 1.0.21
5dc58d4
- Update to github sourceurl guidelines
5dc58d4
89ecb5e
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.20-2.20130318git0a4448e
89ecb5e
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
89ecb5e
78ed549
* Mon Mar 18 2013 Rich Mattes <richmattes@gmail.com> - 1.0.20-1.20130318git0a4448e
78ed549
- Update to release 1.0.20
78ed549
9299bc7
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.18-2
9299bc7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
9299bc7
ea48979
* Wed Jan 02 2013 Rich Mattes <richmattes@gmail.com> - 1.0.18-1
ea48979
- Update to version 1.0.18
ea48979
8f93f39
* Fri Oct 26 2012 Rich Mattes <richmattes@gmail.com> - 1.0.10-1
8f93f39
- Update to version 1.0.10
8f93f39
f680e80
* Sat Sep 22 2012 Rich Mattes <richmattes@gmail.com> - 1.0.6-2
f680e80
- Moved build to build section
f680e80
- Finer-grained filenames in files section
f680e80
f680e80
* Sat Jun 16 2012 Rich Mattes <richmattes@gmail.com> - 1.0.6-1
f680e80
- Update to version 1.0.6
f680e80
f680e80
* Sat Jun 02 2012 Rich Mattes <richmattes@gmail.com> - 1.0.3-1
f680e80
- Update to version 1.0.3
f680e80
f680e80
* Wed Apr 25 2012 Rich Mattes <richmattes@gmail.com> - 1.0.2-1
f680e80
- Initial package