diff --git a/_g_boolean_expr.patch b/_g_boolean_expr.patch deleted file mode 100644 index 6fa345a..0000000 --- a/_g_boolean_expr.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: mono/metadata/object-internals.h -=================================================================== ---- mono/metadata/object-internals.h (revision 153372) -+++ mono/metadata/object-internals.h (revision 153373) -@@ -27,7 +27,7 @@ - */ - #ifdef _G_BOOLEAN_EXPR - #undef _G_BOOLEAN_EXPR --#define _G_BOOLEAN_EXPR(expr) (gsize)(expr) -+#define _G_BOOLEAN_EXPR(expr) ((gsize)(expr) != 0) - #endif - - #if 1 diff --git a/mono-2.6.1.tar.bz2 b/mono-2.6.1.tar.bz2 new file mode 100644 index 0000000..fad9bb1 --- /dev/null +++ b/mono-2.6.1.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6bd6cc59b740bb3a971a6315f3a85fdfdf5cf1e94545e915ba96c3ea7224baa3 +size 27644697 diff --git a/mono-2.6.3.tar.bz2 b/mono-2.6.3.tar.bz2 deleted file mode 100644 index cb58f8d..0000000 --- a/mono-2.6.3.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:623b0666c172dac82eeab54eb2d1bebcb2d179c18e01fa0128c1b48536de3164 -size 27760890 diff --git a/mono-cleanup_crash.patch b/mono-cleanup_crash.patch new file mode 100644 index 0000000..412a30f --- /dev/null +++ b/mono-cleanup_crash.patch @@ -0,0 +1,28 @@ +--- mono/metadata/domain.c ++++ mono/metadata/domain.c +@@ -1907,6 +1907,12 @@ + domain->type_init_exception_hash = NULL; + } + ++ /* must do this early as it accesses fields and types */ ++ if (domain->special_static_fields) { ++ mono_alloc_special_static_data_free (domain->special_static_fields); ++ g_hash_table_destroy (domain->special_static_fields); ++ domain->special_static_fields = NULL; ++ } + for (tmp = domain->domain_assemblies; tmp; tmp = tmp->next) { + MonoAssembly *ass = tmp->data; + mono_trace (G_LOG_LEVEL_INFO, MONO_TRACE_ASSEMBLY, "Unloading domain %s %p, assembly %s %p, refcount=%d\n", domain->friendly_name, domain, ass->aname.name, ass, ass->ref_count); +@@ -1929,12 +1935,6 @@ + domain->null_reference_ex = NULL; + domain->stack_overflow_ex = NULL; + domain->entry_assembly = NULL; +- /* must do this early as it accesses fields and types */ +- if (domain->special_static_fields) { +- mono_alloc_special_static_data_free (domain->special_static_fields); +- g_hash_table_destroy (domain->special_static_fields); +- domain->special_static_fields = NULL; +- } + + g_free (domain->friendly_name); + domain->friendly_name = NULL; diff --git a/mono-core.changes b/mono-core.changes index 8a6ea1d..994ed29 100644 --- a/mono-core.changes +++ b/mono-core.changes @@ -1,10 +1,3 @@ -------------------------------------------------------------------- -Tue Mar 2 20:12:24 UTC 2010 - ajorgensen@novell.com - -- Update to 2.6.3 - * http://www.mono-project.com/Release_Notes_Mono_2.6.3 -- Obsoleted patches - ------------------------------------------------------------------- Mon Mar 1 17:12:06 CET 2010 - ro@suse.de diff --git a/mono-core.spec b/mono-core.spec index 13136b5..4c43ae4 100644 --- a/mono-core.spec +++ b/mono-core.spec @@ -20,15 +20,16 @@ %{!?ext_man: %define ext_man .gz} Name: mono-core -License: LGPL v2.1 only +License: LGPLv2.1 Group: Development/Languages/Mono Summary: A .NET Runtime Environment Url: http://go-mono.org/ -Version: 2.6.3 -Release: 1 +Version: 2.6.1 +Release: 2 BuildRoot: %{_tmppath}/%{name}-%{version}-build Source0: mono-%{version}.tar.bz2 -Patch0: _g_boolean_expr.patch +Patch0: xen-aot.patch +Patch1: mono-cleanup_crash.patch ExclusiveArch: %ix86 x86_64 ppc ppc64 hppa armv4l sparc s390 ia64 s390x BuildRoot: %{_tmppath}/%{name}-%{version}-build Provides: mono = %{version}-%{release} @@ -273,7 +274,7 @@ fi %postun -p /sbin/ldconfig %package -n mono-jscript -License: LGPL v2.1 only +License: LGPLv2.1 Summary: JScript .NET support for Mono Group: Development/Languages/Mono Requires: mono-core == %version-%release @@ -300,7 +301,7 @@ Authors: %_prefix/lib/mono/2.0/Microsoft.JScript.dll %package -n mono-locale-extras -License: LGPL v2.1 only +License: LGPLv2.1 Summary: Extra locale information Group: Development/Languages/Mono Requires: mono-core == %version-%release @@ -338,7 +339,7 @@ Authors: %_prefix/lib/mono/2.0/I18N.Other.dll %package -n mono-data -License: LGPL v2.1 only +License: LGPLv2.1 Summary: Database connectivity for Mono Group: Development/Languages/Mono Requires: mono-core == %version-%release @@ -403,7 +404,7 @@ Authors: %_prefix/lib/mono/2.0/System.Data.DataSetExtensions.dll %package -n mono-winforms -License: LGPL v2.1 only +License: LGPLv2.1 Summary: Mono's Windows Forms implementation Group: Development/Languages/Mono Requires: mono-core == %version-%release @@ -447,7 +448,7 @@ Authors: %_prefix/lib/mono/gac/Mono.WebBrowser %package -n ibm-data-db2 -License: LGPL v2.1 only +License: LGPLv2.1 Summary: Database connectivity for DB2 Group: Development/Languages/Mono Requires: mono-core == %version-%release @@ -476,7 +477,7 @@ Authors: %_prefix/lib/mono/2.0/IBM.Data.DB2.dll %package -n mono-extras -License: LGPL v2.1 only +License: LGPLv2.1 Summary: Extra packages Group: Development/Languages/Mono Requires: mono-core == %version-%release @@ -516,9 +517,7 @@ Authors: %_prefix/lib/mono/2.0/System.Management.dll %_prefix/lib/mono/gac/RabbitMQ.Client %_prefix/lib/mono/1.0/RabbitMQ.Client.dll -%_prefix/lib/mono/1.0/RabbitMQ.Client.Apigen.exe* %_prefix/lib/mono/2.0/RabbitMQ.Client.dll -%_prefix/lib/mono/2.0/RabbitMQ.Client.Apigen.exe* %_prefix/lib/mono/gac/System.Messaging %_prefix/lib/mono/1.0/System.Messaging.dll %_prefix/lib/mono/2.0/System.Messaging.dll @@ -539,7 +538,7 @@ Authors: %_prefix/lib/mono/2.0/Microsoft.Vsa.dll %package -n mono-data-sqlite -License: LGPL v2.1 only +License: LGPLv2.1 Summary: Database connectivity for Mono Group: Development/Languages/Mono Requires: mono-core == %version-%release @@ -574,7 +573,7 @@ Authors: %_prefix/lib/mono/2.0/Mono.Data.Sqlite.dll %package -n mono-data-sybase -License: LGPL v2.1 only +License: LGPLv2.1 Summary: Database connectivity for Mono Group: Development/Languages/Mono Requires: mono-core == %version-%release @@ -774,7 +773,7 @@ Authors: %config %_sysconfdir/mono/2.0/Browsers %package -n mono-data-oracle -License: LGPL v2.1 only +License: LGPLv2.1 Summary: Database connectivity for Mono Group: Development/Languages/Mono Requires: mono-core == %version-%release @@ -804,7 +803,7 @@ Authors: %_prefix/lib/mono/2.0/System.Data.OracleClient.dll %package -n mono-data-postgresql -License: LGPL v2.1 only +License: LGPLv2.1 Summary: Database connectivity for Mono Group: Development/Languages/Mono Requires: mono-core == %version-%release @@ -834,7 +833,7 @@ Authors: %_prefix/lib/mono/2.0/Npgsql.dll %package -n bytefx-data-mysql -License: LGPL v2.1 only +License: LGPLv2.1 Summary: Database connectivity for Mono Group: Development/Languages/Mono Requires: mono-core == %version-%release @@ -864,13 +863,13 @@ Authors: %_prefix/lib/mono/2.0/ByteFX.Data.dll %package -n mono-nunit -License: LGPL v2.1 only +License: LGPLv2.1 Summary: NUnit Testing Framework Group: Development/Languages/Mono Requires: mono-core == %version-%release %package -n mono-data-firebird -License: LGPL v2.1 only +License: LGPLv2.1 Summary: Database connectivity for Mono Group: Development/Languages/Mono Requires: mono-core == %version-%release @@ -942,7 +941,7 @@ Authors: %_libdir/pkgconfig/mono-nunit.pc %package -n mono-devel -License: LGPL v2.1 only +License: LGPLv2.1 Summary: Mono development tools Group: Development/Languages/Mono Requires: mono-core == %version-%release @@ -1144,7 +1143,7 @@ Authors: # yet gzipped %package -n monodoc-core -License: LGPL v2.1 only +License: LGPLv2.1 Summary: Monodoc - Documentation tools for C# code Group: Development/Tools/Other Provides: monodoc @@ -1186,7 +1185,7 @@ Monodoc-core contains documentation tools for C#. %{_mandir}/man5/mdoc.5%ext_man %package -n mono-complete -License: LGPL v2.1 only +License: LGPLv2.1 Summary: A .NET Runtime Environment Group: Development/Languages/Mono Requires: bytefx-data-mysql = %version-%release @@ -1232,6 +1231,7 @@ Authors: %prep %setup -q -n mono-%{version} %patch0 +%patch1 %build # These are only needed if there are patches to the runtime diff --git a/xen-aot.patch b/xen-aot.patch new file mode 100644 index 0000000..09e6fe2 --- /dev/null +++ b/xen-aot.patch @@ -0,0 +1,28 @@ +Index: mono/mini/mini-amd64.c +=================================================================== +--- mono/mini/mini-amd64.c (revision 149672) ++++ mono/mini/mini-amd64.c (revision 149673) +@@ -2558,11 +2558,6 @@ + /* These methods are allocated using malloc */ + near_call = FALSE; + +- if (cfg->compile_aot) { +- near_call = TRUE; +- no_patch = TRUE; +- } +- + #ifdef MONO_ARCH_NOMAP32BIT + near_call = FALSE; + #endif +@@ -2571,6 +2566,11 @@ + if (optimize_for_xen) + near_call = FALSE; + ++ if (cfg->compile_aot) { ++ near_call = TRUE; ++ no_patch = TRUE; ++ } ++ + if (near_call) { + /* + * Align the call displacement to an address divisible by 4 so it does