- Fixes for adding the debuginfo package for Windows binaries as

requested on https://build.opensuse.org/request/show/1244505
  * Use suffix -debuginfo for Windows debuginfo package name
  * Add a conflict tag to the wine*-win-debuginfo package to
    prevent parallel installations
- Other fixes related to the debuginfo package for Windows binaries
  * add build requirement for mingw32|64-filesystem >= 20250221
    as this package depends on them
  * Use shorter package name for Windows binaries (wine*-win-debuginfo)
  * Install debug files for Windows binaries in /usr/lib/debug because
    post-build-checks require this
  * Add the empty directory /usr/src/debug/wine-<version> to debuginfo
    Package for Windows binaries, as required by post-build-checks
- Fix wine-devel.x86_64: E: suse-zypp-otherproviders otherproviders(*)
  The 'otherproviders(symbol)' syntax is deprecated, it is not needed
  and you can use the 'symbol' directly: 'conflicts: symbol'

OBS-URL: https://build.opensuse.org/package/show/Emulators/wine?expand=0&rev=1185
This commit is contained in:
Marcus Meissner 2025-02-25 10:17:43 +00:00 committed by Git OBS Bridge
parent b3dfc39255
commit 6bc90b681f
2 changed files with 59 additions and 18 deletions

View File

@ -1,3 +1,23 @@
-------------------------------------------------------------------
Thu Feb 20 11:51:39 UTC 2025 - Ralf Habacker <ralf.habacker@freenet.de>
- Fixes for adding the debuginfo package for Windows binaries as
requested on https://build.opensuse.org/request/show/1244505
* Use suffix -debuginfo for Windows debuginfo package name
* Add a conflict tag to the wine*-win-debuginfo package to
prevent parallel installations
- Other fixes related to the debuginfo package for Windows binaries
* add build requirement for mingw32|64-filesystem >= 20250221
as this package depends on them
* Use shorter package name for Windows binaries (wine*-win-debuginfo)
* Install debug files for Windows binaries in /usr/lib/debug because
post-build-checks require this
* Add the empty directory /usr/src/debug/wine-<version> to debuginfo
Package for Windows binaries, as required by post-build-checks
- Fix wine-devel.x86_64: E: suse-zypp-otherproviders otherproviders(*)
The 'otherproviders(symbol)' syntax is deprecated, it is not needed
and you can use the 'symbol' directly: 'conflicts: symbol'
-------------------------------------------------------------------
Wed Feb 12 22:25:05 UTC 2025 - Ralf Habacker <ralf.habacker@freenet.de>

View File

@ -34,17 +34,42 @@
%define staging 1
%endif
%ifarch %{ix86}
%global __arch_install_post \
/usr/lib/rpm/mingw32-find-debuginfo.sh --no-debug-source-package %{_builddir} \
%global _mingw32_find_debuginfo \
rm -f %{_builddir}/mingw32-debugfiles.list; \
bash -x /usr/lib/rpm/mingw32-find-debuginfo.sh --no-debug-source-package %{_builddir}; \
mkdir -p %{buildroot}/usr/lib/debug%{_libdir}/wine/i386-windows; \
mv %{buildroot}%{_libdir}/wine/i386-windows/*.debug %{buildroot}/usr/lib/debug%{_libdir}/wine/i386-windows; \
sed -i 's,^%{_libdir},/usr/lib/debug%{_libdir},g' %{_builddir}/mingw32-debugfiles.list; \
mkdir -p %{buildroot}/usr/src/debug/%{name}-%{version}; \
echo "%dir /usr/src/debug/%{name}-%{version}" >> %{_builddir}/mingw32-debugfiles.list; \
%{nil}
%global _win_debug_package %_mingw32_debug_package -e -n wine%{psuffix}-windows
%global _mingw64_find_debuginfo \
rm -f %{_builddir}/mingw64-debugfiles.list; \
bash -x /usr/lib/rpm/mingw64-find-debuginfo.sh --no-debug-source-package %{_builddir}; \
mkdir -p %{buildroot}/usr/lib/debug%{_libdir}/wine/x86_64-windows; \
mv %{buildroot}%{_libdir}/wine/x86_64-windows/*.debug %{buildroot}/usr/lib/debug%{_libdir}/wine/x86_64-windows; \
sed -i 's,^%{_libdir},/usr/lib/debug%{_libdir},g' %{_builddir}/mingw64-debugfiles.list; \
mkdir -p %{buildroot}/usr/src/debug/%{name}-%{version}; \
echo "%dir /usr/src/debug/%{name}-%{version}" >> %{_builddir}/mingw64-debugfiles.list; \
%{nil}
%if %wow64
%global __arch_install_post \
%_mingw32_find_debuginfo \
%_mingw64_find_debuginfo \
cat %{_builddir}/mingw32-debugfiles.list >> %{_builddir}/mingw64-debugfiles.list; \
%{nil}
%global _win_debug_package %_mingw64_debug_package -e -C wine%{psuffix}-win-debuginfo -N wine%{psuffix}-win-debuginfo
%else
%ifarch %{ix86}
%global __arch_install_post %_mingw32_find_debuginfo
%global _win_debug_package %_mingw32_debug_package -e -C wine%{psuffix}-win-debuginfo -N wine%{psuffix}-win-debuginfo
%endif
%ifarch x86_64
%global __arch_install_post \
/usr/lib/rpm/mingw64-find-debuginfo.sh --no-debug-source-package %{_builddir} \
%{nil}
%global _win_debug_package %_mingw64_debug_package -e -n wine%{psuffix}-windows
%global __arch_install_post %_mingw64_find_debuginfo
%global _win_debug_package %_mingw64_debug_package -e -C wine%{psuffix}-win-debuginfo -N wine%{psuffix}-win-debuginfo
%endif
%endif
%define _lto_cflags %{nil}
@ -134,11 +159,14 @@ BuildRequires: llvm
%endif
%ifarch %{ix86}
BuildRequires: mingw32-cross-gcc
BuildRequires: mingw32-filesystem >= 20250221
%endif
%ifarch x86_64
BuildRequires: mingw64-cross-gcc
BuildRequires: mingw64-filesystem >= 20250221
%if %{wow64}
BuildRequires: mingw32-cross-gcc
BuildRequires: mingw32-filesystem >= 20250221
%endif
%endif
%if 0%{?suse_version} < 1600
@ -169,16 +197,16 @@ Requires: samba-winbind
Recommends: wine-gecko >= 2.47.4
Recommends: wine-mono >= 9.4.0
Recommends: winetricks
Conflicts: wine
Conflicts: wine-gecko < 2.47.4
Conflicts: wine-mono < 9.4.0
Conflicts: otherproviders(wine)
Provides: wine-mp3 = %version
Obsoletes: wine-mp3 < %version
%if "%{flavor}" != ""
Provides: wine = %{version}-%{release}
%endif
%if "%{flavor}" == "wow64" || "%{flavor}" == "staging-wow64"
Conflicts: otherproviders(wine-32bit)
Conflicts: wine-32bit
Provides: wine-32bit = %{version}-%{release}
%endif
ExclusiveArch: aarch64 %{ix86} x86_64
@ -201,7 +229,7 @@ Summary: Files for Wine development
%if "%{flavor}" != ""
Provides: wine-devel = %{version}
%endif
Conflicts: otherproviders(wine-devel)
Conflicts: wine-devel
%description devel
This RPM contains the header files and development tools for the WINE
@ -339,16 +367,13 @@ chmod 755 %winedir/my-find-requires.sh
%if !%{wow64}
%{_libdir}/wine/aarch64-windows
%exclude %{_libdir}/wine/aarch64-windows/*.a
%exclude %{_libdir}/wine/aarch64-windows/*.debug
%endif
%{_libdir}/wine/aarch64-unix
%if %{wow64}
%{_libdir}/wine/i386-windows
%exclude %{_libdir}/wine/i386-windows/*.a
%exclude %{_libdir}/wine/i386-windows/*.debug
%{_libdir}/wine/x86_64-windows
%exclude %{_libdir}/wine/x86_64-windows/*.a
%exclude %{_libdir}/wine/x86_64-windows/*.debug
%endif
%endif
%ifarch %{ix86}
@ -357,7 +382,6 @@ chmod 755 %winedir/my-find-requires.sh
%{_mandir}/man?/wine.?%{?ext_man}
%{_libdir}/wine/i386-windows
%exclude %{_libdir}/wine/i386-windows/*.a
%exclude %{_libdir}/wine/i386-windows/*.debug
%{_libdir}/wine/i386-unix
%exclude %{_libdir}/wine/i386-unix/*.a
%endif
@ -368,10 +392,8 @@ chmod 755 %winedir/my-find-requires.sh
%{_mandir}/man?/wine.?%{?ext_man}
%{_libdir}/wine/i386-windows
%exclude %{_libdir}/wine/i386-windows/*.a
%exclude %{_libdir}/wine/i386-windows/*.debug
%{_libdir}/wine/x86_64-windows
%exclude %{_libdir}/wine/x86_64-windows/*.a
%exclude %{_libdir}/wine/x86_64-windows/*.debug
%{_libdir}/wine/x86_64-unix
%exclude %{_libdir}/wine/x86_64-unix/*.a
%else
@ -381,7 +403,6 @@ chmod 755 %winedir/my-find-requires.sh
%exclude %{_libdir}/wine/x86_64-unix/*.a
%{_libdir}/wine/x86_64-windows
%exclude %{_libdir}/wine/x86_64-windows/*.a
%exclude %{_libdir}/wine/x86_64-windows/*.debug
%endif
%endif