|
|
|
|
@@ -1,7 +1,7 @@
|
|
|
|
|
#
|
|
|
|
|
# spec file for package wine
|
|
|
|
|
#
|
|
|
|
|
# Copyright (c) 2025 SUSE LLC
|
|
|
|
|
# Copyright (c) 2026 SUSE LLC and contributors
|
|
|
|
|
#
|
|
|
|
|
# All modifications and additions to the file contributed by third parties
|
|
|
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
|
|
|
@@ -20,55 +20,52 @@
|
|
|
|
|
|
|
|
|
|
%global flavor @BUILD_FLAVOR@%{nil}
|
|
|
|
|
%define psuffix %{nil}
|
|
|
|
|
%define wow64 1
|
|
|
|
|
%define wow64 0
|
|
|
|
|
%define staging 0
|
|
|
|
|
%if "%{flavor}" == "wow64"
|
|
|
|
|
%define psuffix -wow64
|
|
|
|
|
%define wow64 1
|
|
|
|
|
%endif
|
|
|
|
|
%if "%{flavor}" == "staging"
|
|
|
|
|
%define psuffix -staging
|
|
|
|
|
%define staging 1
|
|
|
|
|
%endif
|
|
|
|
|
%if "%{flavor}" == "staging-wow64"
|
|
|
|
|
%define psuffix -staging-wow64
|
|
|
|
|
%define wow64 1
|
|
|
|
|
%define staging 1
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
%ifarch %ix86 x86_64
|
|
|
|
|
|
|
|
|
|
%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%{_winelibdir}/wine/i386-windows; \
|
|
|
|
|
mv %{buildroot}%{_winelibdir}/wine/i386-windows/*.debug %{buildroot}/usr/lib/debug%{_winelibdir}/wine/i386-windows; \
|
|
|
|
|
sed -i 's,^%{_winelibdir},/usr/lib/debug%{_winelibdir},g' %{_builddir}/mingw32-debugfiles.list; \
|
|
|
|
|
%global _mingw_find_debuginfo() \
|
|
|
|
|
rm -f %{_builddir}/%{2}-debugfiles.list; \
|
|
|
|
|
OBJCOPY=objcopy OBJDUMP=objdump bash -x /usr/lib/rpm/%{2}-find-debuginfo.sh --no-debug-source-package %{_builddir}; \
|
|
|
|
|
mkdir -p %{buildroot}/usr/lib/debug%{_winelibdir}/wine/%{1}-windows; \
|
|
|
|
|
for f in %{buildroot}%{_winelibdir}/wine/%{1}-windows/*.debug; do \
|
|
|
|
|
[ -e "$f" ] && mv "$f" %{buildroot}/usr/lib/debug%{_winelibdir}/wine/%{1}-windows/; \
|
|
|
|
|
done; \
|
|
|
|
|
sed -i 's,^%{_winelibdir},/usr/lib/debug%{_winelibdir},g' %{_builddir}/%{2}-debugfiles.list; \
|
|
|
|
|
mkdir -p %{buildroot}/usr/src/debug/%{name}-%{version}; \
|
|
|
|
|
echo "%dir /usr/src/debug/%{name}-%{version}" >> %{_builddir}/mingw32-debugfiles.list; \
|
|
|
|
|
%{nil}
|
|
|
|
|
|
|
|
|
|
%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%{_winelibdir}/wine/x86_64-windows; \
|
|
|
|
|
mv %{buildroot}%{_winelibdir}/wine/x86_64-windows/*.debug %{buildroot}/usr/lib/debug%{_winelibdir}/wine/x86_64-windows; \
|
|
|
|
|
sed -i 's,^%{_winelibdir},/usr/lib/debug%{_winelibdir},g' %{_builddir}/mingw64-debugfiles.list; \
|
|
|
|
|
mkdir -p %{buildroot}/usr/src/debug/%{name}-%{version}; \
|
|
|
|
|
echo "%dir /usr/src/debug/%{name}-%{version}" >> %{_builddir}/mingw64-debugfiles.list; \
|
|
|
|
|
echo "%dir /usr/src/debug/%{name}-%{version}" >> %{_builddir}/%{2}-debugfiles.list; \
|
|
|
|
|
%{nil}
|
|
|
|
|
|
|
|
|
|
%if %wow64
|
|
|
|
|
%global __arch_install_post \
|
|
|
|
|
%_mingw32_find_debuginfo \
|
|
|
|
|
%_mingw64_find_debuginfo \
|
|
|
|
|
%_mingw_find_debuginfo x86_64 mingw64 \
|
|
|
|
|
%_mingw_find_debuginfo i386 mingw32 \
|
|
|
|
|
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 __arch_install_post %_mingw_find_debuginfo i386 mingw32
|
|
|
|
|
%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 %_mingw64_find_debuginfo
|
|
|
|
|
%global __arch_install_post %_mingw_find_debuginfo x86_64 mingw64
|
|
|
|
|
%global _win_debug_package %_mingw64_debug_package -e -C wine%{psuffix}-win-debuginfo -N wine%{psuffix}-win-debuginfo
|
|
|
|
|
%endif
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
%define _lto_cflags %{nil}
|
|
|
|
|
Name: wine%{psuffix}
|
|
|
|
|
%define downloadver 11.0
|
|
|
|
|
@@ -94,7 +91,6 @@ BuildRequires: giflib-devel
|
|
|
|
|
BuildRequires: libgsm-devel
|
|
|
|
|
BuildRequires: pkgconfig(OpenCL)
|
|
|
|
|
BuildRequires: pkgconfig(alsa)
|
|
|
|
|
BuildRequires: pkgconfig(capi20)
|
|
|
|
|
BuildRequires: pkgconfig(dbus-1)
|
|
|
|
|
BuildRequires: pkgconfig(fontconfig)
|
|
|
|
|
BuildRequires: pkgconfig(freetype2)
|
|
|
|
|
@@ -153,17 +149,22 @@ BuildRequires: lld
|
|
|
|
|
BuildRequires: llvm
|
|
|
|
|
#BuildRequires: pkgconfig(valgrind)
|
|
|
|
|
%endif
|
|
|
|
|
# included tools replaced by objdump, objcopy
|
|
|
|
|
#!BuildIgnore: mingw64-cross-binutils-utils
|
|
|
|
|
#!BuildIgnore: mingw64-cross-pkgconf-utils
|
|
|
|
|
#!BuildIgnore: mingw32-cross-binutils-utils
|
|
|
|
|
#!BuildIgnore: mingw32-cross-pkgconf-utils
|
|
|
|
|
%ifarch %{ix86}
|
|
|
|
|
BuildRequires: mingw32-cross-gcc
|
|
|
|
|
BuildRequires: mingw32-filesystem >= 20250221
|
|
|
|
|
BuildRequires: mingw32-filesystem >= 20250822
|
|
|
|
|
%endif
|
|
|
|
|
%ifarch x86_64
|
|
|
|
|
BuildRequires: mingw64-cross-gcc
|
|
|
|
|
BuildRequires: mingw64-filesystem >= 20250221
|
|
|
|
|
BuildRequires: mingw64-filesystem >= 20250822
|
|
|
|
|
#BuildRequires: pkgconfig(valgrind)
|
|
|
|
|
%if %{wow64}
|
|
|
|
|
BuildRequires: mingw32-cross-gcc
|
|
|
|
|
BuildRequires: mingw32-filesystem >= 20250221
|
|
|
|
|
BuildRequires: mingw32-filesystem >= 20250822
|
|
|
|
|
%endif
|
|
|
|
|
%endif
|
|
|
|
|
%if 0%{?suse_version} < 1600
|
|
|
|
|
@@ -171,30 +172,51 @@ BuildRequires: gcc14-c++
|
|
|
|
|
%endif
|
|
|
|
|
%if 0%{?suse_version} >= 1600
|
|
|
|
|
BuildRequires: pkgconfig(FAudio)
|
|
|
|
|
BuildRequires: pkgconfig(capi20)
|
|
|
|
|
BuildRequires: pkgconfig(cups)
|
|
|
|
|
BuildRequires: pkgconfig(libattr)
|
|
|
|
|
%else
|
|
|
|
|
BuildRequires: FAudio-devel
|
|
|
|
|
BuildRequires: cups-devel
|
|
|
|
|
BuildRequires: libattr-devel
|
|
|
|
|
%ifnarch %{ix86}
|
|
|
|
|
BuildRequires: libcapi20-devel
|
|
|
|
|
%endif
|
|
|
|
|
%endif
|
|
|
|
|
%if %{staging}
|
|
|
|
|
BuildRequires: git-core
|
|
|
|
|
BuildRequires: pkgconfig(gtk+-3.0)
|
|
|
|
|
BuildRequires: pkgconfig(libva)
|
|
|
|
|
%endif
|
|
|
|
|
%ifarch x86_64
|
|
|
|
|
# the wow flavors do not need 32bit
|
|
|
|
|
%if "%{flavor}" == "staging"
|
|
|
|
|
BuildRequires: wine-staging-32bit = %{version}
|
|
|
|
|
Requires: wine-staging-32bit = %{version}
|
|
|
|
|
%else
|
|
|
|
|
%if "x%{flavor}" == "x"
|
|
|
|
|
BuildRequires: wine-32bit = %{version}
|
|
|
|
|
Requires: wine-32bit = %{version}
|
|
|
|
|
%endif
|
|
|
|
|
%endif
|
|
|
|
|
%endif
|
|
|
|
|
Requires: samba-winbind
|
|
|
|
|
Recommends: ntsync-autoload
|
|
|
|
|
Recommends: wine-gecko >= 2.47.4
|
|
|
|
|
Recommends: wine-mono >= 9.4.0
|
|
|
|
|
Recommends: wine-mono >= 10.1.0
|
|
|
|
|
Recommends: winetricks
|
|
|
|
|
Conflicts: wine
|
|
|
|
|
Conflicts: wine-gecko < 2.47.4
|
|
|
|
|
Conflicts: wine-mono < 9.4.0
|
|
|
|
|
Conflicts: wine-mono < 10.1.0
|
|
|
|
|
Provides: wine-mp3 = %version
|
|
|
|
|
Obsoletes: wine-mp3 < %version
|
|
|
|
|
%if "%{flavor}" != ""
|
|
|
|
|
Provides: wine = %{version}-%{release}
|
|
|
|
|
%endif
|
|
|
|
|
%if "%{flavor}" == "wow64" || "%{flavor}" == "staging-wow64"
|
|
|
|
|
Conflicts: wine-32bit
|
|
|
|
|
Provides: wine-32bit = %{version}-%{release}
|
|
|
|
|
%endif
|
|
|
|
|
ExclusiveArch: aarch64 %{ix86} x86_64
|
|
|
|
|
Provides: bundled(FAudio) = 25.12
|
|
|
|
|
Provides: bundled(capstone) = 5.0.3
|
|
|
|
|
@@ -223,8 +245,6 @@ POSIX calls on-the-fly, eliminating the performance and memory
|
|
|
|
|
penalties of other methods and allowing you to cleanly integrate
|
|
|
|
|
Windows applications into your desktop.
|
|
|
|
|
|
|
|
|
|
This build is a WOW64 only build used for openSUSE Leap 16.
|
|
|
|
|
|
|
|
|
|
%if %{staging}
|
|
|
|
|
This WINE flavor contains the "staging" development patchset
|
|
|
|
|
on top of the regular Wine release.
|
|
|
|
|
@@ -244,7 +264,7 @@ libraries.
|
|
|
|
|
%_win_debug_package
|
|
|
|
|
|
|
|
|
|
%prep
|
|
|
|
|
%autosetup -n wine-%{downloadver}
|
|
|
|
|
%autosetup -n wine-%{downloadver} -p1
|
|
|
|
|
%if %{staging}
|
|
|
|
|
tar xf %{SOURCE3}
|
|
|
|
|
python3 wine-staging-%{downloadver}/staging/patchinstall.py --all
|
|
|
|
|
@@ -287,12 +307,15 @@ echo "%name" >> %SOURCE97
|
|
|
|
|
#echo " +^/usr/bin/wine-preloader\$" >> %SOURCE97
|
|
|
|
|
echo " +^/usr/lib/wine/i386-windows" >> %SOURCE97
|
|
|
|
|
echo " +^/usr/lib/wine/i386-unix" >> %SOURCE97
|
|
|
|
|
#echo " +^/usr/lib/wine/x86_64-unix" >> %SOURCE97
|
|
|
|
|
#echo " +^/usr/lib/wine/x86_64-windows" >> %SOURCE97
|
|
|
|
|
grep SONAME_ config.log
|
|
|
|
|
grep SONAME_ config.log|grep -v 'so"'|sed -e 's/^.*\(".*"\).*$/ requires \1/;'|sort -u >>%SOURCE97
|
|
|
|
|
echo " recommends \"libpulse0-32bit\"" >> %SOURCE97
|
|
|
|
|
echo " recommends \"pipewire-alsa-32bit\"" >> %SOURCE97
|
|
|
|
|
echo " recommends \"alsa-plugins-32bit\"" >> %SOURCE97
|
|
|
|
|
echo " recommends \"Mesa-libGL1-32bit\"" >> %SOURCE97
|
|
|
|
|
echo " recommends \"Mesa-libEGL1-32bit\"" >> %SOURCE97
|
|
|
|
|
# indirect deps of libvulkan
|
|
|
|
|
echo " requires \"libvulkan_intel-32bit\"" >> %SOURCE97
|
|
|
|
|
echo " requires \"libvulkan_radeon-32bit\"" >> %SOURCE97
|
|
|
|
|
@@ -303,12 +326,19 @@ echo " requires \"p11-kit-32bit\"" >> %SOURCE97
|
|
|
|
|
echo " provides \"wine-<targettype> = <version>\"" >> %SOURCE97
|
|
|
|
|
%endif
|
|
|
|
|
echo " conflicts \"otherproviders(wine-<targettype>)\"" >> %SOURCE97
|
|
|
|
|
#echo "%%post" >> %SOURCE97
|
|
|
|
|
#echo " ln -s /usr/lib64/wine/x86_64-windows /%_winelibdir/wine/x86_64-windows" >> %SOURCE97
|
|
|
|
|
#echo " ln -s /usr/lib64/wine/x86_64-unix /%_winelibdir/wine/x86_64-unix" >> %SOURCE97
|
|
|
|
|
echo "%name-devel" >> %SOURCE97
|
|
|
|
|
echo " +^/usr/lib/wine/.*def" >> %SOURCE97
|
|
|
|
|
%if "%{flavor}" != ""
|
|
|
|
|
echo " provides \"wine-devel-<targettype> = <version>\"" >> %SOURCE97
|
|
|
|
|
%endif
|
|
|
|
|
echo " conflicts \"otherproviders(wine-devel-<targettype>)\"" >> %SOURCE97
|
|
|
|
|
%ifarch %ix86
|
|
|
|
|
echo "wine-win-debuginfo" >> %SOURCE97
|
|
|
|
|
echo " +^/usr/lib/debug/usr/lib/wine/i386-windows/" >> %SOURCE97
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
cat %SOURCE97
|
|
|
|
|
%endif
|
|
|
|
|
@@ -319,8 +349,8 @@ cat %SOURCE97
|
|
|
|
|
|
|
|
|
|
rm -rf %{buildroot}%{_mandir}/{pl,de,fr}.UTF-8
|
|
|
|
|
|
|
|
|
|
%ifarch x86_64
|
|
|
|
|
%if ! %{wow64}
|
|
|
|
|
%ifarch x86_64
|
|
|
|
|
ln -s /usr/lib/wine/i386-windows %buildroot/%_winelibdir/wine/i386-windows
|
|
|
|
|
ln -s /usr/lib/wine/i386-unix %buildroot/%_winelibdir/wine/i386-unix
|
|
|
|
|
%endif
|
|
|
|
|
@@ -341,7 +371,17 @@ chmod 755 %winedir/my-find-requires.sh
|
|
|
|
|
%define _use_internal_dependency_generator 0
|
|
|
|
|
%define __find_requires %winedir/my-find-requires.sh
|
|
|
|
|
|
|
|
|
|
%ldconfig_scriptlets
|
|
|
|
|
%post
|
|
|
|
|
/sbin/ldconfig
|
|
|
|
|
%if ! %{wow64}
|
|
|
|
|
%ifarch x86_64
|
|
|
|
|
ln -sf /usr/lib64/wine/x86_64-windows /usr/lib/wine/
|
|
|
|
|
ln -sf /usr/lib64/wine/x86_64-unix /usr/lib/wine/
|
|
|
|
|
%endif
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
%postun
|
|
|
|
|
/sbin/ldconfig
|
|
|
|
|
|
|
|
|
|
%files
|
|
|
|
|
%license LICENSE LICENSE.OLD
|
|
|
|
|
@@ -382,46 +422,47 @@ chmod 755 %winedir/my-find-requires.sh
|
|
|
|
|
%{_bindir}/wine
|
|
|
|
|
#{_bindir}/wine-preloader
|
|
|
|
|
%{_mandir}/man?/wine.?%{?ext_man}
|
|
|
|
|
# .a is in -devel
|
|
|
|
|
%exclude %{_winelibdir}/wine/aarch64-windows/*.a
|
|
|
|
|
%if !%{wow64}
|
|
|
|
|
%{_winelibdir}/wine/aarch64-windows
|
|
|
|
|
%exclude %{_winelibdir}/wine/aarch64-windows/*.a
|
|
|
|
|
%endif
|
|
|
|
|
%{_winelibdir}/wine/aarch64-unix
|
|
|
|
|
%if %{wow64}
|
|
|
|
|
%{_winelibdir}/wine/i386-windows
|
|
|
|
|
%exclude %{_winelibdir}/wine/i386-windows/*.a
|
|
|
|
|
%{_winelibdir}/wine/x86_64-windows
|
|
|
|
|
%exclude %{_winelibdir}/wine/x86_64-windows/*.a
|
|
|
|
|
%endif
|
|
|
|
|
%endif
|
|
|
|
|
%ifarch %{ix86}
|
|
|
|
|
%exclude %{_winelibdir}/wine/i386-unix/*.a
|
|
|
|
|
%exclude %{_winelibdir}/wine/i386-windows/*.a
|
|
|
|
|
%{_bindir}/wine
|
|
|
|
|
%{_winelibdir}/wine/i386-windows
|
|
|
|
|
%exclude %{_winelibdir}/wine/i386-windows/*.a
|
|
|
|
|
%{_winelibdir}/wine/i386-unix
|
|
|
|
|
%exclude %{_winelibdir}/wine/i386-unix/*.a
|
|
|
|
|
%endif
|
|
|
|
|
%ifarch x86_64
|
|
|
|
|
%exclude %{_winelibdir}/wine/x86_64-unix/*.a
|
|
|
|
|
%exclude %{_winelibdir}/wine/x86_64-windows/*.a
|
|
|
|
|
%if %{wow64}
|
|
|
|
|
%{_bindir}/wine
|
|
|
|
|
%{_winelibdir}/wine/i386-windows
|
|
|
|
|
%exclude %{_winelibdir}/wine/i386-unix/*.a
|
|
|
|
|
%exclude %{_winelibdir}/wine/i386-windows/*.a
|
|
|
|
|
%{_winelibdir}/wine/i386-windows
|
|
|
|
|
%{_winelibdir}/wine/x86_64-windows
|
|
|
|
|
%exclude %{_winelibdir}/wine/x86_64-windows/*.a
|
|
|
|
|
%{_winelibdir}/wine/x86_64-unix
|
|
|
|
|
%exclude %{_winelibdir}/wine/x86_64-unix/*.a
|
|
|
|
|
%else
|
|
|
|
|
%{_libdir}/wine/i386-windows
|
|
|
|
|
%{_libdir}/wine/i386-unix
|
|
|
|
|
%{_bindir}/wine
|
|
|
|
|
%{_winelibdir}/wine/x86_64-unix
|
|
|
|
|
%exclude %{_winelibdir}/wine/x86_64-unix/*.a
|
|
|
|
|
#exclude %{_winelibdir}/wine/x86_64-unix/*.a
|
|
|
|
|
%{_winelibdir}/wine/x86_64-windows
|
|
|
|
|
%exclude %{_winelibdir}/wine/x86_64-windows/*.a
|
|
|
|
|
#exclude %{_winelibdir}/wine/x86_64-windows/*.a
|
|
|
|
|
%endif
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
%files devel
|
|
|
|
|
%{_winelibdir}/wine/*-*/*.a
|
|
|
|
|
%{_includedir}/wine
|
|
|
|
|
%{_bindir}/widl
|
|
|
|
|
%{_bindir}/winebuild
|
|
|
|
|
@@ -439,29 +480,11 @@ chmod 755 %winedir/my-find-requires.sh
|
|
|
|
|
%{_mandir}/man?/winegcc.?%{?ext_man}
|
|
|
|
|
%{_mandir}/man?/wmc.?%{?ext_man}
|
|
|
|
|
%{_mandir}/man?/wrc.?%{?ext_man}
|
|
|
|
|
|
|
|
|
|
%ifarch aarch64
|
|
|
|
|
%if !%{wow64}
|
|
|
|
|
%{_winelibdir}/wine/aarch64-windows/*.a
|
|
|
|
|
%endif
|
|
|
|
|
%if %{wow64}
|
|
|
|
|
%{_winelibdir}/wine/i386-windows/*.a
|
|
|
|
|
%{_winelibdir}/wine/x86_64-windows/*.a
|
|
|
|
|
%endif
|
|
|
|
|
%endif
|
|
|
|
|
%ifarch %{ix86}
|
|
|
|
|
%{_winelibdir}/wine/i386-unix/*.a
|
|
|
|
|
%if 0%{?suse_version} >= 1600
|
|
|
|
|
%{_winelibdir}/wine/i386-windows/*.a
|
|
|
|
|
%endif
|
|
|
|
|
%endif
|
|
|
|
|
%ifarch x86_64
|
|
|
|
|
%{_winelibdir}/wine/x86_64-unix/*.a
|
|
|
|
|
%if %{wow64}
|
|
|
|
|
%{_winelibdir}/wine/i386-windows/*.a
|
|
|
|
|
%{_winelibdir}/wine/x86_64-windows/*.a
|
|
|
|
|
%else
|
|
|
|
|
%{_winelibdir}/wine/x86_64-windows/*.a
|
|
|
|
|
%endif
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
%changelog
|
|
|
|
|
|