Compare commits
35 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
96396e2005 | ||
|
fbc6b193ae | ||
|
ba106d4d5e | ||
|
15391c61f9 | ||
|
e1543e3486 | ||
|
1b7aefe979 | ||
|
274112ffb8 | ||
|
724d8c6fd9 | ||
|
4273aac931 | ||
|
7cb6f7a424 | ||
|
9a1cb2a23a | ||
|
6c0f8dd86e | ||
|
3444b59335 | ||
|
5befd2eb30 | ||
|
4f8062c20d | ||
|
246fff2467 | ||
|
0f81111850 | ||
|
15530f7a74 | ||
|
93230c36af | ||
|
11306815fb | ||
|
20b54d5424 | ||
|
7bb159e055 | ||
|
802ab4c9c4 | ||
|
73ec5645b6 | ||
|
6879002404 | ||
|
f560557b99 | ||
|
a308070944 | ||
|
1776c7c94e | ||
|
40d6b775c7 | ||
|
2ce53fc674 | ||
|
d28e945f19 | ||
|
33a33ba093 | ||
|
d044c8ab22 | ||
|
a762990836 | ||
|
305ea8ee10 |
1
.gitignore
vendored
1
.gitignore
vendored
@ -1,2 +1,3 @@
|
||||
mono-*.tar.bz2
|
||||
mono-*.src.rpm
|
||||
mono-*.tar.xz
|
||||
|
@ -0,0 +1,41 @@
|
||||
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
|
||||
|
89
0001-Reenable-mdoc.exe-build.patch
Normal file
89
0001-Reenable-mdoc.exe-build.patch
Normal file
@ -0,0 +1,89 @@
|
||||
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é 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 92e8f2adbe5..88bddb66268 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
|
||||
-
|
||||
csproj-local 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 e3c5a321d1a..00820361636 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 \
|
||||
--
|
||||
2.24.1
|
||||
|
301
0001-Replace-new-Csharp-features-with-old-ones.patch
Normal file
301
0001-Replace-new-Csharp-features-with-old-ones.patch
Normal file
@ -0,0 +1,301 @@
|
||||
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
|
||||
|
@ -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
|
||||
@@ -6239,9 +6239,6 @@ namespace System.Windows.Forms {
|
||||
atoms [0] = 1; // Version 1
|
||||
atoms [1] = 1; // we want to be mapped
|
||||
@@ -6219,9 +6219,6 @@ namespace System.Windows.Forms {
|
||||
atoms [0] = (IntPtr)1; // Version 1
|
||||
atoms [1] = (IntPtr)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);
|
||||
|
@ -1,11 +0,0 @@
|
||||
--- 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
|
@ -1,53 +0,0 @@
|
||||
--- 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)
|
@ -6,6 +6,6 @@
|
||||
|
||||
+#define ARCH_MIN_MS_BLOCK_SIZE (64*1024)
|
||||
+#define ARCH_MIN_MS_BLOCK_SIZE_SHIFT 16
|
||||
#ifdef __linux__
|
||||
#define REDZONE_SIZE 0
|
||||
#elif defined(__APPLE__)
|
||||
#if defined(__APPLE__)
|
||||
#define REDZONE_SIZE 128
|
||||
#else
|
15
mono-6.6.0-fix-multi-arch-issue.patch
Normal file
15
mono-6.6.0-fix-multi-arch-issue.patch
Normal file
@ -0,0 +1,15 @@
|
||||
--- 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
|
@ -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,25 +10,11 @@
|
||||
@@ -10,29 +10,11 @@
|
||||
$(MAKE) -C ../../../external/binary-reference-assemblies CSC="MONO_PATH=$(abspath $(topdir)/class/lib/$(BUILD_TOOLS_PROFILE)) $(INTERNAL_CSC)"
|
||||
|
||||
install-local:
|
||||
@ -14,6 +14,9 @@
|
||||
- $(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
|
||||
@ -23,6 +26,7 @@
|
||||
- $(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
|
||||
@ -31,31 +35,17 @@
|
||||
|
||||
$(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
|
||||
@@ -40,7 +40,7 @@
|
||||
@@ -43,7 +43,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 $(STD_TARGETS:=-profiles)
|
||||
all-profiles $(STD_TARGETS:=-profiles): %-profiles: profiles-do--%
|
||||
.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--%
|
||||
@@ -65,7 +65,6 @@
|
||||
_boot_ = all clean install
|
||||
$(_boot_:%=profile-do--xbuild_14--%): profile-do--xbuild_14--%: profile-do--net_4_x--%
|
||||
@ -66,9 +56,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
|
||||
@@ -19,7 +19,6 @@
|
||||
@@ -18,7 +18,6 @@
|
||||
PLATFORMS = macos linux win32 unix
|
||||
PROFILES = \
|
||||
basic \
|
||||
build \
|
||||
- binary_reference_assemblies \
|
||||
net_4_x \
|
||||
@ -76,7 +66,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
|
||||
@@ -80,7 +80,7 @@
|
||||
@@ -90,7 +90,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
|
@ -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
|
||||
@@ -40,15 +40,19 @@
|
||||
@@ -42,11 +42,13 @@
|
||||
|
||||
install-local: install-prototypes
|
||||
install-local:
|
||||
$(MKINSTALLDIRS) $(TARGET_DIR)
|
||||
+ifndef MCS_MODE
|
||||
$(INSTALL_LIB) $(ROSLYN_FILES_FOR_MONO) $(TARGET_DIR)
|
||||
@ -12,11 +12,5 @@
|
||||
(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
|
||||
|
185
mono.spec
185
mono.spec
@ -1,8 +1,9 @@
|
||||
%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
|
||||
@ -15,20 +16,20 @@
|
||||
%global _monogacdir %{_monodir}/gac
|
||||
%endif
|
||||
|
||||
%if 0%{?rhel}%{?el6}%{?el7} || 0%{?bootstrap}
|
||||
%if 0%{?rhel}%{?el6}%{?el7} || %{with bootstrap}
|
||||
# to resolve: "ERROR: No build ID note found"
|
||||
%undefine _missing_build_ids_terminate_build
|
||||
%endif
|
||||
|
||||
%global xamarinrelease 34
|
||||
%global xamarinrelease 182
|
||||
Name: mono
|
||||
Version: 5.20.1
|
||||
Release: 3%{?dist}
|
||||
Version: 6.12.0
|
||||
Release: 9%{?dist}
|
||||
Summary: Cross-platform, Open Source, .NET development framework
|
||||
|
||||
License: MIT
|
||||
URL: http://www.mono-project.com
|
||||
Source0: http://download.mono-project.com/sources/mono/mono-%{version}.%{xamarinrelease}.tar.bz2
|
||||
Source0: http://download.mono-project.com/sources/mono/mono-%{version}.%{xamarinrelease}.tar.xz
|
||||
# This key was generated by Tom "spot" Callaway <tcallawa@redhat.com> on Dec 1, 2009
|
||||
# by running the following command:
|
||||
# sn -k mono.snk
|
||||
@ -39,18 +40,26 @@ Source1: mono.snk
|
||||
Source2: mono-find-provides
|
||||
Source3: mono-find-requires
|
||||
Source4: mono.attr
|
||||
Patch0: mono-5.10.0-ignore-reference-assemblies.patch
|
||||
Patch0: mono-6.6.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-4.6.1-aarch64.patch
|
||||
Patch5: mono-5.18.0-roslyn-binaries.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-use-v471.patch
|
||||
Patch8: mono-5.18.0-reference-assemblies-fix.patch
|
||||
Patch9: mono-5.18.0-sharpziplib-parent-path-traversal.patch
|
||||
Patch10: mono-5.18.1-python3.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
|
||||
|
||||
BuildRequires: make
|
||||
BuildRequires: bison
|
||||
BuildRequires: python%{python3_pkgversion}
|
||||
BuildRequires: cmake
|
||||
@ -65,14 +74,12 @@ BuildRequires: perl-Getopt-Long
|
||||
|
||||
# Yes, mono actually depends on itself, because
|
||||
# we deleted the bootstrapping binaries. If you
|
||||
# need to bootstrap mono, comment out this BuildRequires
|
||||
# and don't delete the binaries in %%prep.
|
||||
# need to bootstrap mono, set _with_bootstrap at the top
|
||||
# which results in not deleting the binaries in %%prep.
|
||||
|
||||
%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
|
||||
%if %{without bootstrap}
|
||||
BuildRequires: mono-core >= 6.12
|
||||
BuildRequires: mono-devel >= 6.12
|
||||
%endif
|
||||
|
||||
# JIT only available on these:
|
||||
@ -91,7 +98,7 @@ metadata access libraries.
|
||||
%package core
|
||||
Summary: The Mono CIL runtime, suitable for running .NET code
|
||||
Requires: libgdiplus
|
||||
#dependency requiered for install
|
||||
#dependency required 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
|
||||
@ -175,7 +182,7 @@ assemblies: Microsoft.Vsa,
|
||||
System.Configuration.Install, System.Management, System.Messaging.
|
||||
|
||||
%package reactive
|
||||
License: MIT License (or similar) ; Apache License 2.0
|
||||
License: MIT and ASL 2.0
|
||||
Summary: Reactive Extensions for Mono core libraries
|
||||
Requires: mono-core = %{version}-%{release}
|
||||
|
||||
@ -184,7 +191,7 @@ Reactive Extensions for Mono, this packages don't depend on
|
||||
desktop-specific features.
|
||||
|
||||
%package reactive-winforms
|
||||
License: MIT License (or similar) ; Apache License 2.0
|
||||
License: MIT and ASL 2.0
|
||||
Summary: Reactive Extensions for Mono desktop-specific libraries
|
||||
Requires: mono-core = %{version}-%{release}
|
||||
Requires: mono-reactive = %{version}-%{release}
|
||||
@ -336,13 +343,26 @@ 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
|
||||
|
||||
# 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.6
|
||||
sed -i 's|TARGET_NET_REFERENCE = v4.6|TARGET_NET_REFERENCE = $(BOOTSTRAP_BIN_PROFILE)|g' mcs/tools/upload-to-sentry/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
|
||||
|
||||
# Remove hardcoded lib directory for libMonoPosixHelper.so from the config
|
||||
sed -i 's|$mono_libdir/||g' data/config.in
|
||||
|
||||
%if 0%{bootstrap}
|
||||
%if %{with 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
|
||||
@ -356,6 +376,11 @@ 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')
|
||||
@ -370,6 +395,7 @@ 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
|
||||
@ -378,6 +404,7 @@ 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
|
||||
@ -425,9 +452,11 @@ 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 csc
|
||||
# remove wrapper scripts for roslyn-binaries
|
||||
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
|
||||
@ -449,22 +478,30 @@ rm -rf %{buildroot}/usr/lib/debug/usr/lib64/libmono-btls-shared.so-*.debug
|
||||
|
||||
# drop other debug files as well
|
||||
rm -rf %{buildroot}/usr/lib/debug/usr/lib64/libmono-native.so*.debug
|
||||
rm -rf %{buildroot}/usr/lib/debug/usr/bin/mono-hang-watchdog-*.debug
|
||||
|
||||
# create a symbolic link so that Fedora packages targetting Framework 4.5 will still build
|
||||
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}/usr/lib/mono && 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}%{_prefix}/lib/rpm/fileattrs/
|
||||
install -p -m755 %{SOURCE2} %{SOURCE3} %{buildroot}%{_prefix}/lib/rpm/
|
||||
install -p -m644 %{SOURCE4} %{buildroot}%{_prefix}/lib/rpm/fileattrs/
|
||||
%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
|
||||
|
||||
%find_lang mcs
|
||||
|
||||
%post core
|
||||
%{?ldconfig}
|
||||
cert-sync /etc/pki/tls/certs/ca-bundle.crt
|
||||
cert-sync --quiet /etc/pki/tls/certs/ca-bundle.crt
|
||||
|
||||
%ldconfig_postun
|
||||
|
||||
@ -482,7 +519,6 @@ cert-sync /etc/pki/tls/certs/ca-bundle.crt
|
||||
%{_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
|
||||
@ -494,11 +530,9 @@ cert-sync /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
|
||||
@ -605,6 +639,7 @@ cert-sync /etc/pki/tls/certs/ca-bundle.crt
|
||||
%gac_dll System.Workflow.ComponentModel
|
||||
%gac_dll System.Workflow.Runtime
|
||||
%gac_dll Mono.Profiler.Log
|
||||
%{_bindir}/mono-hang-watchdog
|
||||
|
||||
%files devel
|
||||
%{_sysconfdir}/pki/mono/
|
||||
@ -635,10 +670,8 @@ cert-sync /etc/pki/tls/certs/ca-bundle.crt
|
||||
%mono_bin mkbundle
|
||||
%mono_bin makecert
|
||||
%mono_bin mono-cil-strip
|
||||
%{_bindir}/mono-find-provides
|
||||
%{_bindir}/mono-find-requires
|
||||
%{_bindir}/monodis
|
||||
%mono_bin monolinker
|
||||
%{_bindir}/monolinker
|
||||
%mono_bin mono-shlib-cop
|
||||
%mono_bin mono-xmltool
|
||||
%mono_bin monop
|
||||
@ -725,8 +758,16 @@ cert-sync /etc/pki/tls/certs/ca-bundle.crt
|
||||
%{_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
|
||||
%{_prefix}/lib/rpm/mono-find-*
|
||||
%{_prefix}/lib/rpm/fileattrs/mono.attr
|
||||
%endif
|
||||
|
||||
%{_bindir}/aprofutil
|
||||
%mono_bin aprofutil
|
||||
%{_mandir}/man1/aprofutil.1.gz
|
||||
|
||||
%files locale-extras
|
||||
%gac_dll I18N.CJK
|
||||
@ -885,6 +926,7 @@ cert-sync /etc/pki/tls/certs/ca-bundle.crt
|
||||
%endif
|
||||
%mono_bin mdoc
|
||||
%{_bindir}/mod
|
||||
%{_bindir}/mdoc
|
||||
%{_bindir}/mdoc-*
|
||||
%{_bindir}/mdass*
|
||||
%{_bindir}/mdval*
|
||||
@ -899,10 +941,83 @@ cert-sync /etc/pki/tls/certs/ca-bundle.crt
|
||||
%files complete
|
||||
|
||||
%changelog
|
||||
* Fri Aug 21 2020 François Cami <fcami@redhat.com> - 5.20.1-3
|
||||
* 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
|
||||
|
||||
* Sun Oct 13 2019 Peter Oliver <rpm@mavit.org.uk> - 5.20.1-2
|
||||
* 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
|
||||
|
2
sources
2
sources
@ -1 +1 @@
|
||||
SHA512 (mono-5.20.1.34.tar.bz2) = 08de875c2d5431c85a4a6d0a0938539750ae30c5cd1af1e50bd37ff5c31c1cfa87e2e757f97fb47fb3a23a8646c3455fe9faf86e4ec2c04264c751a776a166d3
|
||||
SHA512 (mono-6.12.0.182.tar.xz) = 5f0f02f2adf89785af8f620c16d69fc97b87c9b39133286e6f1237a397f4842ea8d26802d9f802f8798a86540dc1bc3b5201428f218c78fbcf91f0d575cde512
|
||||
|
Loading…
Reference in New Issue
Block a user