Compare commits

..

7 Commits
rawhide ... f32

Author SHA1 Message Date
Timotheus Pokorra
7893a86743 forgot to add the patch 2021-02-23 06:51:38 +01:00
Timotheus Pokorra
8cd450bd95 backport patch: fix early return in Process.Start (#1839410) 2021-02-22 22:48:27 +01:00
Timotheus Pokorra
ef20783b1d forgot to add mono-6.6.0-fix-multi-arch-issue.patch 2020-10-14 06:49:05 +02:00
Timotheus Pokorra
05e9956002 fix issue with conflicts between i686 and x86_64 package (#1853724) 2020-10-14 06:46:20 +02:00
Timotheus Pokorra
18bea70036 Ship libMonoSupportW.so 2020-09-05 06:29:41 +02:00
Timotheus Pokorra
960474d545 upload new sources 2020-06-20 06:49:20 +02:00
Timotheus Pokorra
83cce89cf0 upgrade to new upstream Mono 6.6.0.166 2020-06-20 06:35:02 +02:00
4 changed files with 130 additions and 78 deletions

View File

@ -0,0 +1,42 @@
From 325577feffad1f87b07d92710c0d37c79c5f50a1 Mon Sep 17 00:00:00 2001
From: Ryan Lucia <rylucia@microsoft.com>
Date: Thu, 4 Feb 2021 08:55:48 -0500
Subject: [PATCH] Fix early return in Process.Start
---
mono/metadata/w32process-unix.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/mono/metadata/w32process-unix.c b/mono/metadata/w32process-unix.c
index 663cc6ff5111..d030101aede6 100644
--- a/mono/metadata/w32process-unix.c
+++ b/mono/metadata/w32process-unix.c
@@ -2032,6 +2032,9 @@ ves_icall_System_Diagnostics_Process_ShellExecuteEx_internal (MonoW32ProcessStar
static char *handler;
static gunichar2 *handler_utf16;
+#ifndef HOST_DARWIN
+ gboolean finished = FALSE;
+#endif
if (handler_utf16 == (gunichar2 *)-1) {
ret = FALSE;
@@ -2057,6 +2060,7 @@ ves_icall_System_Diagnostics_Process_ShellExecuteEx_internal (MonoW32ProcessStar
if (handler == NULL){
handler_utf16 = (gunichar2 *) -1;
ret = FALSE;
+ finished = TRUE;
} else {
/* kfmclient needs exec argument */
char *old = handler;
@@ -2067,9 +2071,8 @@ ves_icall_System_Diagnostics_Process_ShellExecuteEx_internal (MonoW32ProcessStar
}
}
MONO_EXIT_GC_SAFE;
- if (ret == FALSE){
+ if (finished)
goto done;
- }
#endif
handler_utf16 = g_utf8_to_utf16 (handler, -1, NULL, NULL, NULL);
g_free (handler);

53
mono-6.6.0-python3.patch Normal file
View File

@ -0,0 +1,53 @@
--- a/scripts/mono-heapviz
+++ b/scripts/mono-heapviz
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/python3
# Generate a heap visualization for SGen from the heap dump written by
# mono if the MONO_GC_DEBUG is set to something like
diff -up mono-5.18.1.0/mono/mini/genmdesc.py.py3 mono-5.18.1.0/mono/mini/genmdesc.py
--- mono-5.18.1.0/mono/mini/genmdesc.py.py3 2019-03-28 06:56:35.765851125 -0400
+++ mono-5.18.1.0/mono/mini/genmdesc.py 2019-03-28 06:56:44.805851125 -0400
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/python3
#
# This tool is used to generate the cpu-<ARCH>.h files used by the JIT. The input is the
diff -up mono-5.18.1.0/mono/mini/Makefile.am.in.py3 mono-5.18.1.0/mono/mini/Makefile.am.in
--- mono-5.18.1.0/mono/mini/Makefile.am.in.py3 2019-03-28 07:01:10.975851125 -0400
+++ mono-5.18.1.0/mono/mini/Makefile.am.in 2019-03-28 07:01:35.395851125 -0400
@@ -780,7 +780,7 @@ MemoryIntrinsics.dll: MemoryIntrinsics.i
GENMDESC_OPTS=
-GENMDESC_PRG=python $(srcdir)/genmdesc.py $(target_define) $(srcdir)
+GENMDESC_PRG=python3 $(srcdir)/genmdesc.py $(target_define) $(srcdir)
cpu-wasm.h: mini-ops.h cpu-wasm.md $(srcdir)/genmdesc.py
$(GENMDESC_PRG) cpu-wasm.h wasm_desc $(srcdir)/cpu-wasm.md
diff -up mono-5.18.1.0/mono/mini/Makefile.am.py3 mono-5.18.1.0/mono/mini/Makefile.am
--- mono-5.18.1.0/mono/mini/Makefile.am.py3 2019-03-28 07:06:02.235851125 -0400
+++ mono-5.18.1.0/mono/mini/Makefile.am 2019-03-28 07:06:06.385851125 -0400
@@ -780,7 +780,7 @@ MemoryIntrinsics.dll: MemoryIntrinsics.i
GENMDESC_OPTS=
-GENMDESC_PRG=python $(srcdir)/genmdesc.py $(target_define) $(srcdir)
+GENMDESC_PRG=python3 $(srcdir)/genmdesc.py $(target_define) $(srcdir)
cpu-wasm.h: mini-ops.h cpu-wasm.md $(srcdir)/genmdesc.py
$(GENMDESC_PRG) cpu-wasm.h wasm_desc $(srcdir)/cpu-wasm.md
diff -up mono-5.18.1.0/mono/mini/Makefile.in.py3 mono-5.18.1.0/mono/mini/Makefile.in
--- mono-5.18.1.0/mono/mini/Makefile.in.py3 2019-03-28 07:06:12.805851125 -0400
+++ mono-5.18.1.0/mono/mini/Makefile.in 2019-03-28 07:06:21.575851125 -0400
@@ -1287,7 +1287,7 @@ libmonoincludedir = $(includedir)/mono-$
libmonoinclude_HEADERS = jit.h
CSFLAGS = -unsafe -nowarn:0219,0169,0414,0649,0618
GENMDESC_OPTS =
-GENMDESC_PRG = python $(srcdir)/genmdesc.py $(target_define) $(srcdir)
+GENMDESC_PRG = python3 $(srcdir)/genmdesc.py $(target_define) $(srcdir)
LLVM_AOT_RUNTIME_OPTS = $(if $(LLVM),--llvm,)
@AMD64_FALSE@LLVM_AOT_COMPILER_OPTS =
@AMD64_TRUE@LLVM_AOT_COMPILER_OPTS = $(if $(LLVM),"=llvmllc=-mcpu=generic -mattr=+sse3",)

111
mono.spec
View File

@ -1,9 +1,8 @@
%bcond_with bootstrap
%ifarch s390x
# workaround https://github.com/mono/mono/issues/9009#issuecomment-477073609
%undefine _hardened_build
%endif
%global bootstrap 0
%if 0%{?el6}
# see https://fedorahosted.org/fpc/ticket/395, it was added to el7
%global mono_arches %{ix86} x86_64 sparc sparcv9 ia64 %{arm} alpha s390x ppc ppc64 ppc64le
@ -16,15 +15,15 @@
%global _monogacdir %{_monodir}/gac
%endif
%if 0%{?rhel}%{?el6}%{?el7} || %{with bootstrap}
%if 0%{?rhel}%{?el6}%{?el7} || 0%{?bootstrap}
# to resolve: "ERROR: No build ID note found"
%undefine _missing_build_ids_terminate_build
%endif
%global xamarinrelease 182
%global xamarinrelease 166
Name: mono
Version: 6.12.0
Release: 9%{?dist}
Version: 6.6.0
Release: 10%{?dist}
Summary: Cross-platform, Open Source, .NET development framework
License: MIT
@ -49,6 +48,7 @@ Patch5: mono-6.6.0-roslyn-binaries.patch
Patch6: mono-5.18.0-use-mcs.patch
Patch7: mono-5.18.0-reference-assemblies-fix.patch
Patch8: mono-5.18.0-sharpziplib-parent-path-traversal.patch
Patch9: mono-6.6.0-python3.patch
# Fix NRE bug in api-doc-tools: https://github.com/mono/api-doc-tools/pull/464
Patch10: 0001-DocumentationEnumerator.cs-Declare-iface-and-ifaceMe.patch
# Replace new Csharp features with old to allow mdoc to build
@ -58,8 +58,9 @@ Patch11: 0001-Replace-new-Csharp-features-with-old-ones.patch
Patch12: 0001-Reenable-mdoc.exe-build.patch
# fix issue with conflicts between i686 and x86_64 package (#1853724)
Patch13: mono-6.6.0-fix-multi-arch-issue.patch
# fix issue with process start (#1839410)
Patch14: mono-6.12.0-fix-process-start.patch
BuildRequires: make
BuildRequires: bison
BuildRequires: python%{python3_pkgversion}
BuildRequires: cmake
@ -74,12 +75,14 @@ BuildRequires: perl-Getopt-Long
# Yes, mono actually depends on itself, because
# we deleted the bootstrapping binaries. If you
# need to bootstrap mono, set _with_bootstrap at the top
# which results in not deleting the binaries in %%prep.
# need to bootstrap mono, comment out this BuildRequires
# and don't delete the binaries in %%prep.
%if %{without bootstrap}
BuildRequires: mono-core >= 6.12
BuildRequires: mono-devel >= 6.12
%if 0%{bootstrap}
# for bootstrap, use bundled monolite and reference assemblies instead of local mono
%else
BuildRequires: mono-core >= 6.6
BuildRequires: mono-devel >= 6.6
%endif
# JIT only available on these:
@ -98,7 +101,7 @@ metadata access libraries.
%package core
Summary: The Mono CIL runtime, suitable for running .NET code
Requires: libgdiplus
#dependency required for install
#dependency requiered for install
Provides: mono(System.Collections.Immutable) = 1.2.0.0
Provides: mono(System.Diagnostics.StackTrace) = 4.0.2.0
Provides: mono(System.IO) = 4.0.10.0
@ -182,7 +185,7 @@ assemblies: Microsoft.Vsa,
System.Configuration.Install, System.Management, System.Messaging.
%package reactive
License: MIT and ASL 2.0
License: MIT License (or similar) ; Apache License 2.0
Summary: Reactive Extensions for Mono core libraries
Requires: mono-core = %{version}-%{release}
@ -191,7 +194,7 @@ Reactive Extensions for Mono, this packages don't depend on
desktop-specific features.
%package reactive-winforms
License: MIT and ASL 2.0
License: MIT License (or similar) ; Apache License 2.0
Summary: Reactive Extensions for Mono desktop-specific libraries
Requires: mono-core = %{version}-%{release}
Requires: mono-reactive = %{version}-%{release}
@ -343,12 +346,14 @@ not install anything from outside the mono source (XSP, mono-basic, etc.).
%patch6 -p1
%patch7 -p1
%patch8 -p1
%patch9 -p1
pushd external/api-doc-tools
%patch10 -p1
%patch11 -p1
popd
%patch12 -p1
%patch13 -p1
%patch14 -p1
# don't build mono-helix-client which requires the helix-binaries to build
sed -i 's|mono-helix-client||g' mcs/tools/Makefile
@ -362,7 +367,7 @@ sed -i 's|BOOTSTRAP_BIN_PROFILE = v4.7|BOOTSTRAP_BIN_PROFILE = v4.7.1|g' mcs/bui
# Remove hardcoded lib directory for libMonoPosixHelper.so from the config
sed -i 's|$mono_libdir/||g' data/config.in
%if %{with bootstrap}
%if 0%{bootstrap}
# for bootstrap, keep some binaries
find . -name "*.dll" -not -path "./mcs/class/lib/monolite-linux/*" -not -path "./external/binary-reference-assemblies/v4.7.1/*" -print -delete
find . -name "*.exe" -not -path "./mcs/class/lib/monolite-linux/*" -print -delete
@ -376,11 +381,6 @@ cd external/binary-reference-assemblies && mv v4.7.1 v4.7.1.tobuild && ln -s /us
%endif
%build
# This package fails to build with LTO on ppc64le. Root cause analysis has not been
# done. For now disable LTO
%ifarch ppc64le
%define _lto_cflags %{nil}
%endif
%ifarch s390x
# either mono C code relies on undefined behaviour or gcc is even more broken than earlier
RPM_OPT_FLAGS=$(echo $RPM_OPT_FLAGS | sed -e 's/-O2 /-O1 /g')
@ -452,11 +452,9 @@ rm -f %{buildroot}%{_libdir}/pkgconfig/mono-nunit.pc
# remove dmcs because it requires the .net 4.0 sdk but we only deliver 4.5 with Fedora (#1294967)
rm -f %{buildroot}%{_bindir}/dmcs
# remove wrapper scripts for roslyn-binaries
# remove csc
rm -f %{buildroot}%{_bindir}/csc
rm -f %{buildroot}%{_bindir}/csc-dim
rm -f %{buildroot}%{_bindir}/csi
rm -f %{buildroot}%{_bindir}/vbc
# drop prj2make because the binary is not built anymore
rm -f %{buildroot}%{_bindir}/prj2make
@ -501,7 +499,7 @@ rm %{buildroot}%{_bindir}/mono-find-provides
%post core
%{?ldconfig}
cert-sync --quiet /etc/pki/tls/certs/ca-bundle.crt
cert-sync /etc/pki/tls/certs/ca-bundle.crt
%ldconfig_postun
@ -530,9 +528,11 @@ cert-sync --quiet /etc/pki/tls/certs/ca-bundle.crt
%mono_bin ikdasm
%mono_bin lc
%{_bindir}/gacutil2
%{_bindir}/csi
%{_bindir}/mcs
%{_monodir}/4.5/mcs.*
%{_monodir}/4.5/mono-api-diff.*
%{_bindir}/vbc
%mono_bin mozroots
%mono_bin pdb2mdb
%mono_bin setreg
@ -671,7 +671,7 @@ cert-sync --quiet /etc/pki/tls/certs/ca-bundle.crt
%mono_bin makecert
%mono_bin mono-cil-strip
%{_bindir}/monodis
%{_bindir}/monolinker
%mono_bin monolinker
%mono_bin mono-shlib-cop
%mono_bin mono-xmltool
%mono_bin monop
@ -759,7 +759,7 @@ cert-sync --quiet /etc/pki/tls/certs/ca-bundle.crt
%{_includedir}/mono-2.0/mono/utils/*.h
%{_includedir}/mono-2.0/mono/cil/opcode.def
# for Epel7, we don't deliver these files, they are still provided by rpm-build-4.11.3-43.el7.x86_64
# for Epel7, we don't deliver these two files, they are still provided by rpm-build-4.11.3-43.el7.x86_64
%if 0%{?el7}%{?el8} == 0
%{_prefix}/lib/rpm/mono-find-*
%{_prefix}/lib/rpm/fileattrs/mono.attr
@ -941,63 +941,20 @@ cert-sync --quiet /etc/pki/tls/certs/ca-bundle.crt
%files complete
%changelog
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 6.12.0-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Thu Jun 16 2022 Timotheus Pokorra <timotheus.pokorra@solidcharity.com> - 6.12.0-8
- Upgrade to Mono 6.12.0.182
* Fri Feb 11 2022 Timotheus Pokorra <timotheus.pokorra@solidcharity.com> - 6.12.0-7
- Fixing license for mono-reactive packages, fixing bug 2025856
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 6.12.0-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 6.12.0-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Sat Feb 27 2021 Timotheus Pokorra <timotheus.pokorra@solidcharity.com> - 6.12.0-4
- Upgrade to Mono 6.12.0.122
* Mon Feb 22 2021 Timotheus Pokorra <timotheus.pokorra@solidcharity.com> - 6.12.0-3
* Mon Feb 22 2021 Timotheus Pokorra <timotheus.pokorra@solidcharity.com> - 6.6.0-10
- backport patch: fix early return in Process.Start (#1839410)
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 6.12.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Tue Dec 22 2020 Timotheus Pokorra <timotheus.pokorra@solidcharity.com> - 6.12.0-1
- Upgrade to Mono 6.12.0.107
* Tue Oct 27 2020 Timotheus Pokorra <timotheus.pokorra@solidcharity.com> - 6.12.0-0
- Upgrade to Mono 6.12.0.90
* Mon Oct 12 2020 Timotheus Pokorra <timotheus.pokorra@solidcharity.com> - 6.10.0-1
* Wed Oct 14 2020 Timotheus Pokorra <timotheus.pokorra@solidcharity.com> - 6.6.0-9
- fix issue with conflicts between i686 and x86_64 package (#1853724)
* Mon Sep 28 2020 Timotheus Pokorra <timotheus.pokorra@solidcharity.com> - 6.10.0-0
- Upgrade to Mono 6.10.0.104
* Fri Aug 21 2020 François Cami <fcami@redhat.com> - 6.8.0-6
* Fri Aug 21 2020 François Cami <fcami@redhat.com> - 6.6.0-8
- Ship libMonoSupportW.so
* Tue Aug 11 2020 Jeff Law <law@redhat.com> - 6.8.0-5
- Disable LTO on ppc64le
* Wed Jun 17 2020 Timotheus Pokorra <timotheus.pokorra@solidcharity.com> - 6.6.0-7
- fix for epel7, don't deliver mono-find-provides or mono-find-requires since they are still part of rpm-build
* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 6.8.0-4
- Second attempt - Rebuilt for
https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 6.8.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Sat Jun 27 2020 Jeff Smith <whydoubt@gmail.com> - 6.8.0-2
- Remove wrapper scripts for unbuilt csi.exe and vbc.exe
* Fri Jun 19 2020 Timotheus Pokorra <timotheus.pokorra@solidcharity.com> - 6.8.0-1
- build without bootstrap
* Fri Jun 19 2020 Timotheus Pokorra <timotheus.pokorra@solidcharity.com> - 6.8.0-0
- upgrade to Mono 6.8.0.123, with a bootstrap build
* Wed Jun 17 2020 Timotheus Pokorra <timotheus.pokorra@solidcharity.com> - 6.6.0-6
- new upstream Mono 6.6.0.166
* Mon Feb 03 2020 Robert-André Mauchin <zebob.m@gmail.com> - 6.6.0-5
- Reenable mdoc build (#1797360)

View File

@ -1 +1 @@
SHA512 (mono-6.12.0.182.tar.xz) = 5f0f02f2adf89785af8f620c16d69fc97b87c9b39133286e6f1237a397f4842ea8d26802d9f802f8798a86540dc1bc3b5201428f218c78fbcf91f0d575cde512
SHA512 (mono-6.6.0.166.tar.xz) = 75a4c4f6c82842d2a42383eac4e7afcb313f3d63b500786ce249c7a89061677e6e042568eb5add700381bb73cd4ca1baff3f2c734598387be81542fa92378a4d