%undefine _auto_set_build_flags %undefine _hardened_build %{?mingw_package_header} Name: wine-mono Version: 11.0.0 Release: 1%{?dist} Summary: Mono library required for Wine License: GPL-2.0-or-later AND LGPL-2.1-only AND MIT AND BSD-4-Clause-UC AND MS-PL AND MPL-1.1 URL: http://wiki.winehq.org/Mono # https://github.com/madewokherd/wine-mono Source0: https://dl.winehq.org/wine/wine-mono/%{version}/wine-mono-%{version}-src.tar.xz Patch0: wine-mono-7.3.0-iconv.patch Patch1: wine-mono-11.0.0-wpfgfx-gcc.patch Patch2: wine-mono-11.0.0-wpfgfx-dynamic.patch Patch3: wine-mono-11.0.0-unbundle.patch # see git://github.com/madewokherd/wine-mono BuildArch: noarch # wine-mono is not ported to any other architecture and can only be built on a x86 host ExcludeArch: %{arm} aarch64 %{power64} s390x s390 # 64 BuildRequires: mingw64-filesystem >= 95 BuildRequires: mingw64-headers BuildRequires: mingw64-cpp BuildRequires: mingw64-gcc BuildRequires: mingw64-gcc-c++ BuildRequires: mingw64-crt BuildRequires: mingw64-winpthreads-static BuildRequires: mingw64-FAudio BuildRequires: mingw64-SDL3 # 32 BuildRequires: mingw32-filesystem >= 95 BuildRequires: mingw32-headers BuildRequires: mingw32-cpp BuildRequires: mingw32-gcc BuildRequires: mingw32-gcc-c++ BuildRequires: mingw32-crt BuildRequires: mingw32-winpthreads-static BuildRequires: mingw32-FAudio BuildRequires: mingw32-SDL3 BuildRequires: autoconf automake BuildRequires: bc BuildRequires: cmake BuildRequires: gcc-c++ BuildRequires: clang BuildRequires: libtool BuildRequires: make BuildRequires: pkgconfig BuildRequires: gettext BuildRequires: libgdiplus BuildRequires: mono-core >= 6.12 BuildRequires: mono-devel >= 6.12 BuildRequires: wine-core BuildRequires: /usr/bin/python BuildRequires: python3-setuptools BuildRequires: python3-devel Provides: bundled(mono-core) = 6.13.0 Provides: bundled(mingw32-FNA3D) = 26.02 Provides: bundled(mingw64-FNA3D) = 26.02 Recommends: (mingw32-FAudio if mingw64-FAudio) Recommends: (mingw64-FAudio if mingw32-FAudio) Recommends: (mingw64-SDL3 if mingw32-SDL3) Recommends: (mingw32-SDL3 if mingw64-SDL3) Requires: wine-filesystem %description Windows Mono library required for Wine. %global mingw_build_win32 0 %global mingw_build_win64 0 %{?mingw_debug_package} %prep %autosetup -p1 # remove shipped compiler rm -rf llvm-mingw-*-ucrt-ubuntu-*-x86_64/ # remove unused llvm jit backend rm -rf mono/external/llvm-project/ # remove monolite, use system mono for bootstrapping rm -rf monolite/ %ifarch %{ix86} sed -i 's/_x86_64/_x86/g' GNUmakefile %endif # Fix all Python shebangs %py3_shebang_fix . sed -i 's/GENMDESC_PRG=python/GENMDESC_PRG=python3/' mono/mono/mini/Makefile.am.in sed -i 's/$CPPFLAGS_FOR_BTLS $btls_cflags/$CPPFLAGS_FOR_BTLS -fPIC $btls_cflags/' mono/configure.ac # fix SAL annotations %{mingw64_cxx} -x c++ -E -dM -fsearch-include-path=system specstrings.h | grep -Eo '^#define SAL__[a-z_]+' | cut -c12- | sort -r | while read -r macroname; do find wpf/src/Microsoft.DotNet.Wpf/src/ -type f -exec sed -i "s/\<${macroname}\>/SAL${macroname}/g" {} + done find wpf/src/Microsoft.DotNet.Wpf/src/ -type f -exec sed -i "s/\<__bound\>//g" {} + %build cat <<'EOF' > user-config.make # Disable shipped clang + libcxx. We use Fedora clang + libstdc++. AUTO_LLVM_MINGW=0 # Enable DWARF debug symbols PREFER_DWARF_SYMBOLS=1 EOF # run in a subshell to avoid polluting env vars ( %mingw64_cmake -B build/FNA3D-x86_64 -S FNA/lib/FNA3D %global __cmake_builddir build/FNA3D-x86_64 %cmake_build touch build/FNA3D-x86_64/.built %mingw32_cmake -B build/FNA3D-x86 -S FNA/lib/FNA3D %global __cmake_builddir build/FNA3D-x86 %cmake_build touch build/FNA3D-x86/.built ) %make_build image %install mkdir -p %{buildroot}%{_datadir}/wine/mono/wine-mono-%{version}/ cp -rp image/* \ %{buildroot}%{_datadir}/wine/mono/wine-mono-%{version}/ relative_mingw64_bindir="$(realpath -s --relative-to %{_datadir}/wine/mono/wine-mono-%{version}/lib/x86_64/ %{mingw64_bindir})" ln -s ${relative_mingw64_bindir}/{FAudio.dll,SDL3.dll} %{buildroot}%{_datadir}/wine/mono/wine-mono-%{version}/lib/x86_64/ relative_mingw32_bindir="$(realpath -s --relative-to %{_datadir}/wine/mono/wine-mono-%{version}/lib/x86/ %{mingw32_bindir})" ln -s ${relative_mingw32_bindir}/{FAudio.dll,SDL3.dll} %{buildroot}%{_datadir}/wine/mono/wine-mono-%{version}/lib/x86/ %files %license mono/LICENSE %doc README.md %{_datadir}/wine/mono/wine-mono-%{version}/ %changelog * Sun Feb 22 2026 Zephyr Lykos - 11.0.0-1 - version upgrade * Sat Jan 17 2026 Fedora Release Engineering - 10.4.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild * Wed Jan 14 2026 Michael Cronenworth - 10.4.1-1 - version upgrade * Sun Nov 02 2025 Michael Cronenworth - 10.3.0-1 - version upgrade * Fri Aug 29 2025 Michael Cronenworth - 10.2.0-1 - version upgrade * Fri Jul 25 2025 Fedora Release Engineering - 10.1.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild * Mon Jun 30 2025 Björn Esser - 10.1.0-1 - version upgrade - Fix FTBFS by forcing DWARF debuginfo - Fix removal of pre-build toolchain * Sun Apr 06 2025 Michael Cronenworth - 10.0.0-1 - version upgrade * Sun Jan 19 2025 Fedora Release Engineering - 9.4.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild * Mon Jan 06 2025 Michael Cronenworth - 9.4.0-2 - Fix using system DLLs (RHBZ#2183853) * Wed Dec 04 2024 Zephyr Lykos - 9.4.0-1 - new version * Sat Sep 21 2024 Zephyr Lykos - 9.3.0-1 - new version * Tue Aug 13 2024 Michael Cronenworth - 9.2.0-1 - version upgrade * Sat Jul 20 2024 Fedora Release Engineering - 9.0.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild * Thu Mar 28 2024 Michael Cronenworth - 9.0.0-1 - version upgrade * Sat Jan 27 2024 Fedora Release Engineering - 8.1.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Sat Dec 9 2023 Florian Weimer - 8.1.0-2 - Fix C compatibility issue in the configure script * Mon Oct 30 2023 Michael Cronenworth - 8.1.0-1 - version upgrade * Sat Jul 22 2023 Fedora Release Engineering - 8.0.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild * Mon Jun 19 2023 Michael Cronenworth - 8.0.0-1 - version upgrade * Sat Jan 21 2023 Fedora Release Engineering - 7.4.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild * Mon Oct 31 2022 Michael Cronenworth - 7.4.0-1 - version upgrade * Sat Jul 23 2022 Fedora Release Engineering - 7.3.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild * Mon Jun 06 2022 Michael Cronenworth - 7.3.0-1 - version upgrade * Fri Mar 25 2022 Sandro Mani - 7.1.1-2 - Rebuild with mingw-gcc-12 * Sat Jan 29 2022 Björn Esser - 7.1.1-1 - version upgrade * Sat Jan 22 2022 Fedora Release Engineering - 7.0.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild * Mon Dec 20 2021 Michael Cronenworth - 7.0.0-1 - version upgrade * Mon Oct 04 2021 Michael Cronenworth - 6.4.0-1 - version upgrade * Mon Aug 30 2021 Michael Cronenworth - 6.3.0-1 - version upgrade * Fri Jul 23 2021 Fedora Release Engineering - 6.2.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild * Mon Jun 07 2021 Michael Cronenworth - 6.2.0-1 - version upgrade * Sun Apr 11 2021 Michael Cronenworth - 6.1.1-1 - version upgrade * Sat Feb 13 2021 Michael Cronenworth - 6.0.0-1 - version upgrade * Wed Jan 27 2021 Fedora Release Engineering - 5.1.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild * Sat Oct 10 2020 Michael Cronenworth - 5.1.1-1 - version upgrade * Wed Jul 29 2020 Fedora Release Engineering - 5.1.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Wed Jun 24 2020 Michael Cronenworth - 5.1.0-1 - version upgrade * Sun Apr 26 2020 Michael Cronenworth - 5.0.0-1 - version upgrade * Fri Jan 31 2020 Fedora Release Engineering - 4.9.4-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild * Sat Nov 16 2019 Michael Cronenworth - 4.9.4-1 - version upgrade * Sun Sep 29 2019 Michael Cronenworth - 4.9.3-1 - version upgrade * Mon Aug 19 2019 Michael Cronenworth - 4.9.2-1 - version upgrade * Sat Jul 27 2019 Fedora Release Engineering - 4.9.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild * Sun Jun 23 2019 Michael Cronenworth - 4.9.0-1 - version upgrade * Sun Apr 28 2019 Michael Cronenworth - 4.8.3-1 - version upgrade * Sun Apr 14 2019 Michael Cronenworth - 4.8.1-1 - version upgrade - switch from MSI to new shared filesystem format * Fri Mar 01 2019 Michael Cronenworth - 4.8.0-1 - version upgrade * Mon Feb 18 2019 Michael Cronenworth - 4.7.5-1 - version upgrade * Sun Feb 03 2019 Fedora Release Engineering - 4.7.3-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild * Thu Aug 23 2018 Peter Robinson 4.7.3-2 - Don't exclude aarch64 * Sat Jul 21 2018 Michael Cronenworth - 4.7.3-1 - version upgrade * Sat Jul 14 2018 Fedora Release Engineering - 4.7.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild * Fri Feb 09 2018 Fedora Release Engineering - 4.7.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild * Tue Aug 08 2017 Michael Cronenworth - 4.7.1-1 - version upgrade * Thu Jul 27 2017 Fedora Release Engineering - 4.7.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild * Thu Mar 23 2017 Michael Cronenworth - 4.7.0-1 - version upgrade * Sat Feb 11 2017 Fedora Release Engineering - 4.6.4-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild * Thu Dec 15 2016 Michael Cronenworth - 4.6.4-1 - version upgrade * Thu Oct 13 2016 Fedora Release Engineering - 4.6.3-2 - mono rebuild for aarch64 support * Wed Jun 15 2016 Michael Cronenworth - 4.6.3-1 - version upgrade * Sun Apr 17 2016 Michael Cronenworth - 4.6.2-1 - version upgrade * Sun Mar 13 2016 Peter Robinson 4.6.0-2 - Fix up the Wine / mono supported arch cross section * Tue Mar 08 2016 Michael Cronenworth - 4.6.0-1 - version upgrade * Fri Feb 05 2016 Fedora Release Engineering - 4.5.6-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild * Fri Jun 19 2015 Fedora Release Engineering - 4.5.6-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild * Thu Apr 23 2015 Michael Cronenworth - 4.5.6-4 - enable optimizations, tls patch * Mon Apr 20 2015 Michael Cronenworth - 4.5.6-3 - statically link DLLs (#1213427) * Sun Mar 08 2015 Michael Cronenworth - 4.5.6-2 - disable optimizations in CLI, workaround for gcc5 * Fri Mar 06 2015 Michael Cronenworth - 4.5.6-1 - version upgrade * Thu Feb 05 2015 Michael Cronenworth - 4.5.4-2 - Update bundled valgrind headers (#1141584) * Fri Nov 14 2014 Andreas Bierfert - 4.5.4-1 - version upgrade * Tue Jun 24 2014 Michael Cronenworth - 4.5.2-4 - Rebuilt to use static libgcc (#1056436) * Sun Jun 08 2014 Fedora Release Engineering - 4.5.2-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild * Sat Dec 14 2013 Michael Cronenworth - 4.5.2-2 - Add ExcludeArch as Mono requires an x86 builder host * Sun Dec 08 2013 Andreas Bierfert - 4.5.2-1 - version upgrade * Sun Aug 04 2013 Fedora Release Engineering - 0.0.8-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild * Thu Apr 4 2013 Erik van Pienbroek - 0.0.8-3 - Fix FTBFS against latest automake - Added BR: bc * Fri Feb 15 2013 Fedora Release Engineering - 0.0.8-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild * Mon Oct 29 2012 Andreas Bierfert - 0.0.8-1 - version upgrade * Sun Jul 22 2012 Fedora Release Engineering - 0.0.4-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild * Wed Jul 04 2012 Andreas Bierfert - 0.0.4-7 - add mingw-filesystem BR - fix header macro * Fri Jun 29 2012 Andreas Bierfert - 0.0.4-6 - rename to wine-mono * Wed Jun 27 2012 Andreas Bierfert - 0.0.4-5 - add conditional so package builds on x86-64 builders as well * Tue Jun 26 2012 Andreas Bierfert - 0.0.4-4 - add -e option to echo in build script to fix idt files generation * Sun Jun 24 2012 Andreas Bierfert - 0.0.4-3 - pull some upstream patches from git * Tue Jun 12 2012 Andreas Bierfert - 0.0.4-2 - rename msi according to what wine expects * Mon May 28 2012 Andreas Bierfert - 0.0.4-1 - Initial release