3 %bcond_without dbus # build without dbus support
4 %bcond_without bluez # build without Bluetooth support
6 Summary: Service daemon for mediating access to a GPS
7 Summary(pl.UTF-8): Oprogramowanie komunikujące się z GPS-em
13 Source0: http://download-mirror.savannah.gnu.org/releases/gpsd/%{name}-%{version}.tar.gz
14 # Source0-md5: 53a88f24a0973d23427e82e9a8914f19
15 Patch0: %{name}-link.patch
16 Patch1: %{name}-qt.patch
17 Patch2: %{name}-desktop.patch
18 URL: http://www.catb.org/gpsd/
19 BuildRequires: QtNetwork-devel >= 4.4
21 BuildRequires: dbus-devel
22 BuildRequires: dbus-glib-devel
24 %{?with_bluez:BuildRequires: bluez-libs-devel}
25 BuildRequires: docbook-dtd412-xml
26 BuildRequires: docbook-style-xsl
27 BuildRequires: libcap-devel
28 BuildRequires: libstdc++-devel
29 BuildRequires: libusb-devel >= 1.0.0
30 BuildRequires: libxslt-progs
31 BuildRequires: ncurses-devel
32 BuildRequires: pkgconfig
33 BuildRequires: python-devel >= 1:2.5
34 BuildRequires: qt4-qmake >= 4.4
35 BuildRequires: rpm-pythonprov
36 BuildRequires: scons >= 2.0.1
37 BuildRequires: sed >= 4.0
39 Requires: %{name}-libs = %{version}-%{release}
40 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
42 # libgpsd expects gpsd_report() defined by user
43 %define skip_post_check_so libgpsd\.so.*
45 # note: to avoid recompiling/relinking on scons install, whole environment
46 # needs to be the same in both build and install sections
50 CFLAGS="%{rpmcflags}" \\\
51 CXXFLAGS="%{rpmcxxflags}" \\\
52 CPPFLAGS="%{rpmcppflags}" \\\
53 LDFLAGS="%{rpmldflags}"
56 gpsd is a service daemon that mediates access to a GPS sensor
57 connected to the host computer by serial or USB interface, making its
58 data on the location/course/velocity of the sensor available to be
59 queried on TCP port 2947 of the host computer. With gpsd, multiple GPS
60 client applications (such as navigational and wardriving software) can
61 share access to a GPS without contention or loss of data. Also, gpsd
62 responds to queries with a format that is substantially easier to
63 parse than NMEA 0183. A client library is provided for applications.
65 After installing this RPM, gpsd will automatically connect to USB
66 GPSes when they are plugged in and requires no configuration. For
67 serial GPSes, you will need to start gpsd by hand. Once connected, the
68 daemon automatically discovers the correct baudrate, stop bits, and
69 protocol. The daemon will be quiescent when there are no clients
70 asking for location information, and copes gracefully when the GPS is
71 unplugged and replugged.
73 %description -l pl.UTF-8
74 gpsd to demon usługi pośredniczącej w dostępie do sensora GPS
75 połączonego z komputerem poprzez interfejs szeregowy lub USB,
76 udostępniający dane o położeniu, kierunku ruchu i prędkości z sensora
77 na porcie TCP 2947 komputera. Przy użyciu gpsd wiele aplikacji
78 klienckich GPS (takich jak oprogramowanie nawigacyjne) może
79 współdzielić dostęp do GPS-a bez utraty danych. Ponadto gpsd odpowiada
80 na zapytania w formacie znacznie łatwiejszym do przetworzenia niż NMEA
81 0183. Dostarczona jest biblioteka kliencka dla aplikacji.
83 Po zainstalowaniu tego pakietu gpsd będzie się automatycznie łączył z
84 GPS-ami USB po podłączeniu ich. Dla GPS-ów szeregowych trzeba
85 uruchomić gpsd ręcznie. Po poączeniu demon automatycznie wykrywa
86 właściwą prędkość, liczbę bitów stopu i protokół. Demon oczekuje
87 spokojnie kiedy nie ma klientów i radzi sobie dobrze z odłączaniem i
88 ponownym podłączaniem GPS-a.
91 Summary: UDEV support for GPS hotplugging
92 Summary(pl.UTF-8): Obsługa UDEV-a do podłączania urządzeń GPS
93 Group: Applications/System
94 Requires: %{name} = %{version}-%{release}
95 Requires: udev-core >= 1:127
97 %description -n udev-gpsd
98 UDEV support for GPS hotplugging.
100 %description -n udev-gpsd -l pl.UTF-8
101 Obsługa UDEV-a do podłączania urządzeń GPS.
104 Summary: GPSd client library
105 Summary(pl.UTF-8): Biblioteka kliencka GPSd
111 %description libs -l pl.UTF-8
112 Biblioteka kliencka GPSd.
115 Summary: Client libraries in C and Python for talking to a running gpsd or GPS
116 Summary(pl.UTF-8): Biblioteki klienckie dla C i Pythona do komunikacji z gpsd lub GPS-em
117 Group: Development/Libraries
118 Requires: %{name}-libs = %{version}-%{release}
119 Requires: libstdc++-devel
120 Obsoletes: gpsd-static
123 This package provides C header files for the gpsd shared libraries
124 that manage access to a GPS for applications; also Python modules. You
125 will need to have gpsd installed for it to work.
127 %description devel -l pl.UTF-8
128 Ten pakiet zawiera pliki nagłówkowe C dla bibliotek współdzielonych
129 gpsd zarządzających dostępem do GPS-a dla aplikacji, a także moduły
130 Pythona. Do działania bibliotek potrzebny jest gpsd.
133 Summary: GPS Qt4 integration library
134 Summary(pl.UTF-8): Biblioteka integrująca GPS z Qt4
136 Requires: %{name}-libs = %{version}-%{release}
137 Requires: QtNetwork >= 4.4
140 GPS Qt4 integration library.
142 %description qt-libs -l pl.UTF-8
143 Biblioteka integrująca GPS z Qt4.
146 Summary: Development files for GPS Qt4 integration library
147 Summary(pl.UTF-8): Pliki programistyczne biblioteki integrującej GPS z Qt4
148 Group: X11/Development/Libraries
149 Requires: %{name}-devel = %{version}-%{release}
150 Requires: %{name}-qt-libs = %{version}-%{release}
151 Requires: QtNetwork-devel >= 4.4
153 %description qt-devel
154 Development files for GPS Qt4 integration library.
156 %description qt-devel -l pl.UTF-8
157 Pliki programistyczne biblioteki integrującej GPS z Qt4.
159 %package -n python-gps
160 Summary: Python GPSd client library
161 Summary(pl.UTF-8): Biblioteka kliencka GPSd dla Pythona
162 Group: Libraries/Python
163 Requires: %{name}-libs = %{version}-%{release}
165 %description -n python-gps
166 GPSd client library for Python.
168 %description -n python-gps -l pl.UTF-8
169 Biblioteka kliencka GPSd dla Pythona.
172 Summary: Clients for gpsd
173 Summary(pl.UTF-8): Aplikacje klienckie dla gpsd
174 Group: Applications/System
175 Requires: %{name}-libs = %{version}-%{release}
178 cgps is a simple test client for gpsd. It displays current GPS
179 position/time/velocity information and (for GPSes that support the
180 feature) the locations of accessible satellites. cgps resembles xgps,
181 but without the pictorial satellite display. It can run on a serial
182 terminal or terminal emulator.
184 %description clients -l pl.UTF-8
185 cgps to prosty klient testowy dla gpsd. Wyświetla bieżące informacje
186 GPS o położeniu, czasie i prędkości oraz (w przypadku GPS-ów
187 obsługujących to) położenia dostępnych satelitów. Jest podobny do
188 xgps, ale nie ma rysunkowego przedstawiania satelitów. Może działać na
189 terminalu szeregowym lub emulatorze terminala.
192 Summary: Clients for gpsd with an X interface
193 Summary(pl.UTF-8): Aplikacje klienckie z interfejsem X
194 Group: Applications/System
195 Requires: %{name}-libs = %{version}-%{release}
196 Requires: python-gps = %{version}-%{release}
197 Requires: python-pygtk-gtk >= 2:2.0
199 %description clients-gui
200 xgps is a simple test client for gpsd with an X interface. It displays
201 current GPS position/time/velocity information and (for GPSes that
202 support the feature) the locations of accessible satellites.
204 xgpsspeed is a speedometer that uses position information from the
207 %description clients-gui -l pl.UTF-8
208 xgps to prosty klient testowy dla gpsd z interfejsem X. Wyświetla
209 bieżące informacje GPS o położeniu, czasie i prędkości oraz (w
210 przypadku GPS-ów obsługujących to) położenia dostępnych satelitów.
212 xgpsspeed to prędkościomierz używający informacji o położeniu z GPS-a.
230 %{!?with_bluez:bluez=False} \
231 %{?with_dbus:dbus_export=True}
235 rm -rf $RPM_BUILD_ROOT
238 DESTDIR=$RPM_BUILD_ROOT \
241 # fix buggy libdir, kill -L/usr/* from qt Libs
242 %{__sed} -i -e 's,^libdir=.*,libdir=%{_libdir},' \
243 -e 's,-L/[^ ]* *,,' \
244 $RPM_BUILD_ROOT%{_pkgconfigdir}/*.pc
246 # invoke python directly
247 %{__sed} -i -e '1s,/usr/bin/env python,/usr/bin/python,' \
248 $RPM_BUILD_ROOT%{_bindir}/{gpscat,gpsfake,gpsprof,xgps,xgpsspeed,gegps}
250 # omitted from make install
251 install gpsinit $RPM_BUILD_ROOT%{_sbindir}
252 install -Dp dgpsip-servers $RPM_BUILD_ROOT%{_datadir}/gpsd/dgpsip-servers
253 cp -p gpsd.h $RPM_BUILD_ROOT%{_includedir}
255 #install packaging/rpm/gpsd.init $RPM_BUILD_ROOT/etc/rc.d/init.d/gpsd
256 #install packaging/rpm/gpsd.sysconfig $RPM_BUILD_ROOT/etc/sysconfig/gpsd
257 install -d $RPM_BUILD_ROOT{%{_desktopdir},%{_pixmapsdir}}
258 cp -p packaging/X11/{xgps,xgpsspeed}.desktop $RPM_BUILD_ROOT%{_desktopdir}
259 cp -p packaging/X11/gpsd-logo.png $RPM_BUILD_ROOT%{_pixmapsdir}
261 %py_comp $RPM_BUILD_ROOT%{py_sitedir}
262 %py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
265 # symlinks not needed
266 %{__rm} $RPM_BUILD_ROOT%{_libdir}/lib*.so.??.0
269 rm -rf $RPM_BUILD_ROOT
271 %post libs -p /sbin/ldconfig
272 %postun libs -p /sbin/ldconfig
274 %post qt-libs -p /sbin/ldconfig
275 %postun qt-libs -p /sbin/ldconfig
278 %defattr(644,root,root,755)
279 %doc README INSTALL COPYING TODO AUTHORS
280 %attr(755,root,root) %{_bindir}/gpsmon
281 %attr(755,root,root) %{_sbindir}/gpsd
282 %attr(755,root,root) %{_sbindir}/gpsdctl
283 %attr(755,root,root) %{_sbindir}/gpsinit
284 %{_mandir}/man1/gpsmon.1*
285 %{_mandir}/man8/gpsd.8*
286 %{_mandir}/man8/gpsdctl.8*
287 %{_mandir}/man8/gpsinit.8*
288 %dir %{_datadir}/gpsd
289 %{_datadir}/gpsd/dgpsip-servers
292 %defattr(644,root,root,755)
293 %attr(755,root,root) /lib/udev/gpsd.hotplug
294 /lib/udev/rules.d/25-gpsd.rules
295 #%attr(754,root,root) /etc/rc.d/init.d/gpsd
296 #%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/gpsd
299 %defattr(644,root,root,755)
300 %attr(755,root,root) %{_libdir}/libgpsd.so.*.*.*
301 %attr(755,root,root) %ghost %{_libdir}/libgpsd.so.21
302 %attr(755,root,root) %{_libdir}/libgps.so.*.*.*
303 %attr(755,root,root) %ghost %{_libdir}/libgps.so.20
306 %defattr(644,root,root,755)
307 %attr(755,root,root) %{_bindir}/gpsdecode
308 %attr(755,root,root) %{_libdir}/libgps.so
309 %attr(755,root,root) %{_libdir}/libgpsd.so
311 %{_includedir}/gpsd.h
312 %{_includedir}/libgpsmm.h
313 %{_pkgconfigdir}/libgps.pc
314 %{_pkgconfigdir}/libgpsd.pc
315 %{_mandir}/man1/gpsdecode.1*
316 %{_mandir}/man3/libgps.3*
317 %{_mandir}/man3/libgpsd.3*
318 %{_mandir}/man3/libgpsmm.3*
319 %{_mandir}/man5/gpsd_json.5*
320 %{_mandir}/man5/srec.5*
323 %defattr(644,root,root,755)
324 %attr(755,root,root) %{_libdir}/libQgpsmm.so.*.*.*
325 %attr(755,root,root) %ghost %{_libdir}/libQgpsmm.so.20
328 %defattr(644,root,root,755)
329 %attr(755,root,root) %{_libdir}/libQgpsmm.so
330 %{_mandir}/man3/libQgpsmm.3*
331 %{_libdir}/libQgpsmm.prl
332 %{_pkgconfigdir}/Qgpsmm.pc
335 %defattr(644,root,root,755)
336 %attr(755,root,root) %{_bindir}/gegps
337 %attr(755,root,root) %{_bindir}/gpscat
338 %attr(755,root,root) %{_bindir}/gpsfake
339 %attr(755,root,root) %{_bindir}/gpsprof
340 %dir %{py_sitedir}/gps
341 %attr(755,root,root) %{py_sitedir}/gps/*.so
342 %{py_sitedir}/gps/*.py[co]
343 %{py_sitedir}/gps-%{version}.egg-info
344 %{_mandir}/man1/gegps.1*
345 %{_mandir}/man1/gpscat.1*
346 %{_mandir}/man1/gpsfake.1*
347 %{_mandir}/man1/gpsprof.1*
350 %defattr(644,root,root,755)
351 %attr(755,root,root) %{_bindir}/gpsctl
352 %attr(755,root,root) %{_bindir}/cgps
353 %attr(755,root,root) %{_bindir}/gpspipe
354 %{?with_dbus:%attr(755,root,root) %{_bindir}/gpxlogger}
355 %{_mandir}/man1/gpsctl.1*
356 %{_mandir}/man1/cgps.1*
357 %{_mandir}/man1/gps.1*
358 %{_mandir}/man1/gpspipe.1*
361 %defattr(644,root,root,755)
362 %attr(755,root,root) %{_bindir}/lcdgps
363 %attr(755,root,root) %{_bindir}/xgps
364 %attr(755,root,root) %{_bindir}/xgpsspeed
365 %{_mandir}/man1/lcdgps.1*
366 %{_mandir}/man1/xgps.1*
367 %{_mandir}/man1/xgpsspeed.1*
368 %{_desktopdir}/xgps.desktop
369 %{_desktopdir}/xgpsspeed.desktop
370 %{_pixmapsdir}/gpsd-logo.png