File galmon.spec of Package galmon

#
# spec file for package galmon
#
# Copyright (c) 2021, Martin Hauke <mardnh@gmx.de>
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via https://bugs.opensuse.org/
#


Name:           galmon
Version:        0~git20210327
Release:        0
Summary:        Galileo/GPS/GLONASS/BeiDou monitoring tools
### bundled libs are licensed under:
# ext/CLI11     -> BSD-3-Clause
# ext/doctest.h -> MIT
# ext/fmt-6.1.2 -> MIT
# ext/powerblog -> GPL-3.0-or-later
# ext/sgp4      -> Apache-2.0
License:        GPL-3.0-or-later
Group:          Hardware/Other
URL:            https://berthub.eu/articles/posts/galmon-project/
#Git-Clone:     https://github.com/berthubert/galmon.git
Source:         %{name}-%{version}.tar.xz
Patch0:         galmon-obey-cflags.patch
Patch1:         galmon-fix-build.patch
%if 0%{?suse_version} == 1500
BuildRequires:  gcc8-c++
%else
BuildRequires:  gcc-c++
%endif
BuildRequires:  git-core
BuildRequires:  help2man
BuildRequires:  pkgconfig
BuildRequires:  pkgconfig(eigen3)
BuildRequires:  pkgconfig(libcurl)
BuildRequires:  pkgconfig(libh2o-evloop)
BuildRequires:  pkgconfig(libzstd)
BuildRequires:  pkgconfig(ncursesw)
BuildRequires:  pkgconfig(protobuf)

%description
galileo/GPS/GLONASS/BeiDou open source monitoring tools.

Highlights:
 * Support for Septentrio and U-blox.
 * Processes raw frames/strings/words from GPS, GLONASS, BeiDou and Galileo
 * All-band support (E1, E5a, E5b, B1I, B2I, Glonass L1, Glonass L2, GPS L1C/A) so far.
 * Calculate ephemeris positions
 * Comparison of ephemerides to independent SP3 data to determine SISE
   + Globally, locally, worst user location
 * Record discontinuities between subsequent ephemerides (in time and space)
 * Compare doppler shift as reported by receiver with that expected from ephemeris
 * Track atomic clock & report jumps
 * Coverage maps (number of satellites >5, >10, >20 elevation)
 * HDOP/VDOP/PDOP maps
 * Compare orbit to TLE, match up to best matching satellite
 * Tear out every bit that tells us how well an SV is doing
 * Full almanac processing to see what should be transmitting
 * Distributed receivers, combined into a single source of all messages
 * Ready to detect/report spoofing/jamming

Note: ubxtool was renamed to ubxtool_galmon to prevent an naming conflict
      with ubxtool from gpsd-clients !

%prep
%setup -q
%patch0 -p1
%patch1 -p1

%build
%if 0%{?suse_version} == 1500
export CC="gcc-8"
export CXX="g++-8"
%endif
export CXXFLAGS="%{optflags}"
%make_build

%install
%make_install prefix=%{_prefix} htdocs=/share/
# FIXME: rename ubxtool to prevent a naming conflict with ubxtool from gpsd-clients
mv %{buildroot}/%{_mandir}/man1/ubxtool.1%{?ext_man} %{buildroot}/%{_mandir}/man1/ubxtool_galmon.1%{?ext_man}
mv %{buildroot}/%{_bindir}/ubxtool %{buildroot}/%{_bindir}/ubxtool_galmon

%check
%make_build check

%files
%license LICENSE
%doc influxdb.md Operator.md README.md
%{_bindir}/*
%{_mandir}/man1/*.1%{?ext_man}
%dir %{_datadir}/galmon
%{_datadir}/galmon/html

%changelog
openSUSE Build Service is sponsored by