Compare commits

..

3 commits

Author SHA1 Message Date
Timotheus Pokorra
5af52bb54e Merge branch 'master' into f30 2019-05-14 06:11:00 +00:00
Timotheus Pokorra
a26fed6377 Merge branch 'master' into f30 2019-05-14 05:15:34 +00:00
Timotheus Pokorra
b292d935cd add symbolic link from /usr/lib/mono/4.5-api to 4.7.1-api to fix build issues for other packages depending on Mono 2019-04-29 10:42:58 +00:00
22 changed files with 336 additions and 986 deletions

1
.gitignore vendored
View file

@ -1,3 +1,2 @@
mono-*.tar.bz2
mono-*.src.rpm
mono-*.tar.xz

View file

@ -1,41 +0,0 @@
From 415b0ca76d1071bc2bb89f8860f4ce831d6a090a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Robert-Andr=C3=A9=20Mauchin?= <zebob.m@gmail.com>
Date: Mon, 3 Feb 2020 23:09:36 +0100
Subject: [PATCH] DocumentationEnumerator.cs: Declare iface and ifaceMethod
correctly to fix NRE
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Using TypeReference and MethodReference instead of var to declare them.
Fix #462
Signed-off-by: Robert-André Mauchin <zebob.m@gmail.com>
---
mdoc/Mono.Documentation/Updater/DocumentationEnumerator.cs | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/mdoc/Mono.Documentation/Updater/DocumentationEnumerator.cs b/mdoc/Mono.Documentation/Updater/DocumentationEnumerator.cs
index be22bf0..1917b59 100644
--- a/mdoc/Mono.Documentation/Updater/DocumentationEnumerator.cs
+++ b/mdoc/Mono.Documentation/Updater/DocumentationEnumerator.cs
@@ -341,7 +341,7 @@ namespace Mono.Documentation.Updater
var method = ((PropertyDefinition) mr).GetMethod ?? ((PropertyDefinition) mr).SetMethod;
if (method?.Overrides != null && method.Overrides.Any())
{
- DocUtils.GetInfoForExplicitlyImplementedMethod(method, out var iface, out var ifaceMethod);
+ DocUtils.GetInfoForExplicitlyImplementedMethod(method, out TypeReference iface, out MethodReference ifaceMethod);
var newName = DocUtils.GetMemberForProperty(ifaceMethod.Name);
if (newName == memberName && verifyInterface(mr) && docName.Contains (iface.Name))
yield return mr;
@@ -428,4 +428,4 @@ namespace Mono.Documentation.Updater
return count;
}
}
-}
\ No newline at end of file
+}
--
2.24.1

View file

@ -1,86 +0,0 @@
From 7d46c195498b06f6fe0562f957f7309140c24a46 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Robert-Andr=C3=A9=20Mauchin?= <zebob.m@gmail.com>
Date: Mon, 3 Feb 2020 20:51:40 +0100
Subject: [PATCH] Reenable mdoc.exe build
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: Robert-Andr<C3><A9> Mauchin <zebob.m@gmail.com>
---
mcs/docs/Makefile | 4 ----
mcs/tools/mdoc/Makefile | 18 ++++++------------
2 files changed, 6 insertions(+), 16 deletions(-)
diff --git a/mcs/docs/Makefile b/mcs/docs/Makefile
index b66d70230..519a98443 100644
--- a/mcs/docs/Makefile
+++ b/mcs/docs/Makefile
@@ -38,10 +38,6 @@ DISABLE_MCS_DOCS = yes
endif
endif
-ifdef MCS_MODE
-DISABLE_MCS_DOCS = yes
-endif
-
test-local run-test-local run-test-ondotnet-local doc-update:
clean-local:
diff --git a/mcs/tools/mdoc/Makefile b/mcs/tools/mdoc/Makefile
index e3c5a321d..008203616 100644
--- a/mcs/tools/mdoc/Makefile
+++ b/mcs/tools/mdoc/Makefile
@@ -44,12 +44,6 @@ $(PROGRAM): $(PROGRAM_DEPS)
PROGRAM_COMPILE = $(CSCOMPILE)
-ifdef MCS_MODE
-NO_INSTALL=1
-NO_BUILD=1
-NO_TEST=1
-endif
-
include ../../build/executable.make
MONO = \
@@ -63,6 +57,11 @@ DIFF = diff -rupZ
DIFF_QUIET = diff --brief -Z
endif
+ifdef MCS_MODE
+DIFF = echo "WARNING: running in mcs mode, tests are specific to roslyn and would fail. Skipping diff check."
+DIFF_QUIET = $(DIFF)
+endif
+
dist-local: dist-default dist-tests
dist-tests:
@@ -360,7 +359,7 @@ check-mdoc-export-msxdoc-update:
check-mdoc-export-msxdoc:
$(MONO) $(PROGRAM) export-msxdoc -o - Test/en.expected.importslashdoc \
- | $(DIFF) - Test/msxdoc-expected.importslashdoc.xml
+ | $(DIFF_QUIET) - Test/msxdoc-expected.importslashdoc.xml
my_abs_top_srcdir = $(shell cd . && pwd)
@@ -390,10 +389,6 @@ run-test-local: check-doc-tools
run-test-update : check-doc-tools-update
-ifdef MCS_MODE
-check-doc-tools:
- @echo "WARNING: running in mcs mode, mdoc doesn't compile with mcs. Skipping."
-else
check-doc-tools: \
check-monodocer-since \
check-monodocer-importecmadoc \
@@ -412,7 +407,6 @@ check-doc-tools: \
check-monodocer-dropns-multi-withexisting
#check-monodocer-dropns-delete
-endif
check-doc-tools-update: check-monodocer-since-update \
check-monodocer-importecmadoc-update \

View file

@ -1,301 +0,0 @@
From bf5c5a72978a0f9d32c9934e216bfaaf2d1717be Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Robert-Andr=C3=A9=20Mauchin?= <zebob.m@gmail.com>
Date: Mon, 3 Feb 2020 18:38:58 +0100
Subject: [PATCH] Replace new Csharp features with old ones
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Replace new Csharp features like switch statements and
"is null" to allow mdoc.exe to build with mcs.
Signed-off-by: Robert-André Mauchin <zebob.m@gmail.com>
---
mdoc/Mono.Documentation/Updater/DocUtils.cs | 91 ++++++++++---------
.../CppFormatters/CppFullMemberFormatter.cs | 26 +++---
.../Updater/Formatters/FSharpFormatter.cs | 16 ++--
.../Updater/Formatters/JsFormatter.cs | 27 +++---
.../Updater/Formatters/JsMemberFormatter.cs | 9 +-
5 files changed, 85 insertions(+), 84 deletions(-)
diff --git a/mdoc/Mono.Documentation/Updater/DocUtils.cs b/mdoc/Mono.Documentation/Updater/DocUtils.cs
index 331ef90..fe2da59 100644
--- a/mdoc/Mono.Documentation/Updater/DocUtils.cs
+++ b/mdoc/Mono.Documentation/Updater/DocUtils.cs
@@ -287,24 +287,24 @@ namespace Mono.Documentation.Updater
return inst != null
? inst.GenericArguments.Count
: type.GenericParameters.Count;
- }
+ }
class TypeEquality : IEqualityComparer<TypeReference>
- {
- bool IEqualityComparer<TypeReference>.Equals (TypeReference x, TypeReference y)
+ {
+ bool IEqualityComparer<TypeReference>.Equals (TypeReference x, TypeReference y)
+ {
+ if (x == null && y == null) return true;
+ if (x == null || y == null) return false;
+ return x.FullName == y.FullName;
+ }
+
+ int IEqualityComparer<TypeReference>.GetHashCode (TypeReference obj)
{
- if (x is null && y is null) return true;
- if (x is null || y is null) return false;
- return x.FullName == y.FullName;
- }
-
- int IEqualityComparer<TypeReference>.GetHashCode (TypeReference obj)
- {
- return obj.GetHashCode ();
+ return obj.GetHashCode ();
}
}
static TypeEquality typeEqualityComparer = new TypeEquality ();
-
+
public static IEnumerable<TypeReference> GetAllPublicInterfaces (TypeDefinition type)
{
return GetAllInterfacesFromType (type)
@@ -314,7 +314,7 @@ namespace Mono.Documentation.Updater
private static IEnumerable<TypeReference> GetAllInterfacesFromType(TypeDefinition type)
{
- if (type is null)
+ if (type == null)
yield break;
foreach(var i in type.Interfaces)
@@ -525,26 +525,29 @@ namespace Mono.Documentation.Updater
FillUnifiedMemberTypeNames(unifiedTypeNames, memberReference as IGenericParameterProvider);// Fill the member generic parameters unified names as M0, M1....
FillUnifiedTypeNames(unifiedTypeNames, memberReference.DeclaringType, genericInterface);// Fill the type generic parameters unified names as T0, T1....
- switch (memberReference)
- {
- case IMethodSignature methodSignature:
- buf.Append(GetUnifiedTypeName(methodSignature.ReturnType, unifiedTypeNames)).Append(" ");
- buf.Append(SimplifyName(memberReference.Name)).Append(" ");
- AppendParameters(buf, methodSignature.Parameters, unifiedTypeNames);
- break;
- case PropertyDefinition propertyReference:
- buf.Append(GetUnifiedTypeName(propertyReference.PropertyType, unifiedTypeNames)).Append(" ");
- if (propertyReference.GetMethod != null)
- buf.Append("get").Append(" ");
- if (propertyReference.SetMethod != null)
- buf.Append("set").Append(" ");
- buf.Append(SimplifyName(memberReference.Name)).Append(" ");
- AppendParameters(buf, propertyReference.Parameters, unifiedTypeNames);
- break;
- case EventDefinition eventReference:
- buf.Append(GetUnifiedTypeName(eventReference.EventType, unifiedTypeNames)).Append(" ");
- buf.Append(SimplifyName(memberReference.Name)).Append(" ");
- break;
+ if (memberReference is IMethodSignature)
+ {
+ IMethodSignature methodSignature = (IMethodSignature)memberReference;
+ buf.Append(GetUnifiedTypeName(methodSignature.ReturnType, unifiedTypeNames)).Append(" ");
+ buf.Append(SimplifyName(memberReference.Name)).Append(" ");
+ AppendParameters(buf, methodSignature.Parameters, unifiedTypeNames);
+ }
+ if (memberReference is PropertyDefinition)
+ {
+ PropertyDefinition propertyReference = (PropertyDefinition)memberReference;
+ buf.Append(GetUnifiedTypeName(propertyReference.PropertyType, unifiedTypeNames)).Append(" ");
+ if (propertyReference.GetMethod != null)
+ buf.Append("get").Append(" ");
+ if (propertyReference.SetMethod != null)
+ buf.Append("set").Append(" ");
+ buf.Append(SimplifyName(memberReference.Name)).Append(" ");
+ AppendParameters(buf, propertyReference.Parameters, unifiedTypeNames);
+ }
+ if (memberReference is EventDefinition)
+ {
+ EventDefinition eventReference = (EventDefinition)memberReference;
+ buf.Append(GetUnifiedTypeName(eventReference.EventType, unifiedTypeNames)).Append(" ");
+ buf.Append(SimplifyName(memberReference.Name)).Append(" ");
}
var memberUnifiedTypeNames = new Dictionary<string, string>();
@@ -666,14 +669,20 @@ namespace Mono.Documentation.Updater
/// </summary>
private static Collection<MethodReference> GetOverrides(MemberReference memberReference)
{
- switch (memberReference)
+ if (memberReference is MethodDefinition)
+ {
+ MethodDefinition methodDefinition = (MethodDefinition)memberReference;
+ return methodDefinition.Overrides;
+ }
+ if (memberReference is PropertyDefinition)
+ {
+ PropertyDefinition propertyDefinition = (PropertyDefinition)memberReference;
+ return (propertyDefinition.GetMethod ?? propertyDefinition.SetMethod)?.Overrides;
+ }
+ if (memberReference is EventDefinition)
{
- case MethodDefinition methodDefinition:
- return methodDefinition.Overrides;
- case PropertyDefinition propertyDefinition:
- return (propertyDefinition.GetMethod ?? propertyDefinition.SetMethod)?.Overrides;
- case EventDefinition evendDefinition:
- return evendDefinition.AddMethod.Overrides;
+ EventDefinition evendDefinition = (EventDefinition)memberReference;
+ return evendDefinition.AddMethod.Overrides;
}
return null;
@@ -692,4 +701,4 @@ namespace Mono.Documentation.Updater
return method.Name.StartsWith("op_", StringComparison.Ordinal);
}
}
-}
\ No newline at end of file
+}
diff --git a/mdoc/Mono.Documentation/Updater/Formatters/CppFormatters/CppFullMemberFormatter.cs b/mdoc/Mono.Documentation/Updater/Formatters/CppFormatters/CppFullMemberFormatter.cs
index 7d68c38..6b9bcf6 100644
--- a/mdoc/Mono.Documentation/Updater/Formatters/CppFormatters/CppFullMemberFormatter.cs
+++ b/mdoc/Mono.Documentation/Updater/Formatters/CppFormatters/CppFullMemberFormatter.cs
@@ -1029,20 +1029,16 @@ namespace Mono.Documentation.Updater.Formatters.CppFormatters
if (mref.IsDefinition == false)
mref = mref.Resolve() as MemberReference;
- switch (mref)
- {
- case FieldDefinition field:
- return IsSupportedField(field);
- case MethodDefinition method:
- return IsSupportedMethod(method);
- case PropertyDefinition property:
- return IsSupportedProperty(property);
- case EventDefinition @event:
- return IsSupportedEvent(@event);
- case AttachedPropertyDefinition _:
- case AttachedEventDefinition _:
- return false;
- }
+ if (mref is FieldDefinition)
+ return IsSupportedField((FieldDefinition)mref);
+ else if (mref is MethodDefinition)
+ return IsSupportedMethod((MethodDefinition)mref);
+ else if (mref is PropertyDefinition)
+ return IsSupportedProperty((PropertyDefinition)mref);
+ else if (mref is EventDefinition)
+ return IsSupportedEvent((EventDefinition)mref);
+ else if (mref is AttachedPropertyDefinition || mref is AttachedEventDefinition)
+ return false;
throw new NotSupportedException("Unsupported member type: " + mref?.GetType().FullName);
}
@@ -1119,4 +1115,4 @@ namespace Mono.Documentation.Updater.Formatters.CppFormatters
return true;
}
}
-}
\ No newline at end of file
+}
diff --git a/mdoc/Mono.Documentation/Updater/Formatters/FSharpFormatter.cs b/mdoc/Mono.Documentation/Updater/Formatters/FSharpFormatter.cs
index 236d56f..f91bf9a 100644
--- a/mdoc/Mono.Documentation/Updater/Formatters/FSharpFormatter.cs
+++ b/mdoc/Mono.Documentation/Updater/Formatters/FSharpFormatter.cs
@@ -1029,15 +1029,15 @@ namespace Mono.Documentation.Updater
}
return false;
}
- switch (mref)
+ if (mref is MethodDefinition)
{
- case MethodDefinition method:
- return !(method.HasCustomAttributes && method.CustomAttributes.Any(
- ca => ca.GetDeclaringType() ==
- "System.Diagnostics.Contracts.ContractInvariantMethodAttribute"
- || ca.GetDeclaringType() ==
- Consts.CompilerGeneratedAttribute))
- && AppendVisibility(new StringBuilder(), method) != null;
+ MethodDefinition method = (MethodDefinition)mref;
+ return !(method.HasCustomAttributes && method.CustomAttributes.Any(
+ ca => ca.GetDeclaringType() ==
+ "System.Diagnostics.Contracts.ContractInvariantMethodAttribute"
+ || ca.GetDeclaringType() ==
+ Consts.CompilerGeneratedAttribute))
+ && AppendVisibility(new StringBuilder(), method) != null;
}
return true;
diff --git a/mdoc/Mono.Documentation/Updater/Formatters/JsFormatter.cs b/mdoc/Mono.Documentation/Updater/Formatters/JsFormatter.cs
index f8b2f04..92b8f3c 100644
--- a/mdoc/Mono.Documentation/Updater/Formatters/JsFormatter.cs
+++ b/mdoc/Mono.Documentation/Updater/Formatters/JsFormatter.cs
@@ -68,23 +68,22 @@ namespace mdoc.Mono.Documentation.Updater.Formatters
public override bool IsSupported(MemberReference mref)
{
- switch (mref)
+ if (mref is PropertyDefinition)
{
- case PropertyDefinition propertyDefinition:
- if (!IsPropertySupported(propertyDefinition))
- return false;
- break;
- case MethodDefinition methodDefinition:
- if (!IsMethodSupported(methodDefinition))
- return false;
- break;
- case FieldDefinition _:
- return false;// In WinRT fields can be exposed only by structures.
- case AttachedEventDefinition _:
+ PropertyDefinition propertyDefinition = (PropertyDefinition)mref;
+ if (!IsPropertySupported(propertyDefinition))
return false;
- case AttachedPropertyDefinition _:
+ }
+ else if (mref is MethodDefinition)
+ {
+ MethodDefinition methodDefinition = (MethodDefinition)mref;
+ if (!IsMethodSupported(methodDefinition))
return false;
}
+ else if (mref is FieldDefinition // In WinRT fields can be exposed only by structures.
+ || mref is AttachedEventDefinition
+ || mref is AttachedPropertyDefinition)
+ return false;
var member = mref.Resolve();
return member != null
@@ -169,4 +168,4 @@ namespace mdoc.Mono.Documentation.Updater.Formatters
return fullName;
}
}
-}
\ No newline at end of file
+}
diff --git a/mdoc/Mono.Documentation/Updater/Formatters/JsMemberFormatter.cs b/mdoc/Mono.Documentation/Updater/Formatters/JsMemberFormatter.cs
index 6bc6995..f6c8af6 100644
--- a/mdoc/Mono.Documentation/Updater/Formatters/JsMemberFormatter.cs
+++ b/mdoc/Mono.Documentation/Updater/Formatters/JsMemberFormatter.cs
@@ -58,12 +58,9 @@ namespace mdoc.Mono.Documentation.Updater.Formatters
public override bool IsSupported(MemberReference mref)
{
- switch (mref)
+ if (mref is PropertyDefinition || mref is EventDefinition)
{
- case PropertyDefinition _:
- return false;
- case EventDefinition _:
- return false;
+ return false;
}
return base.IsSupported(mref);
}
@@ -82,4 +79,4 @@ namespace mdoc.Mono.Documentation.Updater.Formatters
return base.IsSupported(tref);
}
}
-}
\ No newline at end of file
+}
--
2.24.1

View file

@ -11,9 +11,9 @@ diff --git a/mcs/class/System.Windows.Forms/System.Windows.Forms/XplatUIX11.cs b
index b0777b5..d50d6c4 100644
--- a/mcs/class/System.Windows.Forms/System.Windows.Forms/XplatUIX11.cs
+++ b/mcs/class/System.Windows.Forms/System.Windows.Forms/XplatUIX11.cs
@@ -6219,9 +6219,6 @@ namespace System.Windows.Forms {
atoms [0] = (IntPtr)1; // Version 1
atoms [1] = (IntPtr)1; // we want to be mapped
@@ -6239,9 +6239,6 @@ namespace System.Windows.Forms {
atoms [0] = 1; // Version 1
atoms [1] = 1; // we want to be mapped
- // This line cost me 3 days...
- XChangeProperty(DisplayHandle, hwnd.whole_window, _XEMBED_INFO, _XEMBED_INFO, 32, PropertyMode.Replace, atoms, 2);

View file

@ -6,6 +6,6 @@
+#define ARCH_MIN_MS_BLOCK_SIZE (64*1024)
+#define ARCH_MIN_MS_BLOCK_SIZE_SHIFT 16
#if defined(__APPLE__)
#define REDZONE_SIZE 128
#else
#ifdef __linux__
#define REDZONE_SIZE 0
#elif defined(__APPLE__)

View file

@ -1,6 +1,6 @@
--- a/mcs/class/reference-assemblies/Makefile 2019-01-02 10:25:41.011999700 +0100
+++ b/mcs/class/reference-assemblies/Makefile 2019-01-02 10:27:20.591632515 +0100
@@ -10,29 +10,11 @@
@@ -10,25 +10,11 @@
$(MAKE) -C ../../../external/binary-reference-assemblies CSC="MONO_PATH=$(abspath $(topdir)/class/lib/$(BUILD_TOOLS_PROFILE)) $(INTERNAL_CSC)"
install-local:
@ -14,9 +14,6 @@
- $(MKINSTALLDIRS) $(PROFILE_DIR)/4.6.1-api
- $(MKINSTALLDIRS) $(PROFILE_DIR)/4.6.2-api
- $(MKINSTALLDIRS) $(PROFILE_DIR)/4.7-api
- $(MKINSTALLDIRS) $(PROFILE_DIR)/4.7.1-api
- $(MKINSTALLDIRS) $(PROFILE_DIR)/4.7.2-api
- $(MKINSTALLDIRS) $(PROFILE_DIR)/4.8-api
- $(MKINSTALLDIRS) $(PROFILE_DIR)/4.5-api/Facades
- $(MKINSTALLDIRS) $(PROFILE_DIR)/4.5.1-api/Facades
- $(MKINSTALLDIRS) $(PROFILE_DIR)/4.5.2-api/Facades
@ -26,7 +23,6 @@
- $(MKINSTALLDIRS) $(PROFILE_DIR)/4.7-api/Facades
- $(MKINSTALLDIRS) $(PROFILE_DIR)/4.7.1-api/Facades
- $(MKINSTALLDIRS) $(PROFILE_DIR)/4.7.2-api/Facades
- $(MKINSTALLDIRS) $(PROFILE_DIR)/4.8-api/Facades
+ $(MKINSTALLDIRS) $(PROFILE_DIR)/4.5
+ ln -sf 4.5 $(PROFILE_DIR)/4.7-api
+ ln -sf 4.5 $(PROFILE_DIR)/4.6-api
@ -35,17 +31,31 @@
$(INSTALL_LIB) ../../../external/binary-reference-assemblies/v2.0/*.dll $(PROFILE_DIR)/2.0-api
$(INSTALL_LIB) ../../../external/binary-reference-assemblies/v3.5/*.dll $(PROFILE_DIR)/3.5-api
@@ -67,13 +53,6 @@
$(INSTALL_LIB) ../../../external/binary-reference-assemblies/mono/*.dll $(PROFILE_DIR)/4.7.2-api
rm -f $(PROFILE_DIR)/4.7.2-api/ICSharpCode.SharpZipLib.dll
- # Unfortunately, a few programs (most notably NUnit and FSharp) have hardcoded checks for <prefix>/lib/mono/4.0/mscorlib.dll or Mono.Posix.dll,
- # so we need to place something there or those tools break. We decided to symlink to the reference assembly for now.
- # See https://bugzilla.xamarin.com/show_bug.cgi?id=38331 and https://bugzilla.xamarin.com/show_bug.cgi?id=41052
- $(MKINSTALLDIRS) $(PROFILE_DIR)/4.0
- ln -sf ../4.0-api/mscorlib.dll $(PROFILE_DIR)/4.0/mscorlib.dll
- ln -sf ../4.0-api/Mono.Posix.dll $(PROFILE_DIR)/4.0/Mono.Posix.dll
-
DISTFILES = \
$(wildcard ../../../external/binary-reference-assemblies/v4.7.2/Facades/*.dll) \
$(wildcard ../../../external/binary-reference-assemblies/v4.7.1/Facades/*.dll) \
--- a/mcs/Makefile 2018-03-03 06:32:13.642690150 +0100
+++ b/mcs/Makefile 2018-03-03 06:32:54.699643624 +0100
@@ -43,7 +43,7 @@
@@ -40,7 +40,7 @@
# fun specialty targets
-PROFILES = net_4_x binary_reference_assemblies xbuild_12 xbuild_14
+PROFILES = net_4_x xbuild_12 xbuild_14
.PHONY: all-profiles compiler-test-profiles run-compiler-test-profiles $(STD_TARGETS:=-profiles)
all-profiles compiler-test-profiles run-compiler-test-profiles $(STD_TARGETS:=-profiles): %-profiles: profiles-do--%
.PHONY: all-profiles $(STD_TARGETS:=-profiles)
all-profiles $(STD_TARGETS:=-profiles): %-profiles: profiles-do--%
@@ -65,7 +65,6 @@
_boot_ = all clean install
$(_boot_:%=profile-do--xbuild_14--%): profile-do--xbuild_14--%: profile-do--net_4_x--%
@ -56,9 +66,9 @@
$(_boot_:%=profile-do--monodroid_tools--%): profile-do--monodroid_tools--%: profile-do--build--%
--- a/mcs/build/Makefile 2018-03-03 07:18:20.662959369 +0100
+++ b/mcs/build/Makefile 2018-03-03 07:18:33.303253408 +0100
@@ -18,7 +18,6 @@
PLATFORMS = macos linux win32 unix
@@ -19,7 +19,6 @@
PROFILES = \
basic \
build \
- binary_reference_assemblies \
net_4_x \
@ -66,7 +76,7 @@
xbuild_14
--- a/runtime/Makefile.in 2018-03-03 14:06:44.691631197 +0100
+++ b/runtime/Makefile.in 2018-03-03 14:07:07.241155116 +0100
@@ -90,7 +90,7 @@
@@ -80,7 +80,7 @@
host_triplet = @host@
target_triplet = @target@
@INSTALL_4_x_TRUE@am__append_1 = etc/mono/4.0/machine.config etc/mono/4.0/web.config etc/mono/4.5/web.config etc/mono/4.0/Browsers/Compat.browser etc/mono/4.5/Browsers/Compat.browser

View file

@ -0,0 +1,41 @@
From 0bf46dbe2cf0a215ca6e64793b7c434433f50722 Mon Sep 17 00:00:00 2001
From: Marek Safar <marek.safar@gmail.com>
Date: Wed, 31 Oct 2018 10:25:58 +0100
Subject: [PATCH] Fixes __MonoCS__ handling of value types
---
.../src/System/Collections/Generic/LargeArrayBuilder.cs | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/external/corefx/src/Common/src/System/Collections/Generic/LargeArrayBuilder.cs b/external/corefx/src/Common/src/System/Collections/Generic/LargeArrayBuilder.cs
index c0f441909dcf..8ec603ace72e 100644
--- a/external/corefx/src/Common/src/System/Collections/Generic/LargeArrayBuilder.cs
+++ b/external/corefx/src/Common/src/System/Collections/Generic/LargeArrayBuilder.cs
@@ -263,7 +263,7 @@ public CopyPosition CopyTo(CopyPosition position, T[] array, int arrayIndex, int
T[] buffer = GetBuffer(row);
int copied =
#if __MonoCS__
- CopyToCore(buffer, column, array, arrayIndex, count);
+ CopyToCore(buffer, column, array, ref arrayIndex, ref count);
#else
CopyToCore(buffer, column);
#endif
@@ -278,7 +278,7 @@ public CopyPosition CopyTo(CopyPosition position, T[] array, int arrayIndex, int
buffer = GetBuffer(++row);
copied =
#if __MonoCS__
- CopyToCore(buffer, 0, array, arrayIndex, count);
+ CopyToCore(buffer, 0, array, ref arrayIndex, ref count);
#else
CopyToCore(buffer, 0);
#endif
@@ -289,7 +289,7 @@ public CopyPosition CopyTo(CopyPosition position, T[] array, int arrayIndex, int
#if __MonoCS__
}
- static int CopyToCore(T[] sourceBuffer, int sourceIndex, T[] array, int arrayIndex, int count)
+ static int CopyToCore(T[] sourceBuffer, int sourceIndex, T[] array, ref int arrayIndex, ref int count)
#else
int CopyToCore(T[] sourceBuffer, int sourceIndex)
#endif

View file

@ -1,8 +1,8 @@
--- a/mcs/packages/Makefile 2019-02-21 04:53:46.843939657 +0000
+++ b/mcs/packages/Makefile 2019-02-21 04:53:40.111824983 +0000
@@ -42,11 +42,13 @@
@@ -40,15 +40,19 @@
install-local:
install-local: install-prototypes
$(MKINSTALLDIRS) $(TARGET_DIR)
+ifndef MCS_MODE
$(INSTALL_LIB) $(ROSLYN_FILES_FOR_MONO) $(TARGET_DIR)
@ -12,5 +12,11 @@
(cd $(MSBUILD_ROSLYN_DIR); for asm in $(ROSLYN_FILES_FOR_MONO); do ln -fs ../../../../$(FRAMEWORK_VERSION)/$$(basename $$asm) . ; done)
+endif
install-prototypes:
$(MKINSTALLDIRS) $(TARGET_DIR)/dim
+ifndef MCS_MODE
$(INSTALL_LIB) $(ROSLYN_DIM_FILES) $(TARGET_DIR)/dim
+endif
run-test-local: test-csi

View file

@ -0,0 +1,11 @@
--- a/mcs/tools/cil-stringreplacer/Makefile 2019-02-21 04:46:01.764018606 +0000
+++ b/mcs/tools/cil-stringreplacer/Makefile 2019-02-21 04:46:33.532559588 +0000
@@ -8,7 +8,7 @@
API = $(filter basic build, $(PROFILE))
ifdef API
# It can be run using system .net during boostrap
-TARGET_NET_REFERENCE = v4.6
+TARGET_NET_REFERENCE = v4.7.1
# Trick to make it work during boostrap where it has to run with system
# assemblies not the ones in lib/basic folder
PROGRAM_USE_INTERMEDIATE_FILE = 1

53
mono-5.18.1-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
@@ -738,7 +738,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
$(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
@@ -738,7 +738,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
$(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
@@ -1175,7 +1175,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,)
GSHAREDVT_RUNTIME_OPTS = $(if $(GSHAREDVT),-O=gsharedvt,)
fullaot_regtests = $(regtests)

View file

@ -0,0 +1,124 @@
From 6d07dd66f1412b8f7eaadbcd9d660859d4227954 Mon Sep 17 00:00:00 2001
From: Neale Ferguson <neale@sinenomine.net>
Date: Sat, 11 Aug 2018 19:33:58 -0400
Subject: [PATCH] =?UTF-8?q?Fix=20s390x=20build=20broken=20by=20incorrect?=
=?UTF-8?q?=20specification=20of=20the=20msgfi=20instuc=E2=80=A6=20(#10026?=
=?UTF-8?q?)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Fix s390x build broken by incorrect specification of the msgfi instruction used in MUL_IMM type operations. The instruction had been encoded as its 32-bit counterpart (msfi).
In addition, the s390x microcode makes the mono_strength_reduction_division unnecessary so this can be bypassed.
The change to basic.make is just to avoid error messages when basic-profile-check.exe hasn't been built yet.
---
mcs/build/profiles/basic.make | 2 +-
mono/arch/s390x/s390x-codegen.h | 4 ++--
mono/mini/local-propagation.c | 9 +++------
mono/mini/mini-s390x.h | 1 +
mono/mini/mini.c | 3 +++
mono/mini/mini.h | 1 +
6 files changed, 11 insertions(+), 9 deletions(-)
diff --git a/mcs/build/profiles/basic.make b/mcs/build/profiles/basic.make
index eb2264efd457..7dd7770fc512 100644
--- a/mcs/build/profiles/basic.make
+++ b/mcs/build/profiles/basic.make
@@ -122,7 +122,7 @@ $(PROFILE_EXE): $(topdir)/build/common/basic-profile-check.cs $(GENSOURCES_CS)
$(BOOTSTRAP_MCS) /noconfig /langversion:latest /r:mscorlib.dll /r:System.dll /r:System.Core.dll /out:$(GENSOURCES_EXE).tmp $(GENSOURCES_CS)
- rm $(GENSOURCES_EXE)
mv $(GENSOURCES_EXE).tmp $(GENSOURCES_EXE)
- - rm $@
+ - rm -f $@
mv $@.tmp $@
$(PROFILE_OUT): $(PROFILE_EXE)
diff --git a/mono/arch/s390x/s390x-codegen.h b/mono/arch/s390x/s390x-codegen.h
index 49fc120f7d49..12fdd2894eaa 100644
--- a/mono/arch/s390x/s390x-codegen.h
+++ b/mono/arch/s390x/s390x-codegen.h
@@ -1393,8 +1393,8 @@ typedef struct {
#define s390_mlr(c, r1, r2) S390_RRE(c, 0xb996, r1, r2)
#define s390_mr(c, r1, r2) S390_RR(c, 0x1c, r1, r2)
#define s390_ms(c, r, x, b, d) S390_RX(c, 0x71, r, x, b, d)
-#define s390_msfi(c, r, v) S390_RIL_1(c, 0xc20, r, v)
-#define s390_msgfi(c, r, v) S390_RIL_1(c, 0xc21, r, v)
+#define s390_msfi(c, r, v) S390_RIL_1(c, 0xc21, r, v)
+#define s390_msgfi(c, r, v) S390_RIL_1(c, 0xc20, r, v)
#define s390_msgfr(c, r1, r2) S390_RRE(c, 0xb91c, r1, r2)
#define s390_msgr(c, r1, r2) S390_RRE(c, 0xb90c, r1, r2)
#define s390_msgrkc(c, r1, r2, r3) S390_RRF_1(c, 0xb9ed, r1, r2, r3)
diff --git a/mono/mini/local-propagation.c b/mono/mini/local-propagation.c
index 4b5e02ff28f0..d8e8461291aa 100644
--- a/mono/mini/local-propagation.c
+++ b/mono/mini/local-propagation.c
@@ -370,7 +370,7 @@ mono_strength_reduction_ins (MonoCompile *cfg, MonoInst *ins, const char **spec)
}
case OP_IDIV_UN_IMM:
case OP_IDIV_IMM: {
- if (!COMPILE_LLVM (cfg))
+ if ((!COMPILE_LLVM (cfg)) && (!cfg->backend->optimized_div))
allocated_vregs = mono_strength_reduction_division (cfg, ins);
break;
}
@@ -383,10 +383,8 @@ mono_strength_reduction_ins (MonoCompile *cfg, MonoInst *ins, const char **spec)
ins->opcode = OP_ICONST;
MONO_INST_NULLIFY_SREGS (ins);
ins->inst_c0 = 0;
-#if __s390__
- }
-#else
- } else if ((ins->inst_imm > 0) && (ins->inst_imm < (1LL << 32)) && (power != -1)) {
+ } else if ((ins->inst_imm > 0) && (ins->inst_imm < (1LL << 32)) &&
+ (power != -1) && (!cfg->backend->optimized_div)) {
gboolean is_long = ins->opcode == OP_LREM_IMM;
int compensator_reg = alloc_ireg (cfg);
int intermediate_reg;
@@ -411,7 +409,6 @@ mono_strength_reduction_ins (MonoCompile *cfg, MonoInst *ins, const char **spec)
allocated_vregs = TRUE;
}
-#endif
break;
}
#if SIZEOF_REGISTER == 4
diff --git a/mono/mini/mini-s390x.h b/mono/mini/mini-s390x.h
index 464ddb117894..9323182c0cc7 100644
--- a/mono/mini/mini-s390x.h
+++ b/mono/mini/mini-s390x.h
@@ -65,6 +65,7 @@ typedef struct
#define MONO_ARCH_HAVE_OP_GENERIC_CLASS_INIT 1
#define MONO_ARCH_HAVE_SETUP_ASYNC_CALLBACK 1
#define MONO_ARCH_HAVE_TRACK_FPREGS 1
+#define MONO_ARCH_HAVE_OPTIMIZED_DIV 1
#define S390_STACK_ALIGNMENT 8
#define S390_FIRST_ARG_REG s390_r2
diff --git a/mono/mini/mini.c b/mono/mini/mini.c
index 9fdf34bd2a98..fa7608daebfe 100644
--- a/mono/mini/mini.c
+++ b/mono/mini/mini.c
@@ -3045,6 +3045,9 @@ init_backend (MonoBackend *backend)
#ifdef MONO_ARCH_EXPLICIT_NULL_CHECKS
backend->explicit_null_checks = 1;
#endif
+#ifdef MONO_ARCH_HAVE_OPTIMIZED_DIV
+ backend->optimized_div = 1;
+#endif
}
/*
diff --git a/mono/mini/mini.h b/mono/mini/mini.h
index 780208ed8a57..fb217b3194b7 100644
--- a/mono/mini/mini.h
+++ b/mono/mini/mini.h
@@ -1150,6 +1150,7 @@ typedef struct {
guint no_unaligned_access : 1;
guint disable_div_with_mul : 1;
guint explicit_null_checks : 1;
+ guint optimized_div : 1;
int monitor_enter_adjustment;
int dyn_call_param_area;
} MonoBackend;

View file

@ -0,0 +1,11 @@
--- a/mono/utils/mono-context.h 2019-03-22 04:57:54.560641101 +0000
+++ b/mono/utils/mono-context.h 2019-03-22 04:58:27.765211676 +0000
@@ -865,7 +865,7 @@
#define MONO_ARCH_HAS_MONO_CONTEXT 1
-typedef struct ucontext MonoContext;
+typedef ucontext_t MonoContext;
#define MONO_CONTEXT_SET_IP(ctx,ip) \
do { \

View file

@ -1,35 +0,0 @@
From ed68c250b8589663601aa7dd88177697d0b37ec9 Mon Sep 17 00:00:00 2001
From: jo-oe <38652639+jo-oe@users.noreply.github.com>
Date: Tue, 9 Apr 2024 16:57:39 +0200
Subject: [PATCH] Correct the selection of alloc/free functions for zlib.
Avoids segfault when working with zlib-ng.
See:
https://github.com/zlib-ng/zlib-ng/issues/1708
---
support/zlib-helper.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/support/zlib-helper.c b/support/zlib-helper.c
index 76d8951ad8a8a..a5fbc0138822d 100644
--- a/support/zlib-helper.c
+++ b/support/zlib-helper.c
@@ -76,6 +76,8 @@ CreateZStream (gint compress, guchar gzip, read_write_func func, void *gchandle)
return NULL;
z = z_new0 (z_stream);
+ z->zalloc = z_alloc;
+ z->zfree = z_free;
if (compress) {
retval = deflateInit2 (z, Z_DEFAULT_COMPRESSION, Z_DEFLATED, gzip ? 31 : -15, 8, Z_DEFAULT_STRATEGY);
} else {
@@ -86,8 +88,6 @@ CreateZStream (gint compress, guchar gzip, read_write_func func, void *gchandle)
free (z);
return NULL;
}
- z->zalloc = z_alloc;
- z->zfree = z_free;
result = z_new0 (ZStream);
result->stream = z;
result->func = func;

View file

@ -1,26 +0,0 @@
From 2224c6915a98f870cc9a3a9f9e3698e7b20e3d27 Mon Sep 17 00:00:00 2001
From: Esme Povirk <esme@codeweavers.com>
Date: Sat, 12 Apr 2025 20:31:54 +0000
Subject: [PATCH] arm64: Fix a pointer-to-int cast size mismatch.
---
mono/utils/mono-sigcontext.h | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/mono/utils/mono-sigcontext.h b/mono/utils/mono-sigcontext.h
index 2153c1cad57..6426f44b7c7 100644
--- a/mono/utils/mono-sigcontext.h
+++ b/mono/utils/mono-sigcontext.h
@@ -492,6 +492,12 @@ typedef struct ucontext {
#define UCONTEXT_REG_SP(ctx) (((ucontext_t*)(ctx))->uc_mcontext.sp)
#define UCONTEXT_REG_R0(ctx) (((ucontext_t*)(ctx))->uc_mcontext.regs [ARMREG_R0])
#define UCONTEXT_GREGS(ctx) (&(((ucontext_t*)(ctx))->uc_mcontext.regs))
+ #define UCONTEXT_REG_SET_PC(ctx, val) do { \
+ UCONTEXT_REG_PC (ctx) = (gsize)(val); \
+ } while (0)
+ #define UCONTEXT_REG_SET_SP(ctx, val) do { \
+ UCONTEXT_REG_SP (ctx) = (val); \
+ } while (0)
#endif
#ifndef UCONTEXT_REG_SET_PC

View file

@ -1,15 +0,0 @@
--- a/mono/eglib/eglib-config.h.in 2020-10-12 14:57:46.354634946 +0200
+++ b/mono/eglib/eglib-config.h.in 2020-10-12 15:00:10.106637683 +0200
@@ -26,7 +26,11 @@
typedef @GSIZE@ gsize;
typedef @GSSIZE@ gssize;
-#define G_GSIZE_FORMAT @GSIZE_FORMAT@
+#ifdef __i386__
+#define G_GSIZE_FORMAT "u"
+#else
+#define G_GSIZE_FORMAT "lu"
+#endif
#if defined (HOST_WATCHOS)
#undef G_BREAKPOINT

View file

@ -1,76 +0,0 @@
The thread start routine must return void *, and int and void *
are distinct types. Compilers increasingly issue errors instead
of warnings for such type errors, and this causes the configure
probe to fail unconditionally, even if the system supports
__thread variables.
Submitted upstream: <https://github.com/mono/mono/pull/21730>
diff --git a/configure.ac b/configure.ac
index bbbd1622d9728859..5a3a5770c8a3cdb6 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2833,14 +2833,16 @@ if test x$host_win32 = xno; then
__thread int i;
static int res1, res2;
- void thread_main (void *arg)
+ void *thread_main (void *parg)
{
+ int arg = *(int *)parg;
i = arg;
sleep (1);
if (arg == 1)
res1 = (i == arg);
else
res2 = (i == arg);
+ return NULL;
}
int main () {
@@ -2848,8 +2850,10 @@ if test x$host_win32 = xno; then
i = 5;
- pthread_create (&t1, NULL, thread_main, 1);
- pthread_create (&t2, NULL, thread_main, 2);
+ int one = 1;
+ pthread_create (&t1, NULL, thread_main, &one);
+ int two = 2;
+ pthread_create (&t2, NULL, thread_main, &two);
pthread_join (t1, NULL);
pthread_join (t2, NULL);
--- a/configure 2023-06-14 17:18:48.000000000 +0200
+++ b/configure 2023-12-09 10:41:58.001084368 +0100
@@ -24906,14 +24894,16 @@
__thread int i;
static int res1, res2;
- void thread_main (void *arg)
+ void *thread_main (void *parg)
{
+ int arg = *(int *)parg;
i = arg;
sleep (1);
if (arg == 1)
res1 = (i == arg);
else
res2 = (i == arg);
+ return NULL;
}
int main () {
@@ -24921,8 +24911,10 @@
i = 5;
- pthread_create (&t1, NULL, thread_main, 1);
- pthread_create (&t2, NULL, thread_main, 2);
+ int one = 1;
+ pthread_create (&t1, NULL, thread_main, &one);
+ int two = 2;
+ pthread_create (&t2, NULL, thread_main, &two);
pthread_join (t1, NULL);
pthread_join (t2, NULL);

View file

@ -1,42 +0,0 @@
#!/usr/bin/bash
#
# mono-find-provides
#
# Authors:
# Ben Maurer (bmaurer@ximian.com)
#
# (C) 2005 Novell (http://www.novell.com)
#
# Args: builddir buildroot libdir
IFS=$'\n'
filelist=($(grep -Ev "$3/doc/|$3/share/doc/"))
monolist=($(printf "%s\n" "${filelist[@]}" | grep -E "\\.(exe|dll)\$"))
# If monodis is in the package being installed, use that one
# This is to support building mono
build_bindir="$2$3/bin"
build_libdir="$2$3/$4"
if [ -x $build_bindir/monodis ]; then
monodis="$build_bindir/monodis"
export LD_LIBRARY_PATH=$build_libdir${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
elif [ -x $3/bin/monodis ]; then
monodis="$3/bin/monodis"
else
exit 0;
fi
export MONO_SHARED_DIR=$1
for i in "${monolist[@]}"; do
($monodis --assembly $i | awk '
BEGIN { LIBNAME=""; VERSION=""; }
/^Version:/ { VERSION=$2 }
/^Name:/ { LIBNAME=$2 }
END {
if (VERSION && LIBNAME)
print "mono(" LIBNAME ") = " VERSION
}
') 2>/dev/null
done

View file

@ -1,86 +0,0 @@
#!/usr/bin/bash
#
# mono-find-requires
#
# Authors:
# Ben Maurer (bmaurer@ximian.com)
#
# (C) 2005 Novell (http://www.novell.com)
#
# Args: builddir buildroot libdir
IFS=$'\n'
filelist=($(grep -Ev "$3/doc/|$3/share/doc/"))
monolist=($(printf "%s\n" "${filelist[@]}" | grep -E "\\.(exe|dll)\$"))
# If monodis is in the package being installed, use that one
# This is to support building mono
build_bindir="$2$3/bin"
build_libdir="$2$3/$4"
if [ -x $build_bindir/monodis ]; then
monodis="$build_bindir/monodis"
export LD_LIBRARY_PATH=$build_libdir${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
elif [ -x $3/bin/monodis ]; then
monodis="$3/bin/monodis"
else
exit 0;
fi
export MONO_SHARED_DIR=$1
REQUIRES=$(
for i in "${monolist[@]}"; do
($monodis --assemblyref $i | awk '
BEGIN { START=0; LIBNAME=""; VERSION=""; }
(START==0) && /^[0-9]+: Version=/ {
START=1;
sub(/Version=/, "", $2);
VERSION=$2
}
(START==1) && /^\tName=/ {
sub(/Name=/, "", $1);
LIBNAME=$1
print "mono(" LIBNAME ") = " VERSION
START=0
}
') 2> /dev/null
done
)
PROVIDES=$(
for i in "${monolist[@]}"; do
($monodis --assembly $i | awk '
BEGIN { LIBNAME=""; VERSION=""; }
/^Version:/ { VERSION=$2 }
/^Name:/ { LIBNAME=$2 }
END {
if (VERSION && LIBNAME)
print "mono(" LIBNAME ") = " VERSION
}
') 2>/dev/null
done
)
#
# This is a little magic trick to get all REQUIRES that are not
# in PROVIDES. While RPM functions correctly when such deps exist,
# they make the metadata a bit bloated.
#
# Filter out dups from both lists
REQUIRES=$(echo "$REQUIRES" | sort | uniq)
PROVIDES=$(echo "$PROVIDES" | sort | uniq)
#
# Get a list of elements that exist in exactly one of PROVIDES or REQUIRES
#
UNIQ=$(echo "$PROVIDES
$REQUIRES" | sort | uniq -u)
#
# Of those, only chose the ones that are in REQUIRES
#
echo "$UNIQ
$REQUIRES" | sort | uniq -d

View file

@ -1,3 +0,0 @@
%__mono_provides %{_rpmconfigdir}/mono-find-provides %{_builddir}/%{?buildsubdir} %{buildroot} %{_prefix} %{_lib}
%__mono_requires %{_rpmconfigdir}/mono-find-requires %{_builddir}/%{?buildsubdir} %{buildroot} %{_prefix} %{_lib}
%__mono_magic Mono/.Net assembly

314
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,52 +15,40 @@
%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 3
Name: mono
Version: 6.14.1
Release: 2%{?dist}
Version: 5.18.1
Release: 7%{?dist}
Summary: Cross-platform, Open Source, .NET development framework
License: MIT
URL: http://www.mono-project.com
Source0: https://dl.winehq.org/mono/sources/mono/%{name}-%{version}.tar.xz
Source0: http://download.mono-project.com/sources/mono/mono-%{version}.%{xamarinrelease}.tar.bz2
# This key was generated by Tom "spot" Callaway <tcallawa@redhat.com> on Dec 1, 2009
# by running the following command:
# sn -k mono.snk
# You should not regenerate this unless you have a really, really, really good reason.
Source1: mono.snk
# These scripts were taken from rpm-build in Fedora 30
# They're significantly different from what is included in the mono sources.
Source2: mono-find-provides
Source3: mono-find-requires
Source4: mono.attr
Patch0: mono-6.6.0-ignore-reference-assemblies.patch
Patch0: mono-5.10.0-ignore-reference-assemblies.patch
Patch1: mono-4.2.1-ppc.patch
Patch2: mono-5.10.0-find-provides.patch
Patch3: mono-4.2-fix-winforms-trayicon.patch
Patch4: mono-6.6.0-aarch64.patch
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
# 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
# https://github.com/mono/api-doc-tools/pull/463
Patch11: 0001-Replace-new-Csharp-features-with-old-ones.patch
# Reenable mdoc build. To be upstreamed after Patch 10 and 11
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
Patch14: mono-configure-c99.patch
Patch15: mono-6.12.0-correct-alloc-free-for-zlib.patch
Patch16: mono-6.14.0-arm64-fix-pointer-int.patch
Patch4: mono-4.6.1-aarch64.patch
Patch5: mono-5.18.1-s390x-ucontext.patch
Patch6: mono-5.18.0-roslyn-binaries.patch
Patch7: mono-5.18.0-use-mcs.patch
Patch8: mono-5.18.0-use-v471.patch
Patch9: mono-5.18.0-reference-assemblies-fix.patch
Patch10: mono-5.18.0-sharpziplib-parent-path-traversal.patch
Patch11: mono-5.18.1-python3.patch
Patch12: mono-5.18.1-s390x-build.patch
Patch13: mono-5.18.0-largearraybuilder.patch
BuildRequires: make
BuildRequires: bison
BuildRequires: python%{python3_pkgversion}
BuildRequires: cmake
@ -76,12 +63,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 >= 5.0
BuildRequires: mono-devel >= 5.0
%endif
# JIT only available on these:
@ -100,7 +89,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
@ -184,7 +173,7 @@ assemblies: Microsoft.Vsa,
System.Configuration.Install, System.Management, System.Messaging.
%package reactive
License: MIT AND Apache-2.0
License: MIT License (or similar) ; Apache License 2.0
Summary: Reactive Extensions for Mono core libraries
Requires: mono-core = %{version}-%{release}
@ -193,7 +182,7 @@ Reactive Extensions for Mono, this packages don't depend on
desktop-specific features.
%package reactive-winforms
License: MIT AND Apache-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}
@ -258,7 +247,7 @@ data providers.
%package data-sqlite
Summary: sqlite database connectivity for Mono
Requires: mono-core = %{version}-%{release}
Requires: sqlite-libs%{?_isa}
Requires: sqlite
%description data-sqlite
This package contains the ADO.NET Data provider for the sqlite
@ -332,39 +321,29 @@ not install anything from outside the mono source (XSP, mono-basic, etc.).
%{nil}
%prep
%setup -q -n %{name}-%{version}
%setup -q -n %{name}-%{version}.%{xamarinrelease}
%patch -P 0 -p1
%patch0 -p1
%ifarch ppc ppc64 ppc64le s390x
%patch -P 1 -p1
%patch1 -p1
%endif
%patch -P 2 -p1
%patch -P 3 -p1
%patch -P 4 -p1
%patch -P 5 -p1
%patch -P 6 -p1
%patch -P 7 -p1
%patch -P 8 -p1
pushd external/api-doc-tools
%patch -P 10 -p1
%patch -P 11 -p1
popd
%patch -P 12 -p1
%patch -P 13 -p1
%patch -P 14 -p1
%patch -P 15 -p1
%patch -P 16 -p1
# don't build mono-helix-client which requires the helix-binaries to build
sed -i 's|mono-helix-client||g' mcs/tools/Makefile
# use v4.7.1 instead of v4.7
sed -i 's|BOOTSTRAP_BIN_PROFILE = v4.7|BOOTSTRAP_BIN_PROFILE = v4.7.1|g' mcs/build/profiles/build.make
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
%patch7 -p1
%patch8 -p1
%patch9 -p1
%patch10 -p1
%patch11 -p1
%patch12 -p1
%patch13 -p1
# 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
@ -374,17 +353,10 @@ rm -rf mcs/class/lib/monolite-linux/*
find . -name "*.dll" -print -delete
find . -name "*.exe" -print -delete
# use the binaries from the currently installed mono
cd external/binary-reference-assemblies && mv v4.7.1 v4.7.1.tobuild && ln -s %{_monodir}/4.7.1-api v4.7.1 && cd -
cd external/binary-reference-assemblies && mv v4.7.1 v4.7.1.tobuild && ln -s /usr/lib/mono/4.7.1-api v4.7.1 && cd -
%endif
%build
# TODO: Please submit an issue to upstream (rhbz#2380917)
export CMAKE_POLICY_VERSION_MINIMUM=3.5
# 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')
@ -399,7 +371,6 @@ export CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing"
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
export LD_LIBRARY_PATH=`pwd`/mono/native/.libs
make %{?_smp_mflags}
# rebuild the reference assemblies
@ -408,7 +379,6 @@ find ./external/binary-reference-assemblies/v4.7.1/ -name \*.dll -print -delete
BUILD_PATH=`pwd` && cd ./external/binary-reference-assemblies/ && MONO_PATH=$BUILD_PATH/mcs/class/lib/net_4_x-linux/ V=1 CSC="$BUILD_PATH/runtime/mono-wrapper $BUILD_PATH/mcs/class/lib/net_4_x-linux/mcs.exe" make -C v4.7.1
%install
export LD_LIBRARY_PATH=`pwd`/mono/native/.libs
make install DESTDIR=%{buildroot}
# copy the mono.snk key into /etc/pki/mono
@ -424,7 +394,7 @@ cp external/binary-reference-assemblies/v4.7.1/*.dll %{buildroot}%{_monodir}/4.7
rm -f %{buildroot}%{_libdir}/*.la
# remove Windows-only stuff
rm -rf %{buildroot}%{_monodir}/*/Mono.Security.Win32*
#rm -f %{buildroot}%{_libdir}/libMonoSupportW.*
rm -f %{buildroot}%{_libdir}/libMonoSupportW.*
# remove .a files for libraries that are really only for us
rm %{buildroot}%{_libdir}/*.a
# remove libgc cruft
@ -456,11 +426,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
@ -475,37 +443,21 @@ mkdir -p %{buildroot}%{_datadir}/gdb/auto-load%{_bindir}
rm -f %{buildroot}%{_libdir}/pkgconfig/cecil.pc
# remove msbuild / microsoft binary files
rm -rf %{buildroot}%{_monodir}/msbuild
rm -rf %{buildroot}/usr/lib/mono/msbuild
# we have btls debug files
rm -rf %{buildroot}/usr/lib/debug%{_libdir}/libmono-btls-shared.so-*.debug
# drop other debug files as well
rm -rf %{buildroot}/usr/lib/debug%{_libdir}/libmono-native.so*.debug
rm -rf %{buildroot}/usr/lib/debug%{_bindir}/mono-hang-watchdog-*.debug
rm -rf %{buildroot}/usr/lib/debug/usr/lib64/libmono-btls-shared.so-*.debug
# create a symbolic link so that Fedora packages targetting Framework 4.5 will still build
cd %{buildroot}%{_monodir} && ln -s 4.7.1-api 4.5-api && cd -
cd %{buildroot}/usr/lib/mono && ln -s 4.7.1-api 4.5-api && cd -
# as requested in bug 1704861; we have had that link in F29 with Mono 4.8 as well.
cd %{buildroot}%{_monodir} && ln -s 4.7.1-api 4.0-api && cd -
# for Epel7, we don't deliver these files, they are still provided by rpm-build-4.11.3-43.el7.x86_64
%if 0%{?el7}%{?el8} == 0
# rpm helper scripts
mkdir -p %{buildroot}%{_fileattrsdir}
install -p -m755 %{SOURCE2} %{SOURCE3} %{buildroot}%{_rpmconfigdir}
install -p -m644 %{SOURCE4} %{buildroot}%{_fileattrsdir}
%endif
# remove these files, we are using the files installed in /usr/lib/rpm/
rm %{buildroot}%{_bindir}/mono-find-requires
rm %{buildroot}%{_bindir}/mono-find-provides
cd %{buildroot}/usr/lib/mono && ln -s 4.7.1-api 4.0-api && cd -
%find_lang mcs
%post core
%post
%{?ldconfig}
%{_bindir}/cert-sync --quiet /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem
cert-sync /etc/pki/tls/certs/ca-bundle.crt
%ldconfig_postun
@ -523,6 +475,7 @@ rm %{buildroot}%{_bindir}/mono-find-provides
%{_bindir}/mono-sgen
%{_bindir}/mono-sgen-gdb.py
%{_bindir}/mono-package-runtime
%{_bindir}/monograph
%{_bindir}/sgen-grep-binprot
%dir %{_libdir}/mono
%dir %{_libdir}/mono/lldb
@ -534,9 +487,11 @@ rm %{buildroot}%{_bindir}/mono-find-provides
%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
@ -557,8 +512,7 @@ rm %{buildroot}%{_bindir}/mono-find-provides
%{_mandir}/man1/lc.1.gz
%{_mandir}/man1/mprof-report.1.gz
%{_libdir}/libMonoPosixHelper.so*
%{_libdir}/libMonoSupportW.so*
%{_libdir}/libmono-native.so*
%{_libdir}/libmono-system-native.so*
%dir %{_monodir}
%dir %{_monodir}/4.5
%dir %{_monodir}/4.5/Facades
@ -643,7 +597,6 @@ rm %{buildroot}%{_bindir}/mono-find-provides
%gac_dll System.Workflow.ComponentModel
%gac_dll System.Workflow.Runtime
%gac_dll Mono.Profiler.Log
%{_bindir}/mono-hang-watchdog
%files devel
%{_sysconfdir}/pki/mono/
@ -674,8 +627,10 @@ rm %{buildroot}%{_bindir}/mono-find-provides
%mono_bin mkbundle
%mono_bin makecert
%mono_bin mono-cil-strip
%{_bindir}/mono-find-provides
%{_bindir}/mono-find-requires
%{_bindir}/monodis
%{_bindir}/monolinker
%mono_bin monolinker
%mono_bin mono-shlib-cop
%mono_bin mono-xmltool
%mono_bin monop
@ -759,21 +714,10 @@ rm %{buildroot}%{_bindir}/mono-find-provides
%{_libdir}/pkgconfig/wcf.pc
%{_libdir}/pkgconfig/xbuild12.pc
%{_includedir}/mono-2.0/mono/jit/jit.h
%{_includedir}/mono-2.0/mono/jit/mono-private-unstable.h
%{_includedir}/mono-2.0/mono/metadata/*.h
%{_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
%if 0%{?el7}%{?el8} == 0
%{_rpmconfigdir}/mono-find-*
%{_fileattrsdir}/mono.attr
%endif
%{_bindir}/aprofutil
%mono_bin aprofutil
%{_mandir}/man1/aprofutil.1.gz
%files locale-extras
%gac_dll I18N.CJK
%gac_dll I18N.MidEast
@ -931,7 +875,6 @@ rm %{buildroot}%{_bindir}/mono-find-provides
%endif
%mono_bin mdoc
%{_bindir}/mod
%{_bindir}/mdoc
%{_bindir}/mdoc-*
%{_bindir}/mdass*
%{_bindir}/mdval*
@ -946,143 +889,6 @@ rm %{buildroot}%{_bindir}/mono-find-provides
%files complete
%changelog
* Tue Nov 11 2025 Cristian Le <git@lecris.dev> - 6.14.1-2
- Allow to build with CMake 4.0 (rhbz#2380917)
* Sat Nov 08 2025 Timotheus Pokorra <timotheus.pokorra@solidcharity.com> - 6.14.1-1
- Upgrade to Mono 6.14.1
* Thu Jul 24 2025 Fedora Release Engineering <releng@fedoraproject.org> - 6.12.0-21
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Wed Jul 23 2025 Frantisek Krenzelok <fkrenzel@redhat.com> - 6.12.0-20
- Change the certificate bundle used to popule Mono certificate store
- https://fedoraproject.org/wiki/Changes/dropingOfCertPemFile
* Fri Jan 17 2025 Fedora Release Engineering <releng@fedoraproject.org> - 6.12.0-19
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Thu Jul 18 2024 Fedora Release Engineering <releng@fedoraproject.org> - 6.12.0-18
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Fri Apr 12 2024 Jonas Özbay <jo.spam@gmx.net> - 6.12.0-17
- Correct the selection of alloc/free functions for zlib. (as in PR #21759 upstream)
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 6.12.0-16
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 6.12.0-15
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Sat Dec 9 2023 Florian Weimer <fweimer@redhat.com> - 6.12.0-14
- Fix C compatibility issue in the configure script
* Sat Aug 12 2023 Timotheus Pokorra <timotheus.pokorra@solidcharity.com> - 6.12.0-13
- Upgrade to Mono 6.12.0.199
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 6.12.0-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 6.12.0-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Tue Dec 27 2022 msuchy <msuchy@redhat.com> - 6.12.0-10
- Migrate to SPDX license
* 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
- 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
- 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
- Ship libMonoSupportW.so
* Tue Aug 11 2020 Jeff Law <law@redhat.com> - 6.8.0-5
- Disable LTO on ppc64le
* 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
* Mon Feb 03 2020 Robert-André Mauchin <zebob.m@gmail.com> - 6.6.0-5
- Reenable mdoc build (#1797360)
* Mon Feb 03 2020 Timotheus Pokorra <timotheus.pokorra@solidcharity.com> - 6.6.0-4
- drop more bash scripts for mdoc, because mdoc does not build with mcs anymore
* Mon Feb 03 2020 Timotheus Pokorra <timotheus.pokorra@solidcharity.com> - 6.6.0-3
- drop bash script for mdoc, because mdoc does not build with mcs anymore
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 6.6.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Mon Jan 20 2020 Timotheus Pokorra <timotheus.pokorra@solidcharity.com> - 6.6.0-1
- build again without bootstrap
* Sat Jan 18 2020 Timotheus Pokorra <timotheus.pokorra@solidcharity.com> - 6.6.0-0
- upgrade to Mono 6.6.0.161, with a bootstrap build
* Sun Oct 13 2019 Peter Oliver <rpm@mavit.org.uk> - 5.20.1-1
- Post script must belong to a subpackage, since there is no main package.
* Wed Aug 07 2019 Timotheus Pokorra <timotheus.pokorra@solidcharity.com> - 5.20.1-1
- build again without bootstrap
* Tue Aug 06 2019 Timotheus Pokorra <timotheus.pokorra@solidcharity.com> - 5.20.1-0
- upgrade to Mono 5.20.1.34, with a bootstrap build
* Tue Jul 30 2019 Tom Callaway <spot@fedoraproject.org> - 5.18.1-10
- add rpm helper scripts (formerly in rpm-build)
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 5.18.1-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Wed Jul 17 2019 Timotheus Pokorra <timotheus.pokorra@solidcharity.com> - 5.18.1-8
- upgrade to Mono 5.18.1.28
* Tue May 14 2019 Timotheus Pokorra <timotheus.pokorra@solidcharity.com> - 5.18.1-7
- adding link 4.0-api, fixes bug 1704861

View file

@ -1 +1 @@
SHA512 (mono-6.14.1.tar.xz) = c16a2ecbfce93db20a7a6d11b6406c8764f5694355c1ce82081399cd7ab6d8b22e7f8fb21f7af78967b34ef54dcb682917b8cf22d61f1b72be996d1a42e9f1b9
SHA512 (mono-5.18.1.3.tar.bz2) = 7e43d8ebaeb8d355a019606434559f592da6e01124cf2f53f434c8941765a985d2d8c959f8b2aac2ae68b0fa6f549ee368e1ded422f26fc457f929ce3a3767ed