Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package libmirisdr for openSUSE:Factory checked in at 2026-08-27 18:51:27 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libmirisdr (Old) and /work/SRC/openSUSE:Factory/.libmirisdr.new.1265 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libmirisdr" Thu Aug 27 18:51:27 2026 rev:3 rq:1373863 version:2.0.0 Changes: -------- --- /work/SRC/openSUSE:Factory/libmirisdr/libmirisdr.changes 2024-02-29 21:53:05.607974063 +0100 +++ /work/SRC/openSUSE:Factory/.libmirisdr.new.1265/libmirisdr.changes 2026-08-27 18:54:58.276110643 +0200 @@ -1,0 +2,72 @@ +Wed Aug 26 17:32:08 UTC 2026 - Martin Pluskal <[email protected]> + +- Switch upstream to the maintained fork f4exb/libmirisdr-4 and + update to version 2.0.0: + * The osmocom libmirisdr repository this package tracked has seen no + commit since 2013; the f4exb fork is what Debian, Ubuntu, Kali, + OpenMandriva, Raspbian and ROSA ship + * The fork merges libmirisdr-2 by Miroslav Slugen with the + libmirisdr-3-bsz additions by Leif Asbrink SM5BSZ + * The fork numbers its release tags independently of its library + major version: release 2.0.0 ships SONAME libmirisdr.so.4 +- Changes since the 2013 osmocom snapshot: + * Much larger public API: bandwidth, IF and crystal frequency, + sample format, USB transfer mode, per-stage gain (LNA, mixer, + mixbuffer, baseband), bias tee, band query, explicit streaming and + asynchronous start/stop, device reset and ADC init + * mirisdr_set_hw_flavour() selects the hardware flavour (generic + MSi2500 or SDRplay) and drives the frequency plan; in 2.0.0 it + moved out of mirisdr_open() into a function of its own + * All entry points of the 2013 snapshot keep their names and + signatures, so existing callers of the old API still compile + * New miri_fm command line FM demodulator next to miri_sdr + * Recognise the SDRplay RSP1A and RSP2 in the udev rules + * Bias tee support for the purple dongle + * Enable the hidden 260-380 MHz band, enable the FM notch in the + 400 MHz and 1 GHz bands, improve tuning accuracy and correct the + GPIO mapping + * Restore the gain settings after frequency, bandwidth and IF + changes, and correct baseband and mixbuffer gain handling + * Drop the useless automatic gain mode; its setter and getter remain + for compatibility but do nothing + * Do not call libusb_close() on asynchronous failure, which caused a + segfault, and abort cleanly after libusb submit transfer failures + * Build against the system libusb instead of the bundled and + deprecated libusb.h 1.0.13 + * New DETACH_KERNEL_DRIVER build option, not enabled here +- Rename the shared library subpackage libmirisdr0 to libmirisdr4, the + fork bumped the SONAME from libmirisdr.so.0 to libmirisdr.so.4: + * Add matching Provides and Obsoletes for libmirisdr0 so installed + systems upgrade cleanly + * Point the devel subpackage at the renamed library subpackage + * Everything linking the library needs a rebuild: gr-osmosdr and + soapy-osmo do, gqrx does not link it directly +- Drop libmirisdr-cmake-libsuffix.diff, the fork already applies the + library suffix to the pkg-config file and to its install location +- Add libmirisdr-release-version.patch: upstream leaves the patch level + at "git" in its release archives, which produced an empty pkg-config + version and a library called libmirisdr.so.4.0git instead of + libmirisdr.so.4.0.0 +- Build from the upstream release tarball and drop the _service and + _servicedata files that tracked the dormant osmocom git repository +- Correct the license from the deprecated GPL-2.0 to GPL-2.0-or-later, + which is what every compiled source file header grants; the shipped + udev rules file carries a GPL-3.0-or-later header, recorded in a + Legal-Review-Notice above the License tag rather than split out into + its own subpackage tag, the way other distributions declare it too +- Packaging cleanup: + * Pass -DCMAKE_SKIP_INSTALL_RPATH=ON, upstream hardcodes an install + RPATH of /usr/lib + * Package the new miri_fm binary + * Turn mirisdr-udev into a noarch subpackage and drop its + %udev_rules_update scriptlets, a no-op now that udev ships a file + trigger + * Drop the git-core build requirement, no longer needed + * Ship COPYING as %license and README.md as %doc, upstream no longer + has an AUTHORS file + * Correct the summaries and descriptions, the chip is the Mirics + MSi2500 and not the MRi2500 + * Use %cmake_build, %ldconfig_scriptlets and explicit shared library + file names, drop Group tags and %defattr + +------------------------------------------------------------------- Old: ---- _service _servicedata libmirisdr-0.0.0+git.20130608.tar.xz libmirisdr-cmake-libsuffix.diff New: ---- libmirisdr-4-2.0.0.tar.gz libmirisdr-release-version.patch ----------(Old B)---------- Old: soapy-osmo do, gqrx does not link it directly - Drop libmirisdr-cmake-libsuffix.diff, the fork already applies the library suffix to the pkg-config file and to its install location ----------(Old E)---------- ----------(New B)---------- New: library suffix to the pkg-config file and to its install location - Add libmirisdr-release-version.patch: upstream leaves the patch level at "git" in its release archives, which produced an empty pkg-config ----------(New E)---------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libmirisdr.spec ++++++ --- /var/tmp/diff_new_pack.tDPmVH/_old 2026-08-27 18:54:59.158141437 +0200 +++ /var/tmp/diff_new_pack.tDPmVH/_new 2026-08-27 18:54:59.160141507 +0200 @@ -1,7 +1,7 @@ # # spec file for package libmirisdr # -# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2026 SUSE LLC and contributors # Copyright (c) 2012-2014 Wojciech Kazubski, [email protected] # # All modifications and additions to the file contributed by third parties @@ -13,105 +13,107 @@ # 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/ +# Please submit bugfixes or comments via https://bugs.opensuse.org/ # -%define sover 0 +# The fork numbers its release tags and its library major version +# independently: release 2.0.0 ships SONAME libmirisdr.so.4 +%define sover 4 %define libname libmirisdr%{sover} Name: libmirisdr -Version: 0.0.0+git.20130608 +Version: 2.0.0 Release: 0 -Summary: Support programs for MRi2500 -License: GPL-2.0 -Group: Productivity/Hamradio/Other -Url: http://cgit.osmocom.org/libmirisdr/ -Source: %{name}-%{version}.tar.xz -Patch0: libmirisdr-cmake-libsuffix.diff +Summary: Support programs for Mirics MSi2500 based SDR receivers +# Legal-Review-Notice: every source file compiled into the shared library +# and the command line tools carries a GPL-2.0-or-later header, and COPYING +# is the GPL-2.0 text, so the whole package is tagged GPL-2.0-or-later - +# the same way other distributions declare it. Two files disagree with +# that in their own headers and are noted here so the finding is not +# re-derived every time: the shipped udev rules file carries a +# GPL-3.0-or-later header, and so does the CMake build system, which is +# build tooling and is not shipped in any binary package at all. +License: GPL-2.0-or-later +URL: https://github.com/f4exb/libmirisdr-4 +Source: %{url}/archive/refs/tags/v%{version}.tar.gz#/libmirisdr-4-%{version}.tar.gz +Patch0: libmirisdr-release-version.patch BuildRequires: cmake -BuildRequires: git-core BuildRequires: pkgconfig BuildRequires: pkgconfig(libusb-1.0) BuildRequires: pkgconfig(udev) %description -Programs that controls Mirics MRi2500 based DVB dongle in raw mode, so -it can be used as a SDR receiver. +Programs that control a Mirics MSi2500 based DVB dongle in raw mode, so +that it can be used as an SDR receiver. %package -n %{libname} -Summary: SDR driver for MRi2500 -Group: System/Libraries -Provides: %{name} = %{version} +Summary: SDR driver for Mirics MSi2500 based receivers Requires: mirisdr-udev +Provides: %{name} = %{version}-%{release} +# The upstream fork bumped the SONAME from libmirisdr.so.0 to libmirisdr.so.4 +Provides: libmirisdr0 = %{version}-%{release} +Obsoletes: libmirisdr0 < %{version}-%{release} %description -n %{libname} -Library to run Mirics MRi2500 based DVB dongle as a SDR receiver. +Library to run a Mirics MSi2500 based DVB dongle as an SDR receiver. %package -n mirisdr -Summary: Support programs for MRi2500 -Group: Productivity/Hamradio/Other +Summary: Support programs for Mirics MSi2500 based SDR receivers %description -n mirisdr -Programs that controls Mirics MRi2500 based DVB dongle in raw mode, so -it can be used as a SDR receiver. +Programs that control a Mirics MSi2500 based DVB dongle in raw mode, so +that it can be used as an SDR receiver. %package devel Summary: Development files for libmirisdr -Group: Development/Libraries/C and C++ -Requires: %{name} = %{version}-%{release} +Requires: %{libname} = %{version}-%{release} %description devel -Library headers and other development files for mirisdr driver. +Library headers and other development files for the mirisdr driver. %package -n mirisdr-udev -Summary: Udev rules for Mirics MRi2500 based DVB dongles -Group: Hardware/Other +Summary: Udev rules for Mirics MSi2500 based DVB dongles +BuildArch: noarch %description -n mirisdr-udev -Udev rules for Mirics MRi2500 based DVB dongles. - +Udev rules for Mirics MSi2500 based DVB dongles. %prep -%autosetup -p1 +%autosetup -p1 -n libmirisdr-4-%{version} %build -%cmake -make %{?_smp_mflags} +# Upstream hardcodes an install RPATH of %%{_prefix}/lib +%cmake \ + -DCMAKE_SKIP_INSTALL_RPATH:BOOL=ON +%cmake_build %install %cmake_install +# Only the shared library is shipped rm %{buildroot}%{_libdir}/libmirisdr.a -#install udev rules install -D -p -m 0644 mirisdr.rules %{buildroot}%{_udevrulesdir}/10-mirisdr.rules -%post -n %{libname} -p /sbin/ldconfig -%postun -n %{libname} -p /sbin/ldconfig - -%post -n mirisdr-udev -%udev_rules_update - -%postun -n mirisdr-udev -%udev_rules_update +%ldconfig_scriptlets -n %{libname} %files -n mirisdr -%defattr(-,root,root) -%doc AUTHORS COPYING README +%license COPYING +%doc README.md +%{_bindir}/miri_fm %{_bindir}/miri_sdr %files -n %{libname} -%defattr(-,root,root) -%doc AUTHORS COPYING README -%{_libdir}/libmirisdr.so.%{sover}* +%license COPYING +%{_libdir}/libmirisdr.so.%{sover} +%{_libdir}/libmirisdr.so.%{sover}.* %files -n mirisdr-udev -%defattr(-,root,root) +%license COPYING %{_udevrulesdir}/10-mirisdr.rules %files devel -%defattr(-,root,root) -%{_libdir}/libmirisdr.so %{_includedir}/mirisdr.h %{_includedir}/mirisdr_export.h +%{_libdir}/libmirisdr.so %{_libdir}/pkgconfig/libmirisdr.pc ++++++ libmirisdr-release-version.patch ++++++ Mark the release tarball as a numbered release instead of a git build. Upstream leaves VERSION_INFO_PATCH_VERSION at "git" even in the tagged release archives. Because a tarball is not a git checkout, "git describe" returns nothing and the build ends up with an empty pkg-config Version: field and a shared library called libmirisdr.so.4.0git. Declaring the patch level makes the release build self-consistent: libmirisdr.so.4.0.0 behind SONAME libmirisdr.so.4, and "Version: 4.0.0" in libmirisdr.pc. Index: libmirisdr-4-2.0.0/CMakeLists.txt =================================================================== --- libmirisdr-4-2.0.0.orig/CMakeLists.txt +++ libmirisdr-4-2.0.0/CMakeLists.txt @@ -48,7 +48,7 @@ set(CMAKE_BUILD_TYPE ${CMAKE_BUILD_TYPE} # Set the version information here set(VERSION_INFO_MAJOR_VERSION 4) # increment major on api compatibility changes set(VERSION_INFO_MINOR_VERSION 0) # increment minor on feature-level changes -set(VERSION_INFO_PATCH_VERSION git) # increment patch for bug fixes and docs +set(VERSION_INFO_PATCH_VERSION 0) # increment patch for bug fixes and docs include(Version) # setup version info ########################################################################
