Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package ffado for openSUSE:Factory checked in at 2025-06-06 22:35:20 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ffado (Old) and /work/SRC/openSUSE:Factory/.ffado.new.19631 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ffado" Fri Jun 6 22:35:20 2025 rev:48 rq:1282829 version:2.4.9 Changes: -------- --- /work/SRC/openSUSE:Factory/ffado/ffado.changes 2025-01-25 19:09:49.678134331 +0100 +++ /work/SRC/openSUSE:Factory/.ffado.new.19631/ffado.changes 2025-06-06 22:35:31.970111701 +0200 @@ -1,0 +2,8 @@ +Mon Jun 2 11:37:30 UTC 2025 - Jan Engelhardt <jeng...@inai.de> + +- Combine ffado.spec, ffado-mixer.spec to form a multibuild + package instead. Compact description. Trim constructs for old + distros. +- Follow standard practice of naming subpackage X -> X-devel. + +------------------------------------------------------------------- Old: ---- ffado-mixer.changes ffado-mixer.spec ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ffado.spec ++++++ --- /var/tmp/diff_new_pack.YsSeg3/_old 2025-06-06 22:35:32.750143867 +0200 +++ /var/tmp/diff_new_pack.YsSeg3/_new 2025-06-06 22:35:32.750143867 +0200 @@ -16,9 +16,16 @@ # +%define docs 0 +%define flavor @BUILD_FLAVOR@%{nil} +%if "%{flavor}" == "" +%define mflavor %{nil} +%else +%define mflavor -%{flavor} +%endif %define sover 2 %define tname libffado -Name: ffado +Name: ffado%{mflavor} Version: 2.4.9 Release: 0 Summary: FireWire 1394 support for audio devices @@ -32,14 +39,10 @@ # PATCH-FIX-UPSTREAM ffado-nosys.patch davejpla...@gmail.com -- No import sys in SConstruct although functions are used. Patch4: ffado-nosys.patch Patch5: reproducible.patch - BuildRequires: fdupes BuildRequires: gcc-c++ BuildRequires: pkg-config -BuildRequires: python3-setuptools -BuildRequires: scons >= 3.0.2 BuildRequires: pkgconfig(alsa) -BuildRequires: pkgconfig(dbus-1) >= 1.0 BuildRequires: pkgconfig(dbus-c++-1) BuildRequires: pkgconfig(dbus-python) BuildRequires: pkgconfig(expat) @@ -48,34 +51,61 @@ BuildRequires: pkgconfig(libiec61883) >= 1.1.0 BuildRequires: pkgconfig(libraw1394) >= 2.0.5 BuildRequires: pkgconfig(libxml++-3.0) >= 3.0.0 +%if "%{flavor}" == "" +BuildRequires: python3-setuptools +BuildRequires: scons >= 3.0.2 +BuildRequires: pkgconfig(dbus-1) >= 1.0 Requires: libffado%{sover} = %{version} Recommends: ffado-mixer = %{version} -BuildRoot: %{_tmppath}/%{name}-%{version}-build +%endif +%if "%{flavor}" == "mixer" +BuildRequires: doxygen +BuildRequires: ffado = %{version} +BuildRequires: graphviz-gnome +BuildRequires: python3-qt5-devel +BuildRequires: python3-setuptools +BuildRequires: scons +BuildRequires: update-desktop-files +BuildRequires: xdg-utils +BuildRequires: xorg-x11-fonts +BuildRequires: pkgconfig(libffado) = %{version} +%if 0%{?suse_version} == 1600 && !0%{?is_opensuse} +ExclusiveArch: do_not_build +%endif +Requires: ffado = %{version} +BuildArch: noarch +%endif %description -FFADO aims to provide a generic, open-source solution -to support FireWire(IEEE1394, iLink) based (semi-) -professional audio interfaces. -It's the successor of the FreeBoB project. FFADO is a -volunteer-based community effort, trying to provide Linux -with at least the same level of functionality that is -present on the other operating systems. -The range of FireWire Audio Devices that we would like -to support is broad: from pure audio interfaces over -mixed audio-control devices to DSP algorithm devices. -This is a snapshot of svn revision 1855 +%if "%{flavor}" == "" +FFADO provides a generic solution to support FireWire (IEEE1394, +iLink) based (semi-)professional audio interfaces. It provides Linux +with at least the same level of functionality that is present on the +other operating systems. The range of FireWire Audio Devices +supported ranges from pure audio interfaces over mixed audio-control +devices to DSP algorithm devices. +%endif +%if "%{flavor}" == "mixer" +ffado-mixer presents a graphical application allowing a FFADO device +to be controlled. The extent of the control is determined by the +level of support for the device in FFADO and in ffado-dbus-server. +Typical controls offered by ffado-mixer include faders for the +on-board mixer, phantom power control, mode switches and so on. +%endif -%package -n libffado-devel +%package -n ffado-devel Summary: Development files for ffado Group: Development/Libraries/C and C++ Requires: glibc-devel -Requires: libconfig-devel -Requires: libdbus-c++-devel Requires: libffado%{sover} = %{version} +Requires: pkgconfig(dbus-c++-1) +Requires: pkgconfig(libconfig) +Obsoletes: libffado-devel < %{version}-%{release} +Provides: libffado-devel = %{version}-%{release} -%description -n libffado-devel +%description -n ffado-devel This package supplys the files necessary to develop -applications that use the FFADO libraries and api. +applications that use the FFADO libraries and API. %package -n libffado%{sover} Summary: FireWire 1394 support for audio devices @@ -84,11 +114,11 @@ %description -n libffado%{sover} This package provides the libffado shared library that provides a unified programming interface to configure and -use all supported devices. Currently this library is used -by the 'firewire' backends of the jack audio connection kit -sound server. This backend provides audio and midi support, +use all supported devices. Currently, this library is used +by the 'firewire' backends of the JACK Audio Connection Kit +sound server. This backend provides audio and MIDI support, and is available in jackd. Access to the device internal -configuration (e,g, internal mixer) is exposed using the +configuration (e.g. internal mixer) is exposed using the ffado-dbus-server daemon. This daemon exposes the configurable parameters of all detected devices through DBUS. The ffadomixer application in support/mixer presents @@ -96,9 +126,7 @@ supported devices). %prep - -%setup -q -n %{tname}-%{version} -%autopatch -p0 +%autosetup -n %{tname}-%{version} -p0 for i in `grep -rl "/usr/bin/env python"`;do sed -i '1s/^#!.*/#!\/usr\/bin\/python3/' ${i} ;done for i in `grep -rl "/usr/bin/python"`;do sed -i '1s/^#!.*/#!\/usr\/bin\/python3/' ${i} ;done @@ -117,27 +145,33 @@ LIBDIR=%{_libdir} \ MANDIR=%{_mandir} \ UDEVDIR=%{_udevrulesdir} \ + DETECT_USERSPACE_ENV=False \ +%if "%{flavor}" == "" ENABLE_GENERICAVC=yes \ - SERIALIZE_USE_EXPAT=no \ - DEBUG=no \ ENABLE_ALL=yes \ - PYPKGDIR=%{python_sitelib} \ - ENABLE_OPTIMIZATIONS=yes \ - DETECT_USERSPACE_ENV=False \ ENABLE_SETBUFFERSIZE_API_VER=auto \ BUILD_TESTS=yes \ BUILD_MIXER=False \ ENABLE_DICE=true \ +%endif +%if "%{flavor}" == "mixer" + ENABLE_GENERICAVC=no \ + ENABLE_ALL=no \ + BUILD_TESTS=no \ + BUILD_MIXER=True \ +%endif + SERIALIZE_USE_EXPAT=no \ + DEBUG=no \ + PYPKGDIR=%{python3_sitelib} \ + ENABLE_OPTIMIZATIONS=yes \ COMPILE_FLAGS="%{optflags} -fno-strict-aliasing -ggdb ${EXTRA_FLAGS}" \ CUSTOM_ENV=True \ PYTHON_INTERPRETER="%{_bindir}/python3" %install +mkdir -p %{buildroot}%{python3_sitelib} # WARNING: the install scons statement must be identical to the build one otherwise a complete rebuild is executed. export EXTRA_FLAGS="-Wno-deprecated-declarations -fpermissive --std=gnu++11" -%if 0%{?gcc_version} > 5 -export EXTRA_FLAGS="${EXTRA_FLAGS} -Werror=date-time" -%endif %ifarch %arm export EXTRA_FLAGS="${EXTRA_FLAGS} -fPIC" %endif @@ -147,32 +181,61 @@ LIBDIR=%{_libdir} \ MANDIR=%{_mandir} \ UDEVDIR=%{_udevrulesdir} \ +%if "%{flavor}" == "" ENABLE_GENERICAVC=yes \ - SERIALIZE_USE_EXPAT=no \ - DEBUG=no \ ENABLE_ALL=yes \ - PYPKGDIR=%{python_sitelib} \ - ENABLE_OPTIMIZATIONS=yes \ - DETECT_USERSPACE_ENV=False \ ENABLE_SETBUFFERSIZE_API_VER=auto \ BUILD_TESTS=yes \ BUILD_MIXER=False \ ENABLE_DICE=true \ +%endif +%if "%{flavor}" == "mixer" + ENABLE_GENERICAVC=no \ + ENABLE_ALL=no \ + BUILD_TESTS=no \ + BUILD_MIXER=True \ +%endif + SERIALIZE_USE_EXPAT=no \ + DEBUG=no \ + PYPKGDIR=%{python3_sitelib} \ + ENABLE_OPTIMIZATIONS=yes \ + DETECT_USERSPACE_ENV=False \ COMPILE_FLAGS="%{optflags} -fno-strict-aliasing -ggdb ${EXTRA_FLAGS}" \ CUSTOM_ENV=True \ PYTHON_INTERPRETER="%{_bindir}/python3" -rm -rf %{buildroot}%{_libdir}/libffado +%if "%{flavor}" == "" +rm -Rfv %{buildroot}%{_libdir}/libffado +%endif -%fdupes -s %{buildroot}%{_datadir} +%if "%{flavor}" == "mixer" +rm -Rfv %{buildroot}/%{_libdir}/%tname.* %{buildroot}/%{_includedir}/libffado \ + %{buildroot}/%{_libdir}/pkgconfig + +# Remove the useless udev rules and man pages on the mixer package +rm -Rfv %{buildroot}/%{_mandir} %{buildroot}/%{_udevrulesdir} + +rpm -ql ffado | while read file; do + rm -v "%{buildroot}/$file" || : +done + +rm -Rfv %{buildroot}/%{_libdir}/libffado + +mkdir -pv %{buildroot}/%{_datadir}/applications/ +mkdir -pv %{buildroot}/%{_datadir}/pixmaps +cp -av support/xdg/hi64-apps-ffado.png %{buildroot}%{_datadir}/pixmaps/ffadomixer.png +%suse_update_desktop_file -c ffadomixer FfadoMixer "Mixer for ffado" ffado-mixer ffadomixer "AudioVideo;Mixer;HardwareSettings;Qt" + +find ./ -empty -delete +%endif +%fdupes -s %{buildroot}%{_datadir} %python3_fix_shebang -%post -n libffado%{sover} -p /sbin/ldconfig -%postun -n libffado%{sover} -p /sbin/ldconfig +%ldconfig_scriptlets -n libffado%{sover} %files -%defattr(-,root,root) +%if "%{flavor}" == "" %doc README %doc AUTHORS %license LICENSE.GPLv2 LICENSE.GPLv3 @@ -210,18 +273,30 @@ %{_mandir}/man1/ffado-diag.1.gz %{_mandir}/man1/ffado-dice-firmware.1.gz %{_mandir}/man1/ffado-fireworks-downloader.1.gz +%endif +%if "%{flavor}" == "mixer" +%{_bindir}/ffado-mixer +%{_datadir}/%{tname}/ +%{_datadir}/icons/* +%{_datadir}/pixmaps/ffadomixer.png +%{_datadir}/applications/* +%{python3_sitelib}/* +%{_datadir}/metainfo/org.ffado.FfadoMixer.metainfo.xml +%endif -%files -n libffado-devel -%defattr(-,root,root) +%if "%{flavor}" == "" +%files -n ffado-devel %dir %{_includedir}/%{tname} %{_includedir}/%{tname}/*.h %{_libdir}/%{tname}*.so %{_libdir}/pkgconfig/%{tname}.pc +%endif +%if "%{flavor}" == "" %files -n libffado%{sover} -%defattr(-,root,root) %{_libdir}/%{tname}.so.%{sover}* %dir %{_udevrulesdir} %dir %{_udevrulesdir}/.. %{_udevrulesdir}/60-ffado.rules +%endif ++++++ _multibuild ++++++ --- /var/tmp/diff_new_pack.YsSeg3/_old 2025-06-06 22:35:32.790145517 +0200 +++ /var/tmp/diff_new_pack.YsSeg3/_new 2025-06-06 22:35:32.798145846 +0200 @@ -1,5 +1,5 @@ <multibuild> - <package>ffado-mixer</package> + <flavor>mixer</flavor> </multibuild>