aboutsummaryrefslogtreecommitdiffstats
path: root/contrib
diff options
context:
space:
mode:
authorHarald Welte <laforge@osmocom.org>2022-11-06 11:45:26 +0100
committerOliver Smith <osmith@sysmocom.de>2022-11-07 11:03:29 +0100
commit1d4cf36e2aec0c5387e62bfadb11259ee48aa4c2 (patch)
tree53b3f7026b1c4dfd1c492466f028282cf9814f72 /contrib
parent5806606ce59435f78800ceda4e36efc54eeded15 (diff)
Add support of RPM package building via osmo-e1d.spec.in
Diffstat (limited to 'contrib')
-rw-r--r--contrib/Makefile.am4
-rw-r--r--contrib/osmo-e1d.spec.in136
2 files changed, 140 insertions, 0 deletions
diff --git a/contrib/Makefile.am b/contrib/Makefile.am
index 3439c97..094b092 100644
--- a/contrib/Makefile.am
+++ b/contrib/Makefile.am
@@ -1 +1,5 @@
SUBDIRS = systemd
+
+EXTRA_DIST = \
+ osmo-e1d.spec.in \
+ $(NULL)
diff --git a/contrib/osmo-e1d.spec.in b/contrib/osmo-e1d.spec.in
new file mode 100644
index 0000000..c836dba
--- /dev/null
+++ b/contrib/osmo-e1d.spec.in
@@ -0,0 +1,136 @@
+#
+# 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
+Version: @VERSION@
+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: %{name}-%{version}.tar.xz
+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
+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
+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
+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 -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
+rm -Rf "%buildroot/%_sysconfdir/osmocom"
+
+%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
+
+%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