From c473d7d9aba38ce3b4610b59a32f35f735a3919b Mon Sep 17 00:00:00 2001 From: Oliver Smith Date: Thu, 14 May 2020 11:27:08 +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: I59255889740195ec811a947a7130ae0918ea4b4d --- .gitignore | 2 + configure.ac | 3 +- contrib/libosmocore.spec | 460 -------------------------------------------- contrib/libosmocore.spec.in | 454 +++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 458 insertions(+), 461 deletions(-) delete mode 100644 contrib/libosmocore.spec create mode 100644 contrib/libosmocore.spec.in diff --git a/.gitignore b/.gitignore index 52242339..a9dd3039 100644 --- a/.gitignore +++ b/.gitignore @@ -99,3 +99,5 @@ tests/conv/gsm0503_test_vectors.c # code coverage reports libosmocore-*-coverage* coverage-cobertura.xml + +contrib/libosmocore.spec diff --git a/configure.ac b/configure.ac index ac887a0d..f69c78de 100644 --- a/configure.ac +++ b/configure.ac @@ -441,4 +441,5 @@ AC_OUTPUT( Doxyfile.coding Doxyfile.gb Doxyfile.ctrl - Makefile) + Makefile + contrib/libosmocore.spec) diff --git a/contrib/libosmocore.spec b/contrib/libosmocore.spec deleted file mode 100644 index 1ea7a8e1..00000000 --- a/contrib/libosmocore.spec +++ /dev/null @@ -1,460 +0,0 @@ -# -# spec file for package libosmocore -# -# Copyright (c) 2018 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 1.3.0.94 - -Name: libosmocore -Version: 1.3.0.94 -Release: 0 -Summary: The Open Source Mobile Communications Core Library -License: GPL-2.0-only AND GPL-2.0-or-later AND LGPL-2.1-or-later AND AGPL-3.0-or-later -Group: Productivity/Telephony/Utilities -Url: https://osmocom.org/projects/libosmocore/wiki/Libosmocore -Source: %name-%version.tar.xz -BuildRequires: automake >= 1.6 -BuildRequires: libtool >= 2 -BuildRequires: lksctp-tools-devel -BuildRequires: pkg-config >= 0.20 -BuildRequires: python2 -BuildRequires: xz -BuildRequires: pkgconfig(gnutls) >= 2.12.0 -BuildRequires: pkgconfig(libpcsclite) -BuildRequires: pkgconfig(libusb-1.0) -BuildRequires: pkgconfig(talloc) >= 2.0.1 - -%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-only AND GPL-2.0-or-later AND LGPL-3.0-or-later AND AGPL-3.0-or-later -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-or-later -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-or-later -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-or-later -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-or-later -Group: Development/Libraries/C and C++ -Requires: libosmocodec-devel = %version -Requires: libosmocoding0 = %version -Requires: libosmocore-devel = %version -Requires: libosmogsm-devel = %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 libosmocore12 -Summary: Osmocom core library -# crc16.c has GPL2-only clauses, the rest (*.c) is GPL-2.0+ -License: GPL-2.0-only AND GPL-2.0-or-later -Group: System/Libraries - -%description -n libosmocore12 -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-only AND GPL-2.0-or-later -Group: Development/Libraries/C and C++ -Requires: libosmocore12 = %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-or-later -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-or-later -Group: Development/Libraries/C and C++ -Requires: libosmocore-devel = %version -Requires: libosmoctrl0 = %version -Requires: libosmogsm-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 libosmogb9 -Summary: Osmocom GPRS Gb Interface (NS/BSSGP) library -License: AGPL-3.0-or-later -Group: System/Libraries - -%description -n libosmogb9 -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-or-later -Group: Development/Libraries/C and C++ -Requires: libosmocore-devel = %version -Requires: libosmogb9 = %version -Requires: libosmovty-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 libosmogsm13 -Summary: Osmocom GSM utility library -License: GPL-2.0-or-later AND AGPL-3.0-or-later -Group: System/Libraries - -%description -n libosmogsm13 -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-or-later AND AGPL-3.0-or-later -Group: Development/Libraries/C and C++ -Requires: libosmocore-devel = %version -Requires: libosmogsm13 = %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-or-later -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-or-later -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 libosmovty4 -Summary: Osmocom VTY interface library -License: GPL-2.0-or-later -Group: System/Libraries - -%description -n libosmovty4 -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-or-later -Group: Development/Libraries/C and C++ -Requires: libosmocore-devel = %version -Requires: libosmovty4 = %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. - -%package -n libosmousb0 -Summary: Osmocom USB library -License: GPL-2.0-or-later -Group: System/Libraries - -%description -n libosmousb0 -libosmocore is a package with various utility functions that were -originally developed as part of the OpenBSC project. - -The libosmosub library in particular contains routines for USB device -access via libusb-1.0, integrated into the libosmocore select event loop. - -%package -n libosmousb-devel -Summary: Development files for the Osmocom USB library -License: GPL-2.0-or-later -Group: Development/Libraries/C and C++ -Requires: libosmocore-devel = %version -Requires: libosmousb0 = %version -Requires: libusb-1_0-devel - -%description -n libosmousb-devel -The libosmosub library in particular contains routines for USB device -access via libusb-1.0, integrated into the libosmocore select event loop. - -This subpackage contains libraries and header files for developing -applications that want to make use of libosmousb. - - -%prep -%setup -q - -%build -echo "%version" >.tarball-version -autoreconf -fiv -%configure --enable-shared --disable-static \ - --includedir="%_includedir/%name" -make %{?_smp_mflags} V=1 - -%install -b="%buildroot" -make %{?_smp_mflags} install DESTDIR="$b" -find "$b/%_libdir" -type f -name "*.la" -delete - -%check -make %{?_smp_mflags} check || (find . -name testsuite.log -exec cat {} +) - -%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 libosmocore12 -p /sbin/ldconfig -%postun -n libosmocore12 -p /sbin/ldconfig -%post -n libosmoctrl0 -p /sbin/ldconfig -%postun -n libosmoctrl0 -p /sbin/ldconfig -%post -n libosmogb9 -p /sbin/ldconfig -%postun -n libosmogb9 -p /sbin/ldconfig -%post -n libosmogsm13 -p /sbin/ldconfig -%postun -n libosmogsm13 -p /sbin/ldconfig -%post -n libosmosim0 -p /sbin/ldconfig -%postun -n libosmosim0 -p /sbin/ldconfig -%post -n libosmovty4 -p /sbin/ldconfig -%postun -n libosmovty4 -p /sbin/ldconfig -%post -n libosmousb0 -p /sbin/ldconfig -%postun -n libosmousb0 -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 libosmocore12 -%defattr(-,root,root) -%_libdir/libosmocore.so.12* - -%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 -%_datadir/aclocal/osmo_ax_code_coverage.m4 -%_datadir/aclocal/osmo_ac_code_coverage.m4 - -%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 libosmogb9 -%defattr(-,root,root) -%_libdir/libosmogb.so.9* - -%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 libosmogsm13 -%defattr(-,root,root) -%_libdir/libosmogsm.so.13* - -%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 libosmovty4 -%defattr(-,root,root) -%_libdir/libosmovty.so.4* - -%files -n libosmovty-devel -%defattr(-,root,root) -%dir %_includedir/%name -%dir %_includedir/%name/osmocom -%_includedir/%name/osmocom/vty/ -%_includedir/%name/osmo-release.mk -%_libdir/libosmovty.so -%_libdir/pkgconfig/libosmovty.pc - -%files -n libosmousb0 -%defattr(-,root,root) -%_libdir/libosmousb.so.0* - -%files -n libosmousb-devel -%defattr(-,root,root) -%dir %_includedir/%name -%dir %_includedir/%name/osmocom -%_includedir/%name/osmocom/usb/ -%_libdir/libosmousb.so -%_libdir/pkgconfig/libosmousb.pc - -%changelog diff --git a/contrib/libosmocore.spec.in b/contrib/libosmocore.spec.in new file mode 100644 index 00000000..a5af3e9b --- /dev/null +++ b/contrib/libosmocore.spec.in @@ -0,0 +1,454 @@ +# +# spec file for package libosmocore +# +# Copyright (c) 2018 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. + +Name: libosmocore +Version: @VERSION@ +Release: 0 +Summary: The Open Source Mobile Communications Core Library +License: GPL-2.0-only AND GPL-2.0-or-later AND LGPL-2.1-or-later AND AGPL-3.0-or-later +Group: Productivity/Telephony/Utilities +Url: https://osmocom.org/projects/libosmocore/wiki/Libosmocore +Source: %name-%version.tar.xz +BuildRequires: automake >= 1.6 +BuildRequires: libtool >= 2 +BuildRequires: lksctp-tools-devel +BuildRequires: pkg-config >= 0.20 +BuildRequires: python3 +BuildRequires: xz +BuildRequires: pkgconfig(gnutls) >= 2.12.0 +BuildRequires: pkgconfig(libpcsclite) +BuildRequires: pkgconfig(libusb-1.0) +BuildRequires: pkgconfig(talloc) >= 2.0.1 + +%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-only AND GPL-2.0-or-later AND LGPL-3.0-or-later AND AGPL-3.0-or-later +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-or-later +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-or-later +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-or-later +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-or-later +Group: Development/Libraries/C and C++ +Requires: libosmocodec-devel = %version +Requires: libosmocoding0 = %version +Requires: libosmocore-devel = %version +Requires: libosmogsm-devel = %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 libosmocore12 +Summary: Osmocom core library +# crc16.c has GPL2-only clauses, the rest (*.c) is GPL-2.0+ +License: GPL-2.0-only AND GPL-2.0-or-later +Group: System/Libraries + +%description -n libosmocore12 +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-only AND GPL-2.0-or-later +Group: Development/Libraries/C and C++ +Requires: libosmocore12 = %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-or-later +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-or-later +Group: Development/Libraries/C and C++ +Requires: libosmocore-devel = %version +Requires: libosmoctrl0 = %version +Requires: libosmogsm-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 libosmogb9 +Summary: Osmocom GPRS Gb Interface (NS/BSSGP) library +License: AGPL-3.0-or-later +Group: System/Libraries + +%description -n libosmogb9 +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-or-later +Group: Development/Libraries/C and C++ +Requires: libosmocore-devel = %version +Requires: libosmogb9 = %version +Requires: libosmovty-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 libosmogsm13 +Summary: Osmocom GSM utility library +License: GPL-2.0-or-later AND AGPL-3.0-or-later +Group: System/Libraries + +%description -n libosmogsm13 +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-or-later AND AGPL-3.0-or-later +Group: Development/Libraries/C and C++ +Requires: libosmocore-devel = %version +Requires: libosmogsm13 = %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-or-later +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-or-later +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 libosmovty4 +Summary: Osmocom VTY interface library +License: GPL-2.0-or-later +Group: System/Libraries + +%description -n libosmovty4 +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-or-later +Group: Development/Libraries/C and C++ +Requires: libosmocore-devel = %version +Requires: libosmovty4 = %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. + +%package -n libosmousb0 +Summary: Osmocom USB library +License: GPL-2.0-or-later +Group: System/Libraries + +%description -n libosmousb0 +libosmocore is a package with various utility functions that were +originally developed as part of the OpenBSC project. + +The libosmosub library in particular contains routines for USB device +access via libusb-1.0, integrated into the libosmocore select event loop. + +%package -n libosmousb-devel +Summary: Development files for the Osmocom USB library +License: GPL-2.0-or-later +Group: Development/Libraries/C and C++ +Requires: libosmocore-devel = %version +Requires: libosmousb0 = %version +Requires: pkgconfig(libusb-1.0) + +%description -n libosmousb-devel +The libosmosub library in particular contains routines for USB device +access via libusb-1.0, integrated into the libosmocore select event loop. + +This subpackage contains libraries and header files for developing +applications that want to make use of libosmousb. + + +%prep +%setup -q + +%build +echo "%version" >.tarball-version +autoreconf -fiv +%configure --enable-shared --disable-static \ + --includedir="%_includedir/%name" +make %{?_smp_mflags} V=1 + +%install +b="%buildroot" +make %{?_smp_mflags} install DESTDIR="$b" +find "$b/%_libdir" -type f -name "*.la" -delete + +%check +make %{?_smp_mflags} check || (find . -name testsuite.log -exec cat {} +) + +%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 libosmocore12 -p /sbin/ldconfig +%postun -n libosmocore12 -p /sbin/ldconfig +%post -n libosmoctrl0 -p /sbin/ldconfig +%postun -n libosmoctrl0 -p /sbin/ldconfig +%post -n libosmogb9 -p /sbin/ldconfig +%postun -n libosmogb9 -p /sbin/ldconfig +%post -n libosmogsm13 -p /sbin/ldconfig +%postun -n libosmogsm13 -p /sbin/ldconfig +%post -n libosmosim0 -p /sbin/ldconfig +%postun -n libosmosim0 -p /sbin/ldconfig +%post -n libosmovty4 -p /sbin/ldconfig +%postun -n libosmovty4 -p /sbin/ldconfig +%post -n libosmousb0 -p /sbin/ldconfig +%postun -n libosmousb0 -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 libosmocore12 +%defattr(-,root,root) +%_libdir/libosmocore.so.12* + +%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 +%_datadir/aclocal/osmo_ax_code_coverage.m4 +%_datadir/aclocal/osmo_ac_code_coverage.m4 + +%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 libosmogb9 +%defattr(-,root,root) +%_libdir/libosmogb.so.9* + +%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 libosmogsm13 +%defattr(-,root,root) +%_libdir/libosmogsm.so.13* + +%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 libosmovty4 +%defattr(-,root,root) +%_libdir/libosmovty.so.4* + +%files -n libosmovty-devel +%defattr(-,root,root) +%dir %_includedir/%name +%dir %_includedir/%name/osmocom +%_includedir/%name/osmocom/vty/ +%_includedir/%name/osmo-release.mk +%_libdir/libosmovty.so +%_libdir/pkgconfig/libosmovty.pc + +%files -n libosmousb0 +%defattr(-,root,root) +%_libdir/libosmousb.so.0* + +%files -n libosmousb-devel +%defattr(-,root,root) +%dir %_includedir/%name +%dir %_includedir/%name/osmocom +%_includedir/%name/osmocom/usb/ +%_libdir/libosmousb.so +%_libdir/pkgconfig/libosmousb.pc + +%changelog -- cgit v1.2.3