From bd6d677179f224d2d2168f6538ff9befda22ac9d Mon Sep 17 00:00:00 2001 From: Oliver Smith Date: Thu, 14 May 2020 11:53:18 +0200 Subject: contrib: integrate RPM spec Remove OpenSUSE bug report link, set version to @VERSION@, make it build with CentOS 8 etc. Related: OS#4550 Change-Id: I824b67f2d590ac2aa9f2e4fa4387a5283cf22521 --- .gitignore | 2 + configure.ac | 1 + contrib/osmo-sgsn.spec | 141 ---------------------------------------------- contrib/osmo-sgsn.spec.in | 141 ++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 144 insertions(+), 141 deletions(-) delete mode 100644 contrib/osmo-sgsn.spec create mode 100644 contrib/osmo-sgsn.spec.in diff --git a/.gitignore b/.gitignore index b3e50f55e..546d5dfbb 100644 --- a/.gitignore +++ b/.gitignore @@ -69,3 +69,5 @@ doc/manuals/generated/ doc/manuals/osmomsc-usermanual.xml doc/manuals/common doc/manuals/build + +contrib/osmo-sgsn.spec diff --git a/configure.ac b/configure.ac index 5c0beded7..9432715d6 100644 --- a/configure.ac +++ b/configure.ac @@ -273,4 +273,5 @@ AC_OUTPUT( doc/manuals/Makefile contrib/Makefile contrib/systemd/Makefile + contrib/osmo-sgsn.spec Makefile) diff --git a/contrib/osmo-sgsn.spec b/contrib/osmo-sgsn.spec deleted file mode 100644 index 3c592e759..000000000 --- a/contrib/osmo-sgsn.spec +++ /dev/null @@ -1,141 +0,0 @@ -# -# spec file for package osmo-sgsn -# -# Copyright (c) 2017, Martin Hauke -# -# 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 http://bugs.opensuse.org/ -# - - -## Disable LTO for now since it breaks compilation of the tests -## https://osmocom.org/issues/4116 -%define _lto_cflags %{nil} - -%define with_iu 1 -Name: osmo-sgsn -Version: 1.6.0.9 -Release: 0 -Summary: Osmocom's SGSN for 2G and 3G packet-switched mobile networks -License: AGPL-3.0-or-later AND GPL-2.0-or-later -Group: Productivity/Telephony/Servers -URL: https://osmocom.org/projects/osmosgsn/wiki/OsmoSGSN -Source: %{name}-%{version}.tar.xz -BuildRequires: autoconf -BuildRequires: automake -BuildRequires: libtool -BuildRequires: pkgconfig -BuildRequires: systemd-rpm-macros -BuildRequires: pkgconfig(libcares) -BuildRequires: pkgconfig(libcrypto) >= 0.9.5 -BuildRequires: pkgconfig(libgtp) >= 1.4.0 -BuildRequires: pkgconfig(libosmo-gsup-client) >= 1.0.0 -BuildRequires: pkgconfig(libosmo-netif) >= 0.4.0 -BuildRequires: pkgconfig(libosmoabis) >= 0.6.0 -BuildRequires: pkgconfig(libosmocore) >= 1.2.0 -BuildRequires: pkgconfig(libosmoctrl) >= 1.2.0 -BuildRequires: pkgconfig(libosmogb) >= 1.2.0 -BuildRequires: pkgconfig(libosmogsm) >= 1.2.0 -BuildRequires: pkgconfig(libosmovty) >= 1.2.0 -%{?systemd_requires} -%if %{with_iu} -BuildRequires: pkgconfig(libasn1c) -BuildRequires: pkgconfig(libosmo-ranap) >= 0.4.0 -BuildRequires: pkgconfig(libosmo-sigtran) >= 1.0.0 -%endif - -%description -OsmoSGSN is Osmocom's Serving GPRS Support Node for 2G and 3G -packet-switched mobile networks. - -%package -n osmo-gtphub -Summary: Osmocom GTP Hub: Proxy for GTP traffic between multiple SGSNs and GGSNs -Group: Productivity/Telephony/Servers - -%description -n osmo-gtphub -Osmocom GTP Hub: Proxy for GTP traffic between multiple SGSNs and GGSNs. - -%package -n osmo-gbproxy -Summary: Osmocom GPRS Gb Interface Proxy -Group: Productivity/Telephony/Servers - -%description -n osmo-gbproxy -The purpose of the Gb proxy is to aggregate the Gb links of multiple -BSS's and present them in one Gb link to the SGSN. - -%prep -%setup -q - -%build -echo "%{version}" >.tarball-version -autoreconf -fi -%configure \ -%if %{with_iu} - --enable-iu \ -%endif - --docdir=%{_docdir}/%{name} \ - --with-systemdsystemunitdir=%{_unitdir} -make %{?_smp_mflags} - -%install -%make_install - -%preun %service_del_preun %{name}.service -%postun %service_del_postun %{name}.service -%pre %service_add_pre %{name}.service -%post %service_add_post %{name}.service -%preun -n osmo-gtphub %service_del_preun osmo-gtphub.service -%postun -n osmo-gtphub %service_del_postun osmo-gtphub.service -%pre -n osmo-gtphub %service_add_pre osmo-gtphub.service -%post -n osmo-gtphub %service_add_post osmo-gtphub.service -%preun -n osmo-gbproxy %service_del_preun osmo-gbproxy.service -%postun -n osmo-gbproxy %service_del_postun osmo-gbproxy.service -%pre -n osmo-gbproxy %service_add_pre osmo-gbproxy.service -%post -n osmo-gbproxy %service_add_post osmo-gbproxy.service - -%check -make %{?_smp_mflags} check || (find . -name testsuite.log -exec cat {} +) - -%files -%doc AUTHORS README -%dir %{_docdir}/%{name}/examples -%dir %{_docdir}/%{name}/examples/osmo-sgsn -%exclude %{_docdir}/%{name}/examples/osmo-gtphub -%exclude %{_docdir}/%{name}/examples/osmo-gbproxy -%{_docdir}/%{name}/examples/osmo-sgsn/osmo-sgsn-accept-all.cfg -%{_docdir}/%{name}/examples/osmo-sgsn/osmo-sgsn.cfg -%{_docdir}/%{name}/examples/osmo-sgsn/osmo-sgsn_custom-sccp.cfg -%{_bindir}/osmo-sgsn -%dir %{_sysconfdir}/osmocom -%config %{_sysconfdir}/osmocom/osmo-sgsn.cfg -%{_unitdir}/%{name}.service - -%files -n osmo-gtphub -%dir %{_docdir}/%{name}/examples -%dir %{_docdir}/%{name}/examples/osmo-gtphub -%{_docdir}/%{name}/examples/osmo-gtphub/osmo-gtphub-1iface.cfg -%{_docdir}/%{name}/examples/osmo-gtphub/osmo-gtphub.cfg -%{_bindir}/osmo-gtphub -%dir %{_sysconfdir}/osmocom -%config %{_sysconfdir}/osmocom/osmo-gtphub.cfg -%{_unitdir}/osmo-gtphub.service - -%files -n osmo-gbproxy -%dir %{_docdir}/%{name}/examples -%dir %{_docdir}/%{name}/examples/osmo-gbproxy -%{_docdir}/%{name}/examples/osmo-gbproxy/osmo-gbproxy-legacy.cfg -%{_docdir}/%{name}/examples/osmo-gbproxy/osmo-gbproxy.cfg -%{_bindir}/osmo-gbproxy -%dir %{_sysconfdir}/osmocom -%config %{_sysconfdir}/osmocom/osmo-gbproxy.cfg -%{_unitdir}/osmo-gbproxy.service - -%changelog diff --git a/contrib/osmo-sgsn.spec.in b/contrib/osmo-sgsn.spec.in new file mode 100644 index 000000000..f9fe2086d --- /dev/null +++ b/contrib/osmo-sgsn.spec.in @@ -0,0 +1,141 @@ +# +# spec file for package osmo-sgsn +# +# Copyright (c) 2017, Martin Hauke +# +# 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. + +## Disable LTO for now since it breaks compilation of the tests +## https://osmocom.org/issues/4116 +%define _lto_cflags %{nil} + +%define with_iu 1 +Name: osmo-sgsn +Version: @VERSION@ +Release: 0 +Summary: Osmocom's SGSN for 2G and 3G packet-switched mobile networks +License: AGPL-3.0-or-later AND GPL-2.0-or-later +Group: Productivity/Telephony/Servers +URL: https://osmocom.org/projects/osmosgsn +Source: %{name}-%{version}.tar.xz +BuildRequires: autoconf +BuildRequires: automake +BuildRequires: libtool +BuildRequires: pkgconfig +%if 0%{?suse_version} +BuildRequires: systemd-rpm-macros +%endif +BuildRequires: pkgconfig(libcares) +BuildRequires: pkgconfig(libcrypto) >= 0.9.5 +BuildRequires: pkgconfig(libgtp) >= 1.4.0 +BuildRequires: pkgconfig(libosmo-gsup-client) >= 1.0.0 +BuildRequires: pkgconfig(libosmo-netif) >= 0.4.0 +BuildRequires: pkgconfig(libosmoabis) >= 0.6.0 +BuildRequires: pkgconfig(libosmocore) >= 1.2.0 +BuildRequires: pkgconfig(libosmoctrl) >= 1.2.0 +BuildRequires: pkgconfig(libosmogb) >= 1.2.0 +BuildRequires: pkgconfig(libosmogsm) >= 1.2.0 +BuildRequires: pkgconfig(libosmovty) >= 1.2.0 +%{?systemd_requires} +%if %{with_iu} +BuildRequires: pkgconfig(libasn1c) +BuildRequires: pkgconfig(libosmo-ranap) >= 0.4.0 +BuildRequires: pkgconfig(libosmo-sigtran) >= 1.0.0 +%endif + +%description +OsmoSGSN is Osmocom's Serving GPRS Support Node for 2G and 3G +packet-switched mobile networks. + +%package -n osmo-gtphub +Summary: Osmocom GTP Hub: Proxy for GTP traffic between multiple SGSNs and GGSNs +Group: Productivity/Telephony/Servers + +%description -n osmo-gtphub +Osmocom GTP Hub: Proxy for GTP traffic between multiple SGSNs and GGSNs. + +%package -n osmo-gbproxy +Summary: Osmocom GPRS Gb Interface Proxy +Group: Productivity/Telephony/Servers + +%description -n osmo-gbproxy +The purpose of the Gb proxy is to aggregate the Gb links of multiple +BSS's and present them in one Gb link to the SGSN. + +%prep +%setup -q + +%build +echo "%{version}" >.tarball-version +autoreconf -fi +%configure \ +%if %{with_iu} + --enable-iu \ +%endif + --docdir=%{_docdir}/%{name} \ + --with-systemdsystemunitdir=%{_unitdir} +make %{?_smp_mflags} + +%install +%make_install + +%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 +%preun -n osmo-gtphub %service_del_preun osmo-gtphub.service +%postun -n osmo-gtphub %service_del_postun osmo-gtphub.service +%pre -n osmo-gtphub %service_add_pre osmo-gtphub.service +%post -n osmo-gtphub %service_add_post osmo-gtphub.service +%preun -n osmo-gbproxy %service_del_preun osmo-gbproxy.service +%postun -n osmo-gbproxy %service_del_postun osmo-gbproxy.service +%pre -n osmo-gbproxy %service_add_pre osmo-gbproxy.service +%post -n osmo-gbproxy %service_add_post osmo-gbproxy.service +%endif + +%check +make %{?_smp_mflags} check || (find . -name testsuite.log -exec cat {} +) + +%files +%doc AUTHORS README +%dir %{_docdir}/%{name}/examples +%dir %{_docdir}/%{name}/examples/osmo-sgsn +%exclude %{_docdir}/%{name}/examples/osmo-gtphub +%exclude %{_docdir}/%{name}/examples/osmo-gbproxy +%{_docdir}/%{name}/examples/osmo-sgsn/osmo-sgsn-accept-all.cfg +%{_docdir}/%{name}/examples/osmo-sgsn/osmo-sgsn.cfg +%{_docdir}/%{name}/examples/osmo-sgsn/osmo-sgsn_custom-sccp.cfg +%{_bindir}/osmo-sgsn +%dir %{_sysconfdir}/osmocom +%config %{_sysconfdir}/osmocom/osmo-sgsn.cfg +%{_unitdir}/%{name}.service + +%files -n osmo-gtphub +%dir %{_docdir}/%{name}/examples +%dir %{_docdir}/%{name}/examples/osmo-gtphub +%{_docdir}/%{name}/examples/osmo-gtphub/osmo-gtphub-1iface.cfg +%{_docdir}/%{name}/examples/osmo-gtphub/osmo-gtphub.cfg +%{_bindir}/osmo-gtphub +%dir %{_sysconfdir}/osmocom +%config %{_sysconfdir}/osmocom/osmo-gtphub.cfg +%{_unitdir}/osmo-gtphub.service + +%files -n osmo-gbproxy +%dir %{_docdir}/%{name}/examples +%dir %{_docdir}/%{name}/examples/osmo-gbproxy +%{_docdir}/%{name}/examples/osmo-gbproxy/osmo-gbproxy-legacy.cfg +%{_docdir}/%{name}/examples/osmo-gbproxy/osmo-gbproxy.cfg +%{_bindir}/osmo-gbproxy +%dir %{_sysconfdir}/osmocom +%config %{_sysconfdir}/osmocom/osmo-gbproxy.cfg +%{_unitdir}/osmo-gbproxy.service + +%changelog -- cgit v1.2.3