eb65a47
Name:           player
b5aac83
Version:        3.0.2
3b1fc0f
Release:        29%{?dist}
eb65a47
Summary:        Cross-platform robot device interface and server
eb65a47
eb65a47
Group:          Applications/System
eb65a47
License:        GPLv2+ and LGPLv2+
eb65a47
URL:            http://playerstage.sourceforge.net
92aef8b
Source0:        http://downloads.sourceforge.net/project/playerstage/Player/%{version}/%{name}-%{version}.tar.gz
eb65a47
Source1:        playernav.desktop 
eb65a47
Source2:        playercam.desktop 
eb65a47
Source3:        playerv.desktop 
e4e5898
# This patch adds a search directory for plugin libraries, proposed at http://old.nabble.com/Proposal%3A-Plugin-locations-for-Player-and-Stage-ts26868070.html 
b5aac83
Patch0:         %{name}-3.0.1.fixlibload.patch
b5aac83
Patch1:         %{name}-3.0.2.fixunicapimage.patch
b5aac83
Patch2:         %{name}-3.0.2.fixlinuxwifi.patch
de79654
Patch3:         %{name}-3.0.2.fixplayercam.patch
de79654
Patch4:         %{name}-3.0.2.enablephidget.patch
5be65a6
Patch5:         %{name}-3.0.2.s390x.patch
2e046e6
Patch6:         %{name}-3.0.2.boostutc.patch
2e046e6
Patch7:         %{name}-3.0.2.gzfile.patch
2fa7165
Patch8:         %{name}-3.0.2.gbx10.patch
0c9dcfc
Patch9:         %{name}-3.0.2.boost150.patch
5fe198a
Patch10:        %{name}-3.0.2.phidgetrfid.patch
eb65a47
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
eb65a47
92aef8b
# Sort order: build tools, feature libs, within alphabetically, group related
92aef8b
# entries on single line (most dominant lib first or alphabetically)
92aef8b
92aef8b
# Build tools
92aef8b
BuildRequires:  cmake
92aef8b
BuildRequires:  desktop-file-utils
43a0569
BuildRequires:  doxygen, texlive-latex, texlive, texlive-dvips, latex2html
0d3b267
BuildRequires:  libtool, libtool-ltdl-devel
92aef8b
# Libs to enable Player features
eb65a47
BuildRequires:  alsa-lib-devel
92aef8b
BuildRequires:  avahi-compat-howl-devel
e4e5898
BuildRequires:  boost-devel boost-thread
92aef8b
BuildRequires:  festival-devel
345c5d8
BuildRequires:  flexiport-devel
2fa7165
BuildRequires:  hokuyoaist-devel
92aef8b
BuildRequires:  geos-devel
eb65a47
BuildRequires:  gsl-devel
b5aac83
BuildRequires:  gstreamer-devel
eb65a47
BuildRequires:  gtk2-devel, libgnomecanvas-devel
215525c
%ifnarch s390 s390x
92aef8b
BuildRequires:  libdc1394-devel, libraw1394-devel
215525c
%endif
92aef8b
BuildRequires:  libjpeg-devel
de79654
BuildRequires:  libphidget-devel
92aef8b
BuildRequires:  libpqxx-devel
92aef8b
BuildRequires:  libstatgrab-devel
dd46ebd
BuildRequires:  libusb-devel
b5aac83
BuildRequires:  libXext-devel
97a03af
BuildRequires:  mesa-libGL-devel, mesa-libGLU-devel
92aef8b
BuildRequires:  opencv-devel
92aef8b
BuildRequires:  openssl-devel
92aef8b
BuildRequires:  perl
c49add7
BuildRequires:  python, python-devel 
c49add7
BuildRequires:  swig
92aef8b
BuildRequires:  ruby, ruby-devel
eb65a47
BuildRequires:  zlib-devel
eb65a47
eb65a47
%description
eb65a47
Player is a network server for robot control. Running on your robot, Player
eb65a47
provides a clean and simple interface to the robot's sensors and actuators
eb65a47
over the IP network. Your client program talks to Player over a TCP socket,
eb65a47
reading data from sensors, writing commmands to actuators, and configuring
eb65a47
devices on the fly. Player supports a variety of robot hardware.
eb65a47
eb65a47
eb65a47
%package devel
eb65a47
Summary: Header files and libraries for %{name}
eb65a47
Group: Development/Libraries
eb65a47
Requires: %{name} = %{version}-%{release}
92aef8b
Requires: pkgconfig cmake
4d77220
Requires: boost-devel
4d77220
Requires: geos-devel
4d77220
Requires: libtool-ltdl-devel
4d77220
Requires: zlib-devel
9246d35
Obsoletes: player-static < 3.0.0
eb65a47
eb65a47
%description devel
eb65a47
This package contains the header files and libraries
eb65a47
for %{name}. If you like to develop programs using %{name},
eb65a47
you will need to install %{name}-devel.
eb65a47
eb65a47
%package doc
eb65a47
Summary: Development documentation for Player
eb65a47
Group: Documentation
92aef8b
BuildArch: noarch
eb65a47
eb65a47
%description doc
eb65a47
This package contains the development documentation for Player.
eb65a47
eb65a47
%package python
eb65a47
Summary: Player Python bindings
eb65a47
Group: Development/Libraries
eb65a47
Requires: %{name} = %{version}-%{release}
92aef8b
Requires: python >= 2.6
eb65a47
eb65a47
%description python
eb65a47
This package contains the Python bindings for %{name}.
eb65a47
If you like to develop programs using %{name} in Python
92aef8b
you will need to install this package. Includes bindings
92aef8b
built against the C and C++ client libraries.
eb65a47
eb65a47
%package examples
92aef8b
Summary:  Examples and templates for Player
eb65a47
Group:    Development/Tools
eb65a47
Requires: %{name} = %{version}-%{release}
92aef8b
BuildArch: noarch
eb65a47
eb65a47
%description examples
92aef8b
This package contains example code for %{name} development.
92aef8b
Included are sample plugin drivers, and examples made using
92aef8b
the python, C, and C++ client libraries.
eb65a47
92aef8b
%package ruby
92aef8b
Summary: Ruby bindings for %{name}
eb65a47
Group: Development/Libraries
92aef8b
Requires: %{name} = %{version}-%{release}
92aef8b
Requires: ruby >= 1.8
eb65a47
92aef8b
%description ruby
92aef8b
This package contains the Ruby client-side bindings for %{name}.
92aef8b
If you would like to build %{name} clients using Ruby you
92aef8b
will need to install this package.  Includes bindings built
92aef8b
against the C and C++ client libraries. Ruby bindings
92aef8b
are experimental.
eb65a47
eb65a47
eb65a47
%prep
eb65a47
%setup -q -n %{name}-%{version}
e4e5898
%patch0 -p1 -b .fixlibload
b5aac83
%patch1 -p0 
b5aac83
%patch2 -p0 
de79654
%patch3 -p0
de79654
%patch4 -p0
5be65a6
%patch5 -p1 -b .s390x
2e046e6
%patch6 -p0
2e046e6
%patch7 -p0
2fa7165
%patch8 -p2 -b .gbx10
0c9dcfc
%patch9 -p2 -b .boost150
5fe198a
%patch10 -p0 -b .phidgetrfid
92aef8b
find . -name '*.c' -exec chmod -x {} \;
92aef8b
find . -name '*.cc' -exec chmod -x {} \;
92aef8b
find . -name '*.cpp' -exec chmod -x {} \;
92aef8b
find . -name '*.h' -exec chmod -x {} \;
eb65a47
eb65a47
%build
00f4650
export LDFLAGS="%{?__global_ldflags} -lpthread"
2fa7165
%cmake %{?_cmake_skip_rpath} -DBUILD_DOCUMENTATION=ON -DBUILD_PLAYERCC=ON -DSWIG_EXECUTABLE=/usr/bin/swig -DBUILD_PLAYERCC_BOOST=ON -DBUILD_PYTHONC_BINDINGS=ON -DBUILD_PYTHONCPP_BINDINGS=ON -DBUILD_EXAMPLES=ON -DBUILD_RUBYCPP_BINDINGS=ON -DBoost_USE_MULTITHREAD=ON -DUNICAP_DIR=/usr  -DRUBY_BINDINGS_INSTALL_DIR=%{ruby_vendorarchdir} .
eb65a47
make
de79654
make doc
de79654
#pushd doc
de79654
#doxygen player.dox
de79654
#popd
eb65a47
eb65a47
%install
eb65a47
rm -rf $RPM_BUILD_ROOT
eb65a47
make install DESTDIR=$RPM_BUILD_ROOT
92aef8b
mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/%{name}
e4e5898
mkdir -p $RPM_BUILD_ROOT/%{_libdir}/%{name}
92aef8b
mv $RPM_BUILD_ROOT/%{_datadir}/%{name}/config $RPM_BUILD_ROOT/%{_sysconfdir}/%{name}
eb65a47
find $RPM_BUILD_ROOT -name '*.la' -exec rm {} \;
2e046e6
rm -rf $RPM_BUILD_ROOT/%{_docdir}/*
0d3b267
58cc85d
desktop-file-install \
58cc85d
%if 0%{?fedora} && 0%{?fedora} < 19
58cc85d
--vendor="fedora"               \
58cc85d
%endif
eb65a47
--dir=${RPM_BUILD_ROOT}%{_datadir}/applications         \
eb65a47
%{SOURCE1}
eb65a47
58cc85d
desktop-file-install \
58cc85d
%if 0%{?fedora} && 0%{?fedora} < 19
58cc85d
--vendor="fedora"               \
58cc85d
%endif
eb65a47
--dir=${RPM_BUILD_ROOT}%{_datadir}/applications         \
eb65a47
%{SOURCE2}
eb65a47
58cc85d
desktop-file-install \
58cc85d
%if 0%{?fedora} && 0%{?fedora} < 19
58cc85d
--vendor="fedora"               \
58cc85d
%endif
eb65a47
--dir=${RPM_BUILD_ROOT}%{_datadir}/applications         \
eb65a47
%{SOURCE3}
eb65a47
eb65a47
%clean
eb65a47
rm -rf $RPM_BUILD_ROOT
eb65a47
eb65a47
eb65a47
%post -p /sbin/ldconfig
eb65a47
eb65a47
%postun -p /sbin/ldconfig
eb65a47
eb65a47
%files
eb65a47
%defattr(-,root,root,-)
eb65a47
%doc COPYING COPYING.lib README AUTHORS
c49add7
%dir %{_sysconfdir}/%{name}
92aef8b
%config(noreplace) %{_sysconfdir}/%{name}/config/*
eb65a47
%{_bindir}/player*
eb65a47
%{_bindir}/pmaptest
eb65a47
%{_libdir}/*.so.*
eb65a47
%dir %{_datadir}/player
eb65a47
%{_datadir}/applications/*.desktop
e4e5898
%dir %{_libdir}/player
eb65a47
eb65a47
%files devel
eb65a47
%defattr(-,root,root,-)
92aef8b
%{_includedir}/player-3.0
eb65a47
%{_libdir}/*.so
eb65a47
%{_libdir}/pkgconfig/*
92aef8b
%{_datadir}/cmake/Modules/*
92aef8b
92aef8b
%files python
92aef8b
%defattr(-,root,root,-)
92aef8b
%{python_sitearch}/*
eb65a47
eb65a47
%files examples
eb65a47
%defattr(-,root,root,-)
92aef8b
%{_datadir}/player/examples
eb65a47
eb65a47
%files doc
eb65a47
%defattr(-,root,root,-)
97a03af
%doc COPYING
97a03af
%doc COPYING.lib
eb65a47
%doc doc/*.txt
eb65a47
%doc doc/*.html
eb65a47
%doc doc/player-docs
eb65a47
92aef8b
%files ruby
92aef8b
%defattr (-,root,root,-)
2e046e6
%{ruby_vendorarchdir}/*.so
eb65a47
eb65a47
%changelog
3b1fc0f
* Mon Mar 25 2013 Vít Ondruch <vondruch@redhat.com> - 3.0.2-29
3b1fc0f
- Rebuild for https://fedoraproject.org/wiki/Features/Ruby_2.0.0
3b1fc0f
58cc85d
* Wed Mar  6 2013 Toshio Kuratomi <toshio@fedoraproject.org> - 3.0.2-28
58cc85d
- Remove vendor prefix from desktop files in F19+ https://fedorahosted.org/fesco/ticket/1077
00f4650
- Add libpthread to be linked explicitly so that build succeeds
58cc85d
240d8ed
* Wed Mar 06 2013 Devrim GÜNDÜZ <devrim@gunduz.org> - 3.0.2-27
240d8ed
- Rebuild with new geos.
240d8ed
36a7b4d
* Sun Feb 10 2013 Denis Arnaud <denis.arnaud_fedora@m4x.org> - 3.0.2-26
36a7b4d
- Rebuild for Boost-1.53.0
36a7b4d
cd98a0d
* Sat Feb 09 2013 Denis Arnaud <denis.arnaud_fedora@m4x.org> - 3.0.2-25
cd98a0d
- Rebuild for Boost-1.53.0
cd98a0d
5fe198a
* Sat Jan 26 2013 Rich Mattes <richmattes@gmain.com> - 3.0.2-24
5fe198a
- Update for new phidget RFID API
5fe198a
e16373e
* Fri Jan 25 2013 Devrim GÜNDÜZ <devrim@gunduz.org> - 3.0.2-24
e16373e
- Rebuild against geos 3.3.7.
e16373e
Adam Tkac d6dacb5
* Mon Jan 21 2013 Adam Tkac <atkac redhat com> - 3.0.2-23
Adam Tkac d6dacb5
- rebuild due to "jpeg8-ABI" feature drop
Adam Tkac d6dacb5
75fc31d
* Mon Nov 19 2012 Devrim GÜNDÜZ <devrim@gunduz.org> - 3.0.2-22
75fc31d
- Rebuild with new geos.
75fc31d
63431b5
* Sat Nov 10 2012 Rich Mattes <richmattes@gmail.com> - 3.0.2-21
63431b5
- Rebuild for new OpenCV
63431b5
2fa7165
* Mon Jul 30 2012 Rich Mattes <richmattes@gmail.com> - 3.0.2-20
2fa7165
- Added dependency on hokuyoaist library
2fa7165
- Added dependency on flexiport library
2fa7165
- Fixed hokuyoaist driver to work with hokuyoaist library
2fa7165
- Removed gearbox dependency
0c9dcfc
- Updated for boost-1.5.0
2fa7165
117aad6
* Sat Jul 21 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.0.2-19
117aad6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
117aad6
2e046e6
* Sat Jun 30 2012 Rich Mattes <richmattes@gmail.com> - 3.0.2-18
2e046e6
- boost::TIME_UTC no longer defined, use glibc's instead
2e046e6
- cast FILE* to gzFile for gzip functions
2e046e6
- Fix bug where docs were being included in both base and -doc subpackages
2e046e6
ea05d72
* Tue Feb 28 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.0.2-17
ea05d72
- Rebuilt for c++ ABI breakage
ea05d72
a34d4c6
* Wed Jan 11 2012 Rich Mattes <richmattes@gmail.com> - 3.0.2-16
a34d4c6
- Rebuild for new gcc and geos
a34d4c6
f008cc5
* Sat Nov 26 2011 Rich Mattes <richmattes@gmail.com> - 3.0.2-15
f008cc5
- Rebuilt for new boost
f008cc5
5a7397e
* Sun Oct 09 2011 Rich Mattes <richmattes@gmail.com> - 3.0.2-14
5a7397e
- Rebuild for geos update
5a7397e
5558c5c
* Wed Aug 31 2011 Rex Dieter <rdieter@fedoraproject.org> 3.0.2-13
5558c5c
- rebuild (opencv)
5558c5c
65a1310
* Tue Aug 02 2011 Rich Mattes <richmattes@gmail.com> - 3.0.2-12
65a1310
- Rebuild for new boost
65a1310
b2bb095
* Fri Jul 01 2011 Andreas Bierfert <andreas.bierfert[AT]lowlatency.de>
b2bb095
- 3.0.2-11
b2bb095
- bump for libpqxx
b2bb095
- disable rapth
b2bb095
dffd7c0
* Sun Jun 19 2011 Rich Mattes <richmattes@gmail.com> - 3.0.2-10
c49add7
- Rebuild for geos update
c49add7
5be65a6
* Wed May 04 2011 Dan Horák <dan[at]danny.cz> - 3.0.2-9
5be65a6
- Add s390x as 64-bit arch
5be65a6
b72eb7b
* Sun Apr 10 2011 Rich Mattes <richmattes@gmail.com> - 3.0.2-8
b72eb7b
- Rebuild for boost soname change
b72eb7b
5271e35
* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.0.2-7
5271e35
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
5271e35
d52c51b
* Mon Feb 07 2011 Thomas Spura <tomspur@fedoraproject.org> - 3.0.2-6
d52c51b
- rebuild for new boost
d52c51b
de79654
* Sat Jan 08 2011 Rich Mattes <richmattes@gmail.com> - 3.0.2-5
de79654
- Rebuild for OpenCV 2.2
de79654
- Fix assertion error in PlayerCam
de79654
- Enable libphidget support
de79654
Rich Mattes f321b20
* Fri Jul 30 2010 Rich Mattes <richmattes@gmail.com> - 3.0.2-4
Rich Mattes f321b20
- Rebuilt for boost 1.44
Rich Mattes f321b20
97a03af
* Mon Jul 26 2010 Rich Mattes <richmattes@gmail.com> - 3.0.2-3
97a03af
- Rebuilt for Python 2.7 mass rebuild
97a03af
- Restore pmaptest
97a03af
- Add copyright files to player-doc subpackage
97a03af
571c8e7
* Wed Jul 21 2010 David Malcolm <dmalcolm@redhat.com> - 3.0.2-2
571c8e7
- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild
571c8e7
b5aac83
* Tue Jun 29 2010 Rich Mattes <richmattes@gmail.com> - 3.0.2-1
b5aac83
- Upgrade to release 3.0.2
b5aac83
- Remove more supurious BuildRequires
b5aac83
- Add BuildRequires to enable more features
b5aac83
5fe198a
* Sat Jun 26 2010 Rich Mattes <richmattes@gmail.com> - 3.0.1-7
05520b9
- Rebuild for OpenCV soname change
05520b9
- Remove unnecessary BuildRequires
05520b9
dd46ebd
* Thu Apr 1 2010 Rich Mattes <richmattes@gmail.com> - 3.0.1-6
dd46ebd
- Rebuild for GEOS soname change
dd46ebd
4d77220
* Wed Mar 24 2010 Rich Mattes <richmattes@gmail.com> - 3.0.1-5
4d77220
- Rebuild for Gearbox drivers
4d77220
- Added missing Requires for devel package
4d77220
5fe198a
* Mon Mar 01 2010 Tim Niemueller <tim@niemueller.de> - 3.0.1-4
1fd9b63
- Bump EVR for proper F-12 to F-13 upgrade path
1fd9b63
123100b
* Fri Jan 22 2010 Rahul Sundaram <sundaram@fedoraproject.org> - 3.0.1-2
123100b
- Rebuild for Boost soname bump
123100b
e4e5898
* Sun Jan 10 2010 Rich Mattes <richmattes@gmail.com> - 3.0.1-1
e4e5898
- Updated to release 3.0.1
e4e5898
- Fixed ruby bindings install path
e4e5898
- Fixed documentation build process
e4e5898
- Added libdir/player to plugin search path
e4e5898
- Fix Rawhide compilation issue by adding -DBoost_USE_MULTITHREAD=ON to cmake
e4e5898
9246d35
* Sun Nov 08 2009 Tim Niemueller <tim@niemueller.de> - 3.0.0-4
9246d35
- devel sub-package obsoletes no longer available static sub-package
9246d35
92aef8b
* Sun Oct 18 2009 Tim Niemueller <tim@niemueller.de> - 3.0.0-3
92aef8b
- Merge Rich's changes with Fedora spec file
92aef8b
92aef8b
* Sat Oct 10 2009 Rich Mattes <richmattes@gmail.com> - 3.0.0-2
92aef8b
- Fixed x86_64 build issues
92aef8b
- Fixed x86_64 library install path
92aef8b
- Fixed mock i586 and x86_64 dep issues
92aef8b
- Enabled Python C++ and Ruby C++ bindings
92aef8b
- Made doc and examples packages .noarch
92aef8b
92aef8b
* Wed Oct 7 2009 Rich Mattes <richmattes@gmail.com> - 3.0.0-1
92aef8b
- Upgrade package to Player 3.0.0
92aef8b
9d28c9e
* Fri Aug 21 2009 Tomas Mraz <tmraz@redhat.com> - 2.1.1-13
9d28c9e
- rebuilt with new openssl
9d28c9e
88f37d9
* Sun Jul 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.1.1-12
88f37d9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
88f37d9
b3017ac
* Tue May 26 2009 Michael Schwendt <mschwendt@fedoraproject.org> - 2.1.1-11
b3017ac
- Exclude -examples subpackage files in main package (#489184).
b3017ac
4169bfb
* Thu Feb 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.1.1-10
4169bfb
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
4169bfb
600d153
* Sat Jan 17 2009 Tomas Mraz <tmraz@redhat.com> - 2.1.1-9
600d153
- rebuild with new openssl
600d153
2f16550
* Sun Dec 21 2008 Tim Niemueller <tim@niemueller.de> - 2.1.1-8
2f16550
- Add patch for broken linux/serial.h (thanks to Caolán McNamara)
2f16550
- Add patch for GCC 4.4 (thanks to Caolán McNamara)
2f16550
- Rebuild for Python 2.6
2f16550
b2a6525
* Sat Dec  6 2008 Ignacio Vazquez-Abrams <ivazqueznet+rpm@gmail.com> - 2.1.1-7
b2a6525
- Fix libtool issue
b2a6525
0c5772a
* Sat Nov 29 2008 Ignacio Vazquez-Abrams <ivazqueznet+rpm@gmail.com> - 2.1.1-6
0c5772a
- Rebuild for Python 2.6
0c5772a
0d3b267
* Tue Sep 02 2008 Tim Niemueller <tim@niemueller.de> - 2.1.1-5
0d3b267
- Added plugindir patch
0d3b267
0d3b267
* Fri Aug 15 2008 Tim Niemueller <tim@niemueller.de> - 2.1.1-4
0d3b267
- Changed norpath patch, fixes build problem on Fedora 8
0d3b267
- Added libtool BR
0d3b267
- Added autotools BR, needed because for patches of .am files
0d3b267
5fe198a
* Fri Aug 08 2008 Jef Spaleta <jspaleta at fedoraproject dot org> - 2.1.1-3
eb65a47
- Review clean-ups
eb65a47
eb65a47
* Tue Aug 05 2008 Tim Niemueller <tim@niemueller.de> - 2.1.1-2
eb65a47
- Only BR geos-devel on Fedora 9
eb65a47
eb65a47
* Fri Aug 01 2008 Tim Niemueller <tim@niemueller.de> - 2.1.1-1
eb65a47
- Upgrade to 2.1.1
eb65a47
eb65a47
* Mon Jun 23 2008 Jef Spaleta <jspaleta at fedoraproject dot org> - 2.1.0-0.3.rc2.fc9
eb65a47
- Review clean-ups
eb65a47
eb65a47
* Thu May 22 2008 Tim Niemueller <tim@niemueller.de> - 2.1.0-0.2.rc2.fc9
eb65a47
- Added subpackages for doc and examples
eb65a47
- Remove *.la files
eb65a47
- Fix BuildRequires
eb65a47
eb65a47
* Thu May 08 2008 Tim Niemueller <tim@niemueller.de> - 2.1.0-0.1.rc2.fc9
eb65a47
- Initial spec file
eb65a47