Accepting request 289805 from home:pluskalm:branches:Application:Geo

- Cleanup spec file with spec-cleaner
- Add gpg signature
- Add gpsd-3.13-ntpshm.patch
- Install unit files
- Update to 3.13

OBS-URL: https://build.opensuse.org/request/show/289805
OBS-URL: https://build.opensuse.org/package/show/Application:Geo/gpsd?expand=0&rev=89
This commit is contained in:
Martin Pluskal
2015-03-08 20:26:34 +00:00
committed by Git OBS Bridge
parent 8d348b10dc
commit 5bcbdd0276
8 changed files with 451 additions and 54 deletions

130
gpsd.spec
View File

@@ -1,7 +1,7 @@
#
# spec file for package gpsd
#
# Copyright (c) 2015 SUSE LINUX Products GmbH, Nuernberg, Germany.
# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -16,23 +16,31 @@
#
%define libgps libgps22
%define libQgps libQgpsmm22
%if %( echo `rpm -q --queryformat %%{version} udev` ) > 190
%define _udevdir /usr/lib/udev/
%define _udevdir %{_libexecdir}/udev/
%else
%define _udevdir /lib/udev/
%endif
Name: gpsd
Version: 3.13
Release: 0
Summary: Service daemon for mediating access to a GPS
License: BSD-3-Clause
Group: Hardware/Other
Url: http://www.catb.org/gpsd/
Version: 3.11
Release: 0
%define libgps libgps21
%define libQgps libQgpsmm21
Requires: udev
Requires(pre): coreutils %fillup_prereq
Source0: http://download-mirror.savannah.gnu.org/releases/gpsd/%{name}-%{version}.tar.gz
Source98: http://download-mirror.savannah.gnu.org/releases/gpsd/%{name}-%{version}.tar.gz.sig
Source1: rules.gpsd
Source2: udev.gpsd
Source3: sysconfig.gpsd
Source4: gpsd.xpm
Source5: xgps.desktop
Source6: xgpsspeed.desktop
Source99: %{name}.keyring
Patch0: gpsd-fix-shebang.patch
Patch1: gpsd-3.13-ntpshm.patch
BuildRequires: bluez-devel
BuildRequires: chrpath
BuildRequires: dbus-1-glib-devel
@@ -47,14 +55,13 @@ BuildRequires: scons >= 2.0.1
BuildRequires: udev
BuildRequires: update-desktop-files
BuildRequires: xmlto
Source: http://download-mirror.savannah.gnu.org/releases/gpsd/%{name}-%{version}.tar.gz
Source1: rules.gpsd
Source2: udev.gpsd
Source3: sysconfig.gpsd
Source4: gpsd.xpm
Source5: xgps.desktop
Source6: xgpsspeed.desktop
Patch0: gpsd-fix-shebang.patch
%if 0%{?suse_version} >= 1210
BuildRequires: systemd-rpm-macros
%systemd_requires
%endif
Requires: udev
Requires(pre): %fillup_prereq
Requires(pre): coreutils
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
@@ -78,47 +85,42 @@ and replugged.
%package devel
Summary: Client libraries in C and Python for talking to a running gpsd or GPS
Group: Development/Libraries/C and C++
Requires: %name = %version
Requires: %{name} = %{version}
Requires: pkgconfig
Requires: python-curses
Requires: python-gpsd = %version
Requires: python-gpsd = %{version}
%description devel
This package provides C header files for the gpsd shared libraries that
manage access to a GPS for applications and debugging tools. You will
need to have gpsd installed for it to work.
%package -n %libgps
%package -n %{libgps}
Summary: Shared library for GPS applications
Group: Development/Libraries/Python
%description -n %libgps
%description -n %{libgps}
This package provides the shared library for gpsd and other GPS aware
applications.
%package -n %libQgps
%package -n %{libQgps}
Summary: Shared Qt library for GPS applications
Group: Development/Libraries/Python
%description -n %libQgps
%description -n %{libQgps}
This package provides the shared Qt library for gpsd and other GPS aware
applications.
%package -n python-gpsd
Summary: Client libraries in C and Python for talking to a running gpsd or GPS
Group: Development/Libraries/Python
Requires: %name = %version
%{py_requires}
Requires: %{name} = %{version}
%py_requires
%description -n python-gpsd
This package provides python modules and tools for the gpsd shared libraries.
You will need to have gpsd installed for it to work.
%package clients
Summary: Clients for gpsd with an X interface
Group: Hardware/Other
@@ -141,26 +143,27 @@ can run on a serial terminal or terminal emulator.
%prep
%setup -q
%patch0 -p1
%patch1 -p1
# don't set RPATH
sed -i 's|env.Prepend.*RPATH.*|pass #\0|' SConstruct
%build
export CFLAGS="%optflags -fvisibility-inlines-hidden"
export CXXFLAGS="%optflags -fvisibility-inlines-hidden"
export CFLAGS="%{optflags} -fvisibility-inlines-hidden"
export CXXFLAGS="%{optflags} -fvisibility-inlines-hidden"
scons prefix=%{_prefix} libdir=%{_libdir} strip=False
%install
export CFLAGS="%optflags -fvisibility-inlines-hidden"
export CXXFLAGS="%optflags -fvisibility-inlines-hidden"
export CFLAGS="%{optflags} -fvisibility-inlines-hidden"
export CXXFLAGS="%{optflags} -fvisibility-inlines-hidden"
DESTDIR=%{buildroot} scons prefix=%{_prefix} libdir=%{_libdir} strip=False install
install -d -m 755 %{buildroot}%{_udevdir}
install -d -m 755 %{buildroot}%{_udevdir}/rules.d
install -d -m 755 %{buildroot}/var/adm/fillup-templates
install -d -m 755 %{buildroot}%{_localstatedir}/adm/fillup-templates
install -d -m 755 %{buildroot}%{_datadir}/{applications,pixmaps}
install -m 644 %{SOURCE1} %{buildroot}%{_udevdir}/rules.d/51-gpsd.rules
install -m 755 %{SOURCE2} %{buildroot}%{_udevdir}/gpsd.sh
install -m 644 %{SOURCE3} %{buildroot}/var/adm/fillup-templates
install -m 644 %{SOURCE3} %{buildroot}%{_localstatedir}/adm/fillup-templates
if [ -f %{buildroot}%{python_sitearch}/*.egg-info ] ; then
rm -f %{buildroot}%{python_sitearch}/*.egg-info
fi
@@ -169,25 +172,49 @@ chmod 755 %{buildroot}%{python_sitearch}/gps/gps.py
install -m 644 %{SOURCE4} %{buildroot}%{_datadir}/pixmaps/%{name}.xpm
install -m 644 %{SOURCE5} %{buildroot}%{_datadir}/applications/
install -m 644 %{SOURCE6} %{buildroot}%{_datadir}/applications/
%suse_update_desktop_file xgpsspeed
%suse_update_desktop_file xgps
%if 0%{?suse_version} >= 1210
install -D -m 644 systemd/gpsd.service %{buildroot}/%{_unitdir}/gpsd.service
install -D -m 644 systemd/gpsd.socket %{buildroot}/%{_unitdir}/gpsd.socket
install -D -m 644 systemd/gpsdctl@.service %{buildroot}/%{_unitdir}/gpsdctl@.service
ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rcgpsd
%endif
%suse_update_desktop_file xgpsspeed
%suse_update_desktop_file xgps
# save some space, create symlinks
%fdupes -s %buildroot
#chrpath -r %{_libdir} %{buildroot}%{python_sitearch}/gps/*.so
%fdupes -s %{buildroot}
%pre
%if 0%{?suse_version} >= 1210
%service_add_pre gpsd.service gpsdctl@.service
%endif
%post
/sbin/ldconfig
%fillup_only -n gpsd
%if 0%{?suse_version} >= 1210
%service_add_post gpsd.service gpsdctl@.service
%udev_rules_update
%endif
%postun -p /sbin/ldconfig
%preun
%if 0%{?suse_version} >= 1210
%service_del_preun gpsd.service gpsdctl@.service
%endif
%post -n %libgps -p /sbin/ldconfig
%postun
/sbin/ldconfig
%if 0%{?suse_version} >= 1210
%service_del_postun gpsd.service gpsdctl@.service
%endif
%postun -n %libgps -p /sbin/ldconfig
%post -n %{libgps} -p /sbin/ldconfig
%post -n %libQgps -p /sbin/ldconfig
%postun -n %{libgps} -p /sbin/ldconfig
%postun -n %libQgps -p /sbin/ldconfig
%post -n %{libQgps} -p /sbin/ldconfig
%postun -n %{libQgps} -p /sbin/ldconfig
%files
%defattr(-,root,root)
@@ -198,17 +225,23 @@ install -m 644 %{SOURCE6} %{buildroot}%{_datadir}/applications/
%{_mandir}/man?/gpsinit.*
%{_udevdir}/gpsd.sh
%{_udevdir}/rules.d/*
%if 0%{?suse_version} >= 1210
%{_unitdir}/gpsd.service
%{_unitdir}/gpsd.socket
%{_unitdir}/gpsdctl@.service
%{_sbindir}/rcgpsd
%endif
%{_sbindir}/gpsd
%{_sbindir}/gpsdctl
%{_bindir}/gpsctl
%{_libdir}/libgpsd.so.*
/var/adm/fillup-templates/sysconfig.gpsd
%{_localstatedir}/adm/fillup-templates/sysconfig.gpsd
%files -n %libgps
%files -n %{libgps}
%defattr(-,root,root)
%{_libdir}/libgps.so.*
%files -n %libQgps
%files -n %{libQgps}
%defattr(-,root,root)
%{_libdir}/libQgpsmm.so.*
@@ -251,6 +284,7 @@ install -m 644 %{SOURCE6} %{buildroot}%{_datadir}/applications/
%{_mandir}/man?/gpspipe.*
%{_mandir}/man?/gpsmon.*
%{_mandir}/man?/gps2udp.*
%{_mandir}/man?/ntpmon.*
%{_bindir}/gegps
%{_bindir}/xgps
%{_bindir}/xgpsspeed