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