# # spec file for package libosmocore # # Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. # # 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/ # %define version_unconverted 0.9.6.193 Name: libosmocore Version: 0.9.6.193 Release: 0 Summary: Open Source Mobile Communications Core Library License: GPL-2.0 and GPL-2.0+ and LGPL-2.1+ and AGPL-3.0+ Group: Productivity/Telephony/Utilities Url: https://osmocom.org/projects/libosmocore/wiki/Libosmocore Source: %name-%version.tar.xz Patch1: osmo-pkgconfig.diff BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: automake >= 1.6 BuildRequires: libtool >= 2 BuildRequires: pkg-config >= 0.20 BuildRequires: xz BuildRequires: pkgconfig(libpcsclite) BuildRequires: pkgconfig(talloc) %description libosmocore is a package with various utility functions that were originally developed as part of the OpenBSC project, but which are of a more generic nature and thus useful to (at least) other programs that Osmocom develops w.r.t. mobile communications. There is no clear scope of it. It simply houses all code shared between OsmocomBB and OpenBSC to avoid code duplication. %package tools Summary: GSM utilities from the osmocore project License: GPL-2.0 and GPL-2.0+ and LGPL-3.0+ and AGPL-3.0+ Group: Productivity/Telephony/Utilities Provides: %name-utils = %version-%release %description tools libosmocore is a package with various utility functions that were originally developed as part of the OpenBSC project. This package contains a program for frequency calculation for GSM called "osmo-arfcn", and a program called "osmo-auc-gen" that is used for testing GSM authentication. %package -n libosmocodec0 Summary: GSM 06.10, 06.20, 06.60, 06.90 codec library License: GPL-2.0+ Group: System/Libraries %description -n libosmocodec0 The libosmocodec library contains an implementation of multiple GSM codecs: * GSM 06.10 Full Rate (FR) codec * GSM 06.20 Half Rate (HR) codec * GSM 06.60 Enhanced Full Range (EFR) codec * GSM 06.90 Adaptive Multi-Rate (AMR) codec %package -n libosmocodec-devel Summary: Development files for the Osmocom GSM codec library License: GPL-2.0+ Group: Development/Libraries/C and C++ Requires: libosmocodec0 = %version %description -n libosmocodec-devel The libosmocodec library contains an implementation of multiple GSM codecs. This subpackage contains libraries and header files for developing applications that want to make use of libosmocodec. %package -n libosmocoding0 Summary: GSM/GPRS/EDGE transcoding routines library License: GPL-2.0+ Group: System/Libraries %description -n libosmocoding0 libosmocoding is a library which provides GSM, GPRS and EDGE transcoding routines. The following data types are currently supported: xCCH, PDTCH (CS 1-4 and MCS 1-9), TCH/FR, TCH/HR, TCH/AFS, RCH/AHS, RACH and SCH. %package -n libosmocoding-devel Summary: Development files for the Osmocom transcoding library License: GPL-2.0+ Group: Development/Libraries/C and C++ Requires: libosmocoding0 = %version %description -n libosmocoding-devel libosmocoding is a library which provides GSM, GPRS and EDGE transcoding routines. This subpackage contains libraries and header files for developing applications that want to make use of libosmocoding. %package -n libosmocore8 Summary: Osmocom core library # crc16.c has GPL2-only clauses, the rest (*.c) is GPL-2.0+ License: GPL-2.0 and GPL-2.0+ Group: System/Libraries %description -n libosmocore8 libosmocore is a library with various utility functions shared between OpenBSC and OsmocomBB. %package -n libosmocore-devel Summary: Development files for the Osmocom core library # crc16.h has GPL2-only clauses, the rest (*.h) is GPL-2.0+ License: GPL-2.0 and GPL-2.0+ Group: Development/Libraries/C and C++ Requires: libosmocore8 = %version Requires: libtalloc-devel %description -n libosmocore-devel libosmocore is a library with various utility functions shared between OpenBSC and OsmocomBB. This subpackage contains libraries and header files for developing applications that want to make use of libosmocore. %package -n libosmoctrl0 Summary: Osmocom SNMP-like control interface library License: GPL-2.0+ Group: System/Libraries %description -n libosmoctrl0 libosmocore is a package with various utility functions that were originally developed as part of the OpenBSC project. libosmoctrl is an SNMP-like control interface. In contrast to the VTY interface, the control interface is meant to be used by programs. %package -n libosmoctrl-devel Summary: Osmocom control interface library License: GPL-2.0+ Group: Development/Libraries/C and C++ Requires: libosmocore-devel = %version Requires: libosmoctrl0 = %version Requires: libosmovty-devel = %version %description -n libosmoctrl-devel libosmoctrl is an SNMP-like control interface. In contrast to the VTY interface, the control interface is meant to be used by programs. This subpackage contains libraries and header files for developing applications that want to make use of libosmoctrl. %package -n libosmogb4 Summary: Osmocom GPRS Gb Interface (NS/BSSGP) library License: AGPL-3.0+ Group: System/Libraries %description -n libosmogb4 libosmocore is a package with various utility functions that were originally developed as part of the OpenBSC project. The libosmogb library contains a GPRS BSSGP protocol implementation. %package -n libosmogb-devel Summary: Development files for the Osmocom GPRS Gb interface library License: AGPL-3.0+ Group: Development/Libraries/C and C++ Requires: libosmocore-devel = %version Requires: libosmogb4 = %version Requires: libosmogsm-devel = %version %description -n libosmogb-devel The libosmogb library contains a GPRS BSSGP protocol implementation. This subpackage contains libraries and header files for developing applications that want to make use of libosmogb. %package -n libosmogsm6 Summary: Osmocom GSM utility library License: GPL-2.0+ and AGPL-3.0+ Group: System/Libraries %description -n libosmogsm6 libosmocore is a package with various utility functions that were originally developed as part of the OpenBSC project. The libosmogsm library in particular is a collection of common code used in various GSM related sub-projects inside the Osmocom family of projects. It includes A5/1 and A5/2 ciphers, COMP128v1, a LAPDm implementation, a GSM TLV parser, SMS utility routines as well as protocol definitions for a series of protocols. %package -n libosmogsm-devel Summary: Development files for the Osmocom GSM utility library License: GPL-2.0+ and AGPL-3.0+ Group: Development/Libraries/C and C++ Requires: libosmocore-devel = %version Requires: libosmogsm6 = %version %description -n libosmogsm-devel The libosmogsm library in particular is a collection of common code used in various GSM related sub-projects inside the Osmocom family of projects. It includes A5/1 and A5/2 ciphers, COMP128v1, a LAPDm implementation, a GSM TLV parser, SMS utility routines as well as protocol definitions for a series of protocols. This subpackage contains libraries and header files for developing applications that want to make use of libosmogsm. %package -n libosmosim0 Summary: Osmocom SIM card related utility library License: GPL-2.0+ Group: System/Libraries %description -n libosmosim0 libosmocore is a package with various utility functions that were originally developed as part of the OpenBSC project. The libosmosim library in particular contains routines for SIM card access. %package -n libosmosim-devel Summary: Development files for the Osmocom SIM card utility library License: GPL-2.0+ Group: Development/Libraries/C and C++ Requires: libosmocore-devel = %version Requires: libosmosim0 = %version %description -n libosmosim-devel The libosmosim library in particular contains routines for SIM card access. This subpackage contains libraries and header files for developing applications that want to make use of libosmosim. %package -n libosmovty3 Summary: Osmocom VTY interface library License: GPL-2.0+ Group: System/Libraries %description -n libosmovty3 libosmocore is a package with various utility functions that were originally developed as part of the OpenBSC project. The libosmovty library implements the interactive command-line on the VTY (Virtual TTY), as well as configuration file parsing. %package -n libosmovty-devel Summary: Development files for the Osmocom VTY interface library License: GPL-2.0+ Group: Development/Libraries/C and C++ Requires: libosmocore-devel = %version Requires: libosmovty3 = %version %description -n libosmovty-devel The libosmovty library implements the interactive command-line on the VTY (Virtual TTY), as well as configuration file parsing. This subpackage contains libraries and header files for developing applications that want to make use of libosmovty. %prep %setup -q %patch -P 1 -p1 %build echo "%version" >.tarball-version autoreconf -fiv %configure --enable-shared --disable-static \ --includedir="%_includedir/%name" make %{?_smp_mflags} %install b="%buildroot" make %{?_smp_mflags} install DESTDIR="$b" find "$b/%_libdir" -type f -name "*.la" -delete %check # susceptible to timing issues make %{?_smp_mflags} check || : %post -n libosmocodec0 -p /sbin/ldconfig %postun -n libosmocodec0 -p /sbin/ldconfig %post -n libosmocoding0 -p /sbin/ldconfig %postun -n libosmocoding0 -p /sbin/ldconfig %post -n libosmocore8 -p /sbin/ldconfig %postun -n libosmocore8 -p /sbin/ldconfig %post -n libosmoctrl0 -p /sbin/ldconfig %postun -n libosmoctrl0 -p /sbin/ldconfig %post -n libosmogb4 -p /sbin/ldconfig %postun -n libosmogb4 -p /sbin/ldconfig %post -n libosmogsm6 -p /sbin/ldconfig %postun -n libosmogsm6 -p /sbin/ldconfig %post -n libosmosim0 -p /sbin/ldconfig %postun -n libosmosim0 -p /sbin/ldconfig %post -n libosmovty3 -p /sbin/ldconfig %postun -n libosmovty3 -p /sbin/ldconfig %files tools %defattr(-,root,root) %_bindir/osmo-* %files -n libosmocodec0 %defattr(-,root,root) %_libdir/libosmocodec.so.0* %files -n libosmocodec-devel %defattr(-,root,root) %dir %_includedir/%name %dir %_includedir/%name/osmocom %_includedir/%name/osmocom/codec/ %_libdir/libosmocodec.so %_libdir/pkgconfig/libosmocodec.pc %files -n libosmocoding0 %defattr(-,root,root) %_libdir/libosmocoding.so.0* %files -n libosmocoding-devel %defattr(-,root,root) %dir %_includedir/%name %dir %_includedir/%name/osmocom %_includedir/%name/osmocom/coding/ %_libdir/libosmocoding.so %_libdir/pkgconfig/libosmocoding.pc %files -n libosmocore8 %defattr(-,root,root) %_libdir/libosmocore.so.8* %files -n libosmocore-devel %defattr(-,root,root) %dir %_includedir/%name %dir %_includedir/%name/osmocom %_includedir/%name/osmocom/core/ %_libdir/libosmocore.so %_libdir/pkgconfig/libosmocore.pc %files -n libosmoctrl0 %defattr(-,root,root) %_libdir/libosmoctrl.so.0* %files -n libosmoctrl-devel %defattr(-,root,root) %dir %_includedir/%name %dir %_includedir/%name/osmocom %_includedir/%name/osmocom/ctrl/ %_libdir/libosmoctrl.so %_libdir/pkgconfig/libosmoctrl.pc %files -n libosmogb4 %defattr(-,root,root) %_libdir/libosmogb.so.4* %files -n libosmogb-devel %defattr(-,root,root) %dir %_includedir/%name %dir %_includedir/%name/osmocom %_includedir/%name/osmocom/gprs/ %_libdir/libosmogb.so %_libdir/pkgconfig/libosmogb.pc %files -n libosmogsm6 %defattr(-,root,root) %_libdir/libosmogsm.so.6* %files -n libosmogsm-devel %defattr(-,root,root) %dir %_includedir/%name %dir %_includedir/%name/osmocom %_includedir/%name/osmocom/gsm/ %_includedir/%name/osmocom/crypt/ %_libdir/libosmogsm.so %_libdir/pkgconfig/libosmogsm.pc %files -n libosmosim0 %defattr(-,root,root) %_libdir/libosmosim.so.0* %files -n libosmosim-devel %defattr(-,root,root) %dir %_includedir/%name %dir %_includedir/%name/osmocom/ %_includedir/%name/osmocom/sim/ %_libdir/libosmosim.so %_libdir/pkgconfig/libosmosim.pc %files -n libosmovty3 %defattr(-,root,root) %_libdir/libosmovty.so.3* %files -n libosmovty-devel %defattr(-,root,root) %dir %_includedir/%name %dir %_includedir/%name/osmocom %_includedir/%name/osmocom/vty/ %_libdir/libosmovty.so %_libdir/pkgconfig/libosmovty.pc %changelog