File osmo-e1d.spec of Package osmo-e1d

#
# spec file for package osmo-e1d
#
# Copyright (c) 2022 SUSE LLC
# Copyright (c) 2019-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.

Name:           osmo-e1d
Requires: osmocom-nightly = 202302070008
Version: 0.4.0.26.8aba.202302070008
Release:        0
Summary:        Osmocom E1 Daemon
License:        GPL-2.0-or-later
Group:          Productivity/Telephony/Utilities
URL:            https://osmocom.org/projects/osmo-e1d/wiki/Wiki
Source: osmo-e1d_0.4.0.26.8aba.202302070008.tar.xz
Source1: rpmlintrc
BuildRequires:  automake >= 1.9
BuildRequires:  libtool >= 2
BuildRequires:  pkg-config >= 0.20
%if 0%{?suse_version}
BuildRequires:  systemd-rpm-macros
%endif
BuildRequires:  pkgconfig(libosmocore) >= 1.7.0
BuildRequires:  pkgconfig(libosmousb) >= 1.7.0
BuildRequires:  pkgconfig(libosmovty) >= 1.7.0
BuildRequires:  pkgconfig(talloc) >= 2.0.1
%{?systemd_requires}

%description
osmo-e1d is an E1 interface daemon that is part of the Osmocom E1
interface driver architecture. It was primarily written for the
ICE40_E1_USB_interface (ICE40 based E1 framer IP core developed by
tnt).

osmo-e1d acts as an interface between the hardware/firmware of the E1
interface on the bottom side, and applications wanting to use E1
timeslots on the top side.

%package -n libosmo-e1d1
Requires: osmocom-nightly = 202302070008
Summary:        Osmocom E1 daemon protocol library
License:        LGPL-3.0-or-later
Group:          System/Libraries

%description -n libosmo-e1d1
Osmocom E1 Daemon Protocol Library.

%package -n libosmo-octoi0
Requires: osmocom-nightly = 202302070008
Summary:        Library for the Osmocom Community TDMoIP network
License:        LGPL-3.0-or-later
Group:          System/Libraries

%description -n libosmo-octoi0
Library for the Osmocom Community TDMoIP network.

%package devel
Requires: osmocom-nightly = 202302070008
Summary:        Header files for the Osmocom E1 daemon protocol library
License:        LGPL-3.0-or-later
Group:          Development/Libraries/C and C++
Requires:       libosmo-e1d1 = %version-%release
Requires:       libosmo-octoi0 = %version-%release
Provides:       libosmo-e1d-devel = %version-%release
Obsoletes:      libosmo-e1d-devel < %version-%release

%description devel
This subpackage contains libraries and header files for developing
applications that want to make use of libosmo-e1d.

%prep
%setup -n osmo-e1d -q

%build
echo "%version" >.tarball-version
autoreconf -fiv
# bugzilla.opensuse.org/795968 for rationale
%configure --includedir="%_includedir/%name" --disable-static \
	--docdir="%_docdir/%name" \
	--with-systemdsystemunitdir="%_unitdir"
%make_build

%install
%make_install
find "%buildroot" -type f -name "*.la" -delete -print

%check
%make_build check || find . -name testsuite.log -exec cat {} +

%post   -n libosmo-e1d1 -p /sbin/ldconfig
%postun -n libosmo-e1d1 -p /sbin/ldconfig
%post   -n libosmo-octoi0 -p /sbin/ldconfig
%postun -n libosmo-octoi0 -p /sbin/ldconfig

%if 0%{?suse_version}
%preun
%service_del_preun %name.service

%postun
%service_del_postun %name.service

%pre
%service_add_pre %name.service

%post
%service_add_post %name.service
%endif

%files
%license COPYING COPYING.gpl2 COPYING.lgpl3
%doc README.md
%_bindir/osmo-e1d
%_bindir/osmo-e1d-pipe
%dir %_docdir/%name
%dir %_docdir/%name/examples
%_docdir/%name/examples/
%_unitdir/osmo-e1d.service
%dir %{_sysconfdir}/osmocom
%config(noreplace) %{_sysconfdir}/osmocom/osmo-e1d.cfg

%files -n libosmo-e1d1
%_libdir/libosmo-e1d.so.*

%files -n libosmo-octoi0
%_libdir/libosmo-octoi.so.*

%files devel
%_includedir/%name/
%_libdir/libosmo-e1d.so
%_libdir/libosmo-octoi.so
%_libdir/pkgconfig/*.pc

%changelog