diff --git a/.gitignore b/.gitignore index d3adb81..9ab96b3 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -/wine-mono-4.9.4.tar.gz +/wine-mono-5.0.0-src.tar.xz diff --git a/sources b/sources index f0e93d8..01365e6 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (wine-mono-4.9.4.tar.gz) = 338ffb09e03755ea8a103a8913365a2dafe334a7d110779b31ccb2b0f1e49d4304279337905ffc5dcb96184f95ac330dfad3f7f5f56894044f8554aee219d317 +SHA512 (wine-mono-5.0.0-src.tar.xz) = 8668e1f9ed6a04c04d4a8adff3a84c30eb52121369fea871e893cbaffb5221c51d717cf3ff86a53d901a871a58cda4d6eb6b823e70bbfd0952083d3b7127354d diff --git a/wine-mono-build-static.patch b/wine-mono-build-static.patch index 2af01d0..e3b8192 100644 --- a/wine-mono-build-static.patch +++ b/wine-mono-build-static.patch @@ -1,19 +1,31 @@ ---- wine-mono-4.9.0/Makefile.orig 2015-04-20 10:34:32.150114394 -0500 -+++ wine-mono-4.9.0/Makefile 2015-04-20 10:33:13.699274928 -0500 -@@ -106,6 +106,7 @@ +--- wine-mono-5.0.0/GNUmakefile.orig 2015-04-20 10:34:32.150114394 -0500 ++++ wine-mono-5.0.0/GNUmakefile 2015-04-20 10:33:13.699274928 -0500 +@@ -128,7 +128,8 @@ + # libmono dll's $$(BUILDDIR)/mono-$(1)/Makefile: $$(SRCDIR)/mono/configure $$(BUILDDIR)/.dir mkdir -p $$(@D) - cd $$(BUILDDIR)/mono-$(1); CPPFLAGS="-gdwarf-2 -gstrict-dwarf" $$(SRCDIR_ABS)/mono/configure --prefix="$$(BUILDDIR_ABS)/build-cross-$(1)-install" --build=$$(shell $$(SRCDIR)/mono/config.guess) --target=$$(MINGW_$(1)) --host=$$(MINGW_$(1)) --with-tls=none --disable-mcs-build --enable-win32-dllmain=yes --with-libgc-threads=win32 PKG_CONFIG=false mono_cv_clang=no +- cd $$(BUILDDIR)/mono-$(1); $$(MINGW_ENV) CPPFLAGS="-gdwarf-2 -gstrict-dwarf" $$(SRCDIR_ABS)/mono/configure --prefix="$$(BUILDDIR_ABS)/build-cross-$(1)-install" --build=$$(shell $$(SRCDIR)/mono/config.guess) --target=$$(MINGW_$(1)) --host=$$(MINGW_$(1)) --with-tls=none --disable-mcs-build --enable-win32-dllmain=yes --with-libgc-threads=win32 PKG_CONFIG=false mono_cv_clang=no --disable-boehm ++ cd $$(BUILDDIR)/mono-$(1); $$(MINGW_ENV) CPPFLAGS_FOR_BTLS="-fPIC" CPPFLAGS="-gdwarf-2 -gstrict-dwarf -fPIC" $$(SRCDIR_ABS)/mono/configure --prefix="$$(BUILDDIR_ABS)/build-cross-$(1)-install" --build=$$(shell $$(SRCDIR)/mono/config.guess) --target=$$(MINGW_$(1)) --host=$$(MINGW_$(1)) --with-tls=none --disable-mcs-build --enable-win32-dllmain=yes --with-libgc-threads=win32 PKG_CONFIG=false mono_cv_clang=no --disable-boehm + sed -e 's+compiler_flags="-specs=/usr/lib/rpm/redhat/redhat-hardened-ld"+compiler_flags="-static"+' -i $$(BUILDDIR)/mono-$(1)/libtool sed -e 's/-lgcc_s//' -i $$(BUILDDIR)/mono-$(1)/libtool $$(BUILDDIR)/mono-$(1)/.built: $$(BUILDDIR)/mono-$(1)/Makefile $$(MONO_MONO_SRCS) -@@ -260,6 +261,7 @@ +@@ -163,7 +164,7 @@ + $$(BUILDDIR)/btls-$(1)/Makefile: $$(SRCDIR)/mono/mono/btls/CMakeLists.txt + mkdir -p $$(@D) + # wincrypt.h interferes with boringssl definitions, so we prevent its inclusion +- cd $$(@D); $$(MINGW_ENV) cmake -DCMAKE_TOOLCHAIN_FILE="$$(SRCDIR_ABS)/toolchain-$(1).cmake" -DCMAKE_C_COMPILER=$$(MINGW_$(1))-gcc -DCMAKE_C_FLAGS='-D__WINCRYPT_H__ -D_WIN32_WINNT=0x0600 -static-libgcc' -DCMAKE_CXX_COMPILER=$$(MINGW_$(1))-g++ -DOPENSSL_NO_ASM=1 -DBTLS_ROOT="$$(SRCDIR_ABS)/mono/external/boringssl" -DBUILD_SHARED_LIBS=1 $$(SRCDIR_ABS)/mono/mono/btls ++ cd $$(@D); $$(MINGW_ENV) CPPFLAGS_FOR_BTLS="-fPIC" cmake -DCMAKE_TOOLCHAIN_FILE="$$(SRCDIR_ABS)/toolchain-$(1).cmake" -DCMAKE_C_COMPILER=$$(MINGW_$(1))-gcc -DCMAKE_C_FLAGS='-fPIC -D__WINCRYPT_H__ -D_WIN32_WINNT=0x0600 -static-libgcc' -DCMAKE_CXX_COMPILER=$$(MINGW_$(1))-g++ -DOPENSSL_NO_ASM=1 -DBTLS_ROOT="$$(SRCDIR_ABS)/mono/external/boringssl" -DBUILD_SHARED_LIBS=1 $$(SRCDIR_ABS)/mono/mono/btls + + $$(BUILDDIR)/btls-$(1)/.built: $$(BUILDDIR)/btls-$(1)/Makefile $$(MONO_BTLS_SRCS) + +WINEPREFIX=/dev/null $$(MINGW_ENV) $$(MAKE) -C $$(BUILDDIR)/btls-$(1) +@@ -415,7 +416,8 @@ + # mono native/classlib build $(BUILDDIR)/mono-unix/Makefile: $(SRCDIR)/mono/configure $(BUILDDIR)/.dir mkdir -p $(@D) - cd $(@D) && $(SRCDIR_ABS)/mono/configure --prefix="$(BUILDDIR_ABS)/mono-unix-install" --with-mcs-docs=no --disable-system-aot +- cd $(@D) && $(SRCDIR_ABS)/mono/configure --prefix="$(BUILDDIR_ABS)/mono-unix-install" --with-mcs-docs=no --disable-system-aot --without-compiler-server ++ cd $(@D) && CPPFLAGS_FOR_BTLS="-fPIC" BTLS_CFLAGS="-fPIC" $(SRCDIR_ABS)/mono/configure --prefix="$(BUILDDIR_ABS)/mono-unix-install" --with-mcs-docs=no --disable-system-aot --without-compiler-server + sed -e 's+compiler_flags="-specs=/usr/lib/rpm/redhat/redhat-hardened-ld"+compiler_flags="-static"+' -i $(@D)/libtool $(BUILDDIR)/mono-unix/mono/lib/libSystem.Native.so: $(BUILDDIR)/mono-unix/Makefile $(MONO_LIBNATIVE_SRCS) mkdir -p $(@D) - diff --git a/wine-mono-crlf.patch b/wine-mono-crlf.patch new file mode 100644 index 0000000..14caf95 --- /dev/null +++ b/wine-mono-crlf.patch @@ -0,0 +1,11 @@ +--- a/tools/build-msi-tables.sh 2020-04-10 11:06:24.000000000 -0500 ++++ b/tools/build-msi-tables.sh 2020-04-27 10:03:20.835241179 -0500 +@@ -7,7 +7,7 @@ + mkdir -p ${TABLEDIR} + cp ${TABLESRCDIR}/*.idt ${TABLEDIR} + +-IMAGECABWINPATH=`${WINE} winepath -w "${CABFILENAME}"` ++IMAGECABWINPATH=`${WINE} winepath -w "${CABFILENAME}" | dos2unix` + + cd "${IMAGEDIR}" + diff --git a/wine-mono.spec b/wine-mono.spec index b6ae82b..5443122 100644 --- a/wine-mono.spec +++ b/wine-mono.spec @@ -2,16 +2,20 @@ %{?mingw_package_header} Name: wine-mono -Version: 4.9.4 -Release: 2%{?dist} +Version: 5.0.0 +Release: 1%{?dist} Summary: Mono library required for Wine License: GPLv2 and LGPLv2 and MIT and BSD and MS-PL and MPLv1.1 URL: http://wiki.winehq.org/Mono -Source0: http://dl.winehq.org/wine/wine-mono/%{version}/wine-mono-%{version}.tar.gz +Source0: https://dl.winehq.org/wine/wine-mono/%{version}/wine-mono-%{version}-src.tar.xz # to statically link in winpthreads Patch0: wine-mono-build-static.patch +# https://bugs.winehq.org/show_bug.cgi?id=48937 +# fixed in wine 5.7 +Patch1: wine-mono-crlf.patch + # see git://github.com/madewokherd/wine-mono BuildArch: noarch @@ -37,14 +41,20 @@ BuildRequires: mingw32-winpthreads-static BuildRequires: autoconf automake BuildRequires: bc BuildRequires: cmake +BuildRequires: dos2unix BuildRequires: gcc-c++ BuildRequires: libtool BuildRequires: pkgconfig BuildRequires: gettext +BuildRequires: libgdiplus BuildRequires: wine-core BuildRequires: /usr/bin/python BuildRequires: /usr/bin/pathfix.py +# https://bugs.winehq.org/show_bug.cgi?id=48937 +# fixed in wine 5.7 +BuildRequires: dos2unix + Requires: wine-filesystem # Bundles FAudio, libtheorafile, libmojoshader, SDL2, SDL2_image @@ -58,12 +68,15 @@ Windows Mono library required for Wine. %prep %setup -q %patch0 -p1 -b.static +%patch1 -p1 -b.crlf # Fix all Python shebangs pathfix.py -pni "%{__python3} %{py3_shbang_opts}" . sed -i 's/GENMDESC_PRG=python/GENMDESC_PRG=python3/' mono/mono/mini/Makefile.am.in %build +export BTLS_CFLAGS="-fPIC" +export CPPFLAGS_FOR_BTLS="-fPIC" make %{_smp_mflags} image %install @@ -94,6 +107,9 @@ cp mono-basic/LICENSE mono-basic-LICENSE %{_datadir}/wine/mono/wine-mono-%{version}/ %changelog +* 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