| # |
| # spec file for package osmo-trx |
| # |
| # Copyright (c) 2017, 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-trx |
| Version: @VERSION@ |
| Release: 0 |
| Summary: SDR transceiver that implements Layer 1 of a GSM BTS |
| License: AGPL-3.0-or-later |
| Group: Productivity/Telephony/Servers |
| URL: https://osmocom.org/projects/osmotrx |
| Source: %{name}-%{version}.tar.xz |
| BuildRequires: autoconf |
| BuildRequires: automake |
| BuildRequires: fdupes |
| BuildRequires: gcc-c++ |
| BuildRequires: libtool |
| BuildRequires: pkgconfig >= 0.20 |
| %if 0%{?suse_version} |
| BuildRequires: systemd-rpm-macros |
| %endif |
| %if ! 0%{?centos_ver} |
| BuildRequires: pkgconfig(LimeSuite) |
| BuildRequires: pkgconfig(usrp) >= 3.3 |
| %endif |
| BuildRequires: pkgconfig(fftw3f) |
| BuildRequires: pkgconfig(libosmocoding) >= 1.9.0 |
| BuildRequires: pkgconfig(libosmocore) >= 1.9.0 |
| BuildRequires: pkgconfig(libosmoctrl) >= 1.9.0 |
| BuildRequires: pkgconfig(libosmovty) >= 1.9.0 |
| BuildRequires: pkgconfig(libusb-1.0) |
| BuildRequires: pkgconfig(uhd) |
| %{?systemd_requires} |
| %if 0%{?suse_version} > 1325 |
| BuildRequires: libboost_program_options-devel |
| BuildRequires: libboost_system-devel |
| BuildRequires: libboost_test-devel |
| BuildRequires: libboost_thread-devel |
| %else |
| BuildRequires: boost-devel |
| %endif |
| |
| %description |
| OsmoTRX is a software-defined radio transceiver that implements the Layer 1 |
| physical layer of a BTS comprising the following 3GPP specifications: |
| |
| TS 05.01 "Physical layer on the radio path" |
| TS 05.02 "Multiplexing and Multiple Access on the Radio Path" |
| TS 05.04 "Modulation" |
| TS 05.10 "Radio subsystem synchronization" |
| |
| In this context, BTS is "Base transceiver station". It's the stations that |
| connect mobile phones to the mobile network. |
| |
| 3GPP is the "3rd Generation Partnership Project" which is the collaboration |
| between different telecommunication associations for developing new |
| generations of mobile phone networks. (post-2G/GSM) |
| |
| %package uhd |
| Summary: SDR transceiver that implements Layer 1 of a GSM BTS (UHD) |
| Group: Productivity/Telephony/Servers |
| Requires: uhd-firmware |
| |
| %description uhd |
| OsmoTRX is a software-defined radio transceiver that implements the Layer 1 |
| physical layer of a BTS comprising the following 3GPP specifications: |
| |
| TS 05.01 "Physical layer on the radio path" |
| TS 05.02 "Multiplexing and Multiple Access on the Radio Path" |
| TS 05.04 "Modulation" |
| TS 05.10 "Radio subsystem synchronization" |
| |
| In this context, BTS is "Base transceiver station". It's the stations that |
| connect mobile phones to the mobile network. |
| |
| 3GPP is the "3rd Generation Partnership Project" which is the collaboration |
| between different telecommunication associations for developing new |
| generations of mobile phone networks. (post-2G/GSM) |
| |
| %if ! 0%{?centos_ver} |
| %package usrp1 |
| Summary: SDR transceiver that implements Layer 1 of a GSM BTS (USRP1) |
| Group: Productivity/Telephony/Servers |
| |
| %description usrp1 |
| OsmoTRX is a software-defined radio transceiver that implements the Layer 1 |
| physical layer of a BTS comprising the following 3GPP specifications: |
| |
| TS 05.01 "Physical layer on the radio path" |
| TS 05.02 "Multiplexing and Multiple Access on the Radio Path" |
| TS 05.04 "Modulation" |
| TS 05.10 "Radio subsystem synchronization" |
| |
| In this context, BTS is "Base transceiver station". It's the stations that |
| connect mobile phones to the mobile network. |
| |
| 3GPP is the "3rd Generation Partnership Project" which is the collaboration |
| between different telecommunication associations for developing new |
| generations of mobile phone networks. (post-2G/GSM) |
| |
| %package lms |
| Summary: SDR transceiver that implements Layer 1 of a GSM BTS (LimeSuite) |
| Group: Productivity/Telephony/Servers |
| |
| %description lms |
| OsmoTRX is a software-defined radio transceiver that implements the Layer 1 |
| physical layer of a BTS comprising the following 3GPP specifications: |
| |
| TS 05.01 "Physical layer on the radio path" |
| TS 05.02 "Multiplexing and Multiple Access on the Radio Path" |
| TS 05.04 "Modulation" |
| TS 05.10 "Radio subsystem synchronization" |
| |
| In this context, BTS is "Base transceiver station". It's the stations that |
| connect mobile phones to the mobile network. |
| |
| 3GPP is the "3rd Generation Partnership Project" which is the collaboration |
| between different telecommunication associations for developing new |
| generations of mobile phone networks. (post-2G/GSM) |
| %endif |
| |
| %package ipc |
| Summary: SDR transceiver that implements Layer 1 of a GSM BTS (IPC) |
| Group: Productivity/Telephony/Servers |
| |
| %description ipc |
| OsmoTRX is a software-defined radio transceiver that implements the Layer 1 |
| physical layer of a BTS comprising the following 3GPP specifications: |
| |
| TS 05.01 "Physical layer on the radio path" |
| TS 05.02 "Multiplexing and Multiple Access on the Radio Path" |
| TS 05.04 "Modulation" |
| TS 05.10 "Radio subsystem synchronization" |
| |
| In this context, BTS is "Base transceiver station". It's the stations that |
| connect mobile phones to the mobile network. |
| |
| 3GPP is the "3rd Generation Partnership Project" which is the collaboration |
| between different telecommunication associations for developing new |
| generations of mobile phone networks. (post-2G/GSM) |
| |
| %package ipc-test |
| Summary: SDR transceiver that implements Layer 1 of a GSM BTS (IPC) driver test utility |
| Group: Productivity/Telephony/Servers |
| |
| %description ipc-test |
| OsmoTRX is a software-defined radio transceiver that implements the Layer 1 |
| physical layer of a BTS comprising the following 3GPP specifications: |
| |
| This package include the test tools for osmo-trx-ipc |
| |
| %prep |
| %setup -q |
| |
| %build |
| echo "%{version}" >.tarball-version |
| autoreconf -fi |
| |
| %if 0%{?centos_ver} |
| %configure \ |
| --docdir=%{_docdir}/%{name} \ |
| --with-systemdsystemunitdir=%{_unitdir} \ |
| --without-lms \ |
| --with-uhd \ |
| --without-usrp1 \ |
| --with-ipc |
| %else |
| %configure \ |
| --docdir=%{_docdir}/%{name} \ |
| --with-systemdsystemunitdir=%{_unitdir} \ |
| --with-lms \ |
| --with-uhd \ |
| --with-usrp1 \ |
| --with-ipc |
| %endif |
| |
| make %{?_smp_mflags} V=1 |
| |
| %check |
| make %{?_smp_mflags} check || (find . -name testsuite.log -exec cat {} +) |
| |
| %install |
| %make_install |
| %fdupes -s %{buildroot}/%{_datadir} |
| |
| %if 0%{?suse_version} |
| %pre lms %service_add_pre osmo-trx-lms.service |
| %post lms %service_add_post osmo-trx-lms.service |
| %preun lms %service_del_preun osmo-trx-lms.service |
| %postun lms %service_del_postun osmo-trx-lms.service |
| %pre uhd %service_add_pre osmo-trx-uhd.service |
| %post uhd %service_add_post osmo-trx-uhd.service |
| %preun uhd %service_del_preun osmo-trx-uhd.service |
| %postun uhd %service_del_postun osmo-trx-uhd.service |
| %pre usrp1 %service_add_pre osmo-trx-usrp1.service |
| %post usrp1 %service_add_post osmo-trx-usrp1.service |
| %preun usrp1 %service_del_preun osmo-trx-usrp1.service |
| %postun usrp1 %service_del_postun osmo-trx-usrp1.service |
| %pre ipc %service_add_pre osmo-trx-ipc.service |
| %post ipc %service_add_post osmo-trx-ipc.service |
| %preun ipc %service_del_preun osmo-trx-ipc.service |
| %postun ipc %service_del_postun osmo-trx-ipc.service |
| %endif |
| |
| %files |
| %license COPYING |
| %doc README.md |
| %doc %{_docdir}/%{name}/examples |
| |
| %if ! 0%{?centos_ver} |
| %files lms |
| %{_bindir}/osmo-trx-lms |
| %dir %{_sysconfdir}/osmocom |
| %config(noreplace) %{_sysconfdir}/osmocom/osmo-trx-lms.cfg |
| %{_unitdir}/osmo-trx-lms.service |
| %endif |
| |
| %files uhd |
| %{_bindir}/osmo-trx-uhd |
| %dir %{_sysconfdir}/osmocom |
| %config(noreplace) %{_sysconfdir}/osmocom/osmo-trx-uhd.cfg |
| %{_unitdir}/osmo-trx-uhd.service |
| |
| %if ! 0%{?centos_ver} |
| %files usrp1 |
| %{_bindir}/osmo-trx-usrp1 |
| %dir %{_datadir}/usrp |
| %dir %{_datadir}/usrp/rev2 |
| %dir %{_datadir}/usrp/rev4 |
| %{_datadir}/usrp/rev2/std_inband.rbf |
| %{_datadir}/usrp/rev4/std_inband.rbf |
| %{_unitdir}/osmo-trx-usrp1.service |
| %endif |
| |
| %files ipc |
| %{_bindir}/osmo-trx-ipc |
| %dir %{_sysconfdir}/osmocom |
| %config(noreplace) %{_sysconfdir}/osmocom/osmo-trx-ipc.cfg |
| %{_unitdir}/osmo-trx-ipc.service |
| |
| %files ipc-test |
| %{_bindir}/ipc-driver-test |
| |
| %changelog |