]> git.pld-linux.org Git - packages/gpsd.git/blobdiff - gpsd.spec
- release 4 (by relup.sh)
[packages/gpsd.git] / gpsd.spec
index e4430497b266566aecea64bab51e214a8229a3da..523b8f976e4fe0b8f1f37a6d8b93b927f959bda6 100644 (file)
--- a/gpsd.spec
+++ b/gpsd.spec
@@ -1,42 +1,57 @@
 #
-# TODO:
-#      - fix pysitedir???
-#
 # Conditional build:
 %bcond_without dbus    # build without dbus support
-%bcond_without x       # build without X Window System support
+%bcond_without bluez   # build without Bluetooth support
 #
 Summary:       Service daemon for mediating access to a GPS
 Summary(pl.UTF-8):     Oprogramowanie komunikujące się z GPS-em
 Name:          gpsd
-Version:       2.39
-Release:       2
+Version:       3.10
+Release:       4
 License:       BSD
 Group:         Daemons
-Source0:       http://download.berlios.de/gpsd/%{name}-%{version}.tar.gz
-# Source0-md5: 3db437196a6840c252fca99b6c19d4d0
-Patch0:                %{name}-ncurses.patch
-Patch1:                %{name}-udev.patch
-URL:           http://gpsd.berlios.de/
-BuildRequires: autoconf
-BuildRequires: automake
+Source0:       http://download-mirror.savannah.gnu.org/releases/gpsd/%{name}-%{version}.tar.gz
+# Source0-md5: fc5b03aae38b9b5b6880b31924d0ace3
+Patch0:                %{name}-link.patch
+Patch1:                %{name}-qt.patch
+Patch2:                %{name}-desktop.patch
+Patch3:                %{name}-destdir.patch
+URL:           http://www.catb.org/gpsd/
+BuildRequires: QtNetwork-devel >= 4.4
 %if %{with dbus}
 BuildRequires: dbus-devel
 BuildRequires: dbus-glib-devel
 %endif
+%{?with_bluez:BuildRequires:   bluez-libs-devel}
+BuildRequires: docbook-dtd412-xml
+BuildRequires: docbook-style-xsl
+BuildRequires: libcap-devel
+BuildRequires: libstdc++-devel
+BuildRequires: libusb-devel >= 1.0.0
+BuildRequires: libxslt-progs
 BuildRequires: ncurses-devel
-%if %{with x}
-BuildRequires: openmotif-devel
-BuildRequires: xorg-lib-libXaw-devel
-%endif
-BuildRequires: python-devel
+BuildRequires: pkgconfig
+BuildRequires: python-devel >= 1:2.5
+BuildRequires: qt4-qmake >= 4.4
 BuildRequires: rpm-pythonprov
+BuildRequires: scons >= 2.0.1
+BuildRequires: sed >= 4.0
+BuildRequires: xmlto
 Requires:      %{name}-libs = %{version}-%{release}
-Requires:      udev-core >= 1:127
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
-%define                _appdefsdir     /usr/share/X11/app-defaults
-%define                udevdir         /lib/udev
+# libgpsd expects gpsd_report() defined by user
+%define                skip_post_check_so      libgpsd\.so.*
+
+# note: to avoid recompiling/relinking on scons install, whole environment
+# needs to be the same in both build and install sections
+%define scons_env \
+       CC="%{__cc}" \\\
+       CXX="%{__cxx}" \\\
+       CFLAGS="%{rpmcflags}" \\\
+       CXXFLAGS="%{rpmcxxflags}" \\\
+       CPPFLAGS="%{rpmcppflags}" \\\
+       LDFLAGS="%{rpmldflags}"
 
 %description
 gpsd is a service daemon that mediates access to a GPS sensor
@@ -73,6 +88,19 @@ właściwą prędkość, liczbę bitów stopu i protokół. Demon oczekuje
 spokojnie kiedy nie ma klientów i radzi sobie dobrze z odłączaniem i
 ponownym podłączaniem GPS-a.
 
+%package -n udev-gpsd
+Summary:       UDEV support for GPS hotplugging
+Summary(pl.UTF-8):     Obsługa UDEV-a do podłączania urządzeń GPS
+Group:         Applications/System
+Requires:      %{name} = %{version}-%{release}
+Requires:      udev-core >= 1:127
+
+%description -n udev-gpsd
+UDEV support for GPS hotplugging.
+
+%description -n udev-gpsd -l pl.UTF-8
+Obsługa UDEV-a do podłączania urządzeń GPS.
+
 %package libs
 Summary:       GPSd client library
 Summary(pl.UTF-8):     Biblioteka kliencka GPSd
@@ -89,6 +117,8 @@ Summary:     Client libraries in C and Python for talking to a running gpsd or GPS
 Summary(pl.UTF-8):     Biblioteki klienckie dla C i Pythona do komunikacji z gpsd lub GPS-em
 Group:         Development/Libraries
 Requires:      %{name}-libs = %{version}-%{release}
+Requires:      libstdc++-devel
+Obsoletes:     gpsd-static
 
 %description devel
 This package provides C header files for the gpsd shared libraries
@@ -100,17 +130,32 @@ Ten pakiet zawiera pliki nagłówkowe C dla bibliotek współdzielonych
 gpsd zarządzających dostępem do GPS-a dla aplikacji, a także moduły
 Pythona. Do działania bibliotek potrzebny jest gpsd.
 
-%package static
-Summary:       Static GPS client library
-Summary(pl.UTF-8):     Statyczna biblioteka kliencka GPS
-Group:         Development/Libraries
+%package qt-libs
+Summary:       GPS Qt4 integration library
+Summary(pl.UTF-8):     Biblioteka integrująca GPS z Qt4
+Group:         X11/Libraries
+Requires:      %{name}-libs = %{version}-%{release}
+Requires:      QtNetwork >= 4.4
+
+%description qt-libs
+GPS Qt4 integration library.
+
+%description qt-libs -l pl.UTF-8
+Biblioteka integrująca GPS z Qt4.
+
+%package qt-devel
+Summary:       Development files for GPS Qt4 integration library
+Summary(pl.UTF-8):     Pliki programistyczne biblioteki integrującej GPS z Qt4
+Group:         X11/Development/Libraries
 Requires:      %{name}-devel = %{version}-%{release}
+Requires:      %{name}-qt-libs = %{version}-%{release}
+Requires:      QtNetwork-devel >= 4.4
 
-%description static
-Static GPS client library.
+%description qt-devel
+Development files for GPS Qt4 integration library.
 
-%description static -l pl.UTF-8
-Statyczna biblioteka kliencka GPS.
+%description qt-devel -l pl.UTF-8
+Pliki programistyczne biblioteki integrującej GPS z Qt4.
 
 %package -n python-gps
 Summary:       Python GPSd client library
@@ -149,7 +194,8 @@ Summary:    Clients for gpsd with an X interface
 Summary(pl.UTF-8):     Aplikacje klienckie z interfejsem X
 Group:         Applications/System
 Requires:      %{name}-libs = %{version}-%{release}
-Requires:      xorg-lib-libXt >= 1.0.0
+Requires:      python-gps = %{version}-%{release}
+Requires:      python-pygtk-gtk >= 2:2.0
 
 %description clients-gui
 xgps is a simple test client for gpsd with an X interface. It displays
@@ -170,123 +216,159 @@ xgpsspeed to prędkościomierz używający informacji o położeniu z GPS-a.
 %setup -q
 %patch0 -p1
 %patch1 -p1
+%patch2 -p1
+%patch3 -p1
 
 %build
-%{__libtoolize}
-%{__aclocal}
-%{__autoconf}
-%{__autoheader}
-%{__automake}
-%configure \
-       %{?with_dbus:--enable-dbus} \
-       %{!?with_x:--without-x}
+%scons_env \
+%scons \
+       libdir=%{_lib} \
+       chrpath=False \
+       shared=True \
+       strip=False \
+       systemd=True \
+       ncurses=True \
+       usb=True \
+       %{!?with_bluez:bluez=False} \
+       %{?with_dbus:dbus_export=True}
 
-%{__make} -j1
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{py_sitedir},%{_datadir}/%{name}}
-install -d $RPM_BUILD_ROOT{%{udevdir},/etc/{udev/rules.d,sysconfig}}
 
-%{__make} -j1 install \
-       DESTDIR=$RPM_BUILD_ROOT
+%scons_env \
+DESTDIR=$RPM_BUILD_ROOT \
+%scons udev-install
 
-install gpsd.hotplug gpsd.hotplug.wrapper $RPM_BUILD_ROOT%{udevdir}
-install        gpsd.udev $RPM_BUILD_ROOT/etc/udev/rules.d/25-gpsd.rules
-install        gpsd.sysconfig $RPM_BUILD_ROOT/etc/sysconfig/gpsd
-install dgpsip-servers $RPM_BUILD_ROOT%{_datadir}/gpsd/dgpsip-servers
+# fix buggy libdir, kill -L/usr/* from qt Libs
+%{__sed} -i -e 's,^libdir=.*,libdir=%{_libdir},' \
+       -e 's,-L/[^ ]* *,,' \
+       $RPM_BUILD_ROOT%{_pkgconfigdir}/*.pc
 
-%if %{with x}
-install -D xgps.ad $RPM_BUILD_ROOT%{_appdefsdir}/xgps
-install -D xgpsspeed.ad $RPM_BUILD_ROOT%{_appdefsdir}/xgpsspeed
-%endif
+# invoke python directly
+%{__sed} -i -e '1s,/usr/bin/env python,/usr/bin/python,' \
+       $RPM_BUILD_ROOT%{_bindir}/{gpscat,gpsfake,gpsprof,xgps,xgpsspeed,gegps}
+
+# omitted from make install
+install gpsinit $RPM_BUILD_ROOT%{_sbindir}
+install -Dp dgpsip-servers $RPM_BUILD_ROOT%{_datadir}/gpsd/dgpsip-servers
+cp -p gpsd.h $RPM_BUILD_ROOT%{_includedir}
 
-mv $RPM_BUILD_ROOT%{py_sitescriptdir}/*.so $RPM_BUILD_ROOT%{py_sitedir}
+#install packaging/rpm/gpsd.init $RPM_BUILD_ROOT/etc/rc.d/init.d/gpsd
+#install packaging/rpm/gpsd.sysconfig $RPM_BUILD_ROOT/etc/sysconfig/gpsd
+install -d $RPM_BUILD_ROOT{%{_desktopdir},%{_pixmapsdir}}
+cp -p packaging/X11/{xgps,xgpsspeed}.desktop $RPM_BUILD_ROOT%{_desktopdir}
+cp -p packaging/X11/gpsd-logo.png $RPM_BUILD_ROOT%{_pixmapsdir}
 
+%py_comp $RPM_BUILD_ROOT%{py_sitedir}
+%py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
 %py_postclean
 
+# symlinks not needed
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/lib*.so.??.0
+
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %post  libs -p /sbin/ldconfig
 %postun        libs -p /sbin/ldconfig
 
+%post  qt-libs -p /sbin/ldconfig
+%postun        qt-libs -p /sbin/ldconfig
+
 %files
 %defattr(644,root,root,755)
 %doc README INSTALL COPYING TODO AUTHORS
-%attr(755,root,root) %{_sbindir}/gpsd
 %attr(755,root,root) %{_bindir}/gpsmon
-%{_mandir}/man8/gpsd.8*
+%attr(755,root,root) %{_sbindir}/gpsd
+%attr(755,root,root) %{_sbindir}/gpsdctl
+%attr(755,root,root) %{_sbindir}/gpsinit
 %{_mandir}/man1/gpsmon.1*
-%{udevdir}/gpsd.hotplug
-%{udevdir}/gpsd.hotplug.wrapper
-/etc/udev/rules.d/25-gpsd.rules
-%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/gpsd
-%dir %{_datadir}/%{name}
+%{_mandir}/man8/gpsd.8*
+%{_mandir}/man8/gpsdctl.8*
+%{_mandir}/man8/gpsinit.8*
+%dir %{_datadir}/gpsd
 %{_datadir}/gpsd/dgpsip-servers
 
+%files -n udev-gpsd
+%defattr(644,root,root,755)
+%attr(755,root,root) /lib/udev/gpsd.hotplug
+/lib/udev/rules.d/25-gpsd.rules
+#%attr(754,root,root) /etc/rc.d/init.d/gpsd
+#%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/gpsd
+
 %files libs
 %defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libgpsd.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libgpsd.so.22
 %attr(755,root,root) %{_libdir}/libgps.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libgps.so.18
+%attr(755,root,root) %ghost %{_libdir}/libgps.so.21
 
 %files devel
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/gpsflash
 %attr(755,root,root) %{_bindir}/gpsdecode
 %attr(755,root,root) %{_libdir}/libgps.so
-%{_libdir}/libgps.la
+%attr(755,root,root) %{_libdir}/libgpsd.so
 %{_includedir}/gps.h
 %{_includedir}/gpsd.h
 %{_includedir}/libgpsmm.h
 %{_pkgconfigdir}/libgps.pc
 %{_pkgconfigdir}/libgpsd.pc
-%{_mandir}/man1/gpsflash.1*
 %{_mandir}/man1/gpsdecode.1*
 %{_mandir}/man3/libgps.3*
 %{_mandir}/man3/libgpsd.3*
 %{_mandir}/man3/libgpsmm.3*
-%{_mandir}/man5/rtcm-104.5*
+%{_mandir}/man5/gpsd_json.5*
 %{_mandir}/man5/srec.5*
 
-%files static
+%files qt-libs
 %defattr(644,root,root,755)
-%{_libdir}/libgps.a
+%attr(755,root,root) %{_libdir}/libQgpsmm.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libQgpsmm.so.21
+
+%files qt-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libQgpsmm.so
+%{_mandir}/man3/libQgpsmm.3*
+%{_libdir}/libQgpsmm.prl
+%{_pkgconfigdir}/Qgpsmm.pc
 
 %files -n python-gps
 %defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/gegps
 %attr(755,root,root) %{_bindir}/gpscat
 %attr(755,root,root) %{_bindir}/gpsfake
 %attr(755,root,root) %{_bindir}/gpsprof
-%{py_sitescriptdir}/gps.py[co]
-%{py_sitescriptdir}/gpscap.py[co]
-%{py_sitescriptdir}/gpsfake.py[co]
-%attr(755,root,root) %{py_sitedir}/gpslib.so
-%attr(755,root,root) %{py_sitedir}/gpspacket.so
+%dir %{py_sitedir}/gps
+%attr(755,root,root) %{py_sitedir}/gps/*.so
+%{py_sitedir}/gps/*.py[co]
+%{py_sitedir}/gps-%{version}.egg-info
+%{_mandir}/man1/gegps.1*
 %{_mandir}/man1/gpscat.1*
 %{_mandir}/man1/gpsfake.1*
 %{_mandir}/man1/gpsprof.1*
 
 %files clients
 %defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/gps2udp
 %attr(755,root,root) %{_bindir}/gpsctl
 %attr(755,root,root) %{_bindir}/cgps
 %attr(755,root,root) %{_bindir}/gpspipe
 %{?with_dbus:%attr(755,root,root) %{_bindir}/gpxlogger}
+%{_mandir}/man1/gps2udp.1*
 %{_mandir}/man1/gpsctl.1*
 %{_mandir}/man1/cgps.1*
-%{_mandir}/man1/cgpxlogger.1*
 %{_mandir}/man1/gps.1*
 %{_mandir}/man1/gpspipe.1*
 
-%if %{with x}
 %files clients-gui
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/lcdgps
 %attr(755,root,root) %{_bindir}/xgps
 %attr(755,root,root) %{_bindir}/xgpsspeed
-%{_appdefsdir}/xgps
-%{_appdefsdir}/xgpsspeed
+%{_mandir}/man1/lcdgps.1*
 %{_mandir}/man1/xgps.1*
 %{_mandir}/man1/xgpsspeed.1*
-%endif
+%{_desktopdir}/xgps.desktop
+%{_desktopdir}/xgpsspeed.desktop
+%{_pixmapsdir}/gpsd-logo.png
This page took 0.07027 seconds and 4 git commands to generate.