pkgsrc-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: pkgsrc/lang/mono6
Module Name: pkgsrc
Committed By: ryoon
Date: Wed Feb 12 15:25:16 UTC 2020
Modified Files:
pkgsrc/lang/mono6: Makefile PLIST distinfo
pkgsrc/lang/mono6/patches: patch-mono_metadata_mono-config.c
patch-mono_utils_mono-utils-debug.c patch-support_minizip_ioapi.c
Added Files:
pkgsrc/lang/mono6/patches:
patch-external_corert_src_Native_gc_env_gcenv.structs.h
patch-libgc_pthread__stop__world.c patch-libgc_pthread__support.c
patch-mono_metadata_w32mutex-unix.c
patch-mono_utils_mono-threads-posix.c
Removed Files:
pkgsrc/lang/mono6/patches: patch-configure.ac
patch-mcs_class_corlib_Test_Mono_MonoNativePlatformType.cs
patch-mono_metadata_threads.c patch-mono_native_Makefile.am
patch-mono_native_mono-native-platform.h
Log Message:
mono6: Update to 6.8.0.105
Changelog:
Highlights
Various Bugfixes
In Depth
Runtime
WebAssembly
We continue to work on making our WebAssembly support better. Various sets of issues have been resolved in this release and general performance and feature work is happening as well.
Community improvements for AIX/PASE and Haiku
The ports for these systems received a bunch of improvements from community contributor Calvin Buckley (@NattyNarwhal).
Class Libraries
CoreFX integration
We continued to replace some of our classes with the implementation from CoreFX to improve performance and compatibility with .NET.
In this release we tightened up our networking with a few bug fixes.
Tools
Resolved Issues
7377 [Mono.Debugger.Soft] Connections are not properly closed
10641 New arm64_32 architecture (watchOS 5) [arm64_32] make “Debug Mode” work on Watch series 4 with –interpreter
12421 Task calls SynchronizationContext.Post on cancelling
12586 DataContractSerializer is not available
12917 [Blazor] IL Linker not working correctly with IQueryable extensions
14080 condition ‘ji’ not met, with ‘dynamic’ and multithreading
14725 mono 5.20 hangs when called from native thread
14772 Null Pointer Exception after debugger pauses and then continues
15261 [iOS][Tests] There are a number of System.Numeric tests that fail on iOS 32b devices
15262 [iOS][Tests] A number of linq tests fail on iOS 32b devices
15263 [iOS][Tests] A number of tests from Microsoft.CSharp fail on iOS 32b devices.
15307 [iOS][Tests] Several corelib tests crash on iOS32b devices.
15308 [netcore] Make OverlappedTests.PackNegTest Pass
15310 [netcore] Make OverlappedTests.UnPackTest Pass
15646 MERP indefinitely hangs on application quit
15687 [debugger] Update client thread frames after SetIP.
15805 Mono.Net.Security.MonoTlsStream: Crash when stream appears to have already been disposed
15931 1024 hard limit of open file descriptors
15992 Mono crashes during precompiling dll in fullaot mode
15994 Coverity: derefenrecing null in profiler (CID: 1307043) Skip degenerate qsort: num < 2, size == 0, base == 0
15999 [mini] run regression tests with fullaot+llvm
16010 typeof(object).GetMember(“”) does not return an empty array
16024 Native crash in ves_icall_System_Net_Sockets_Socket_Connect_internal
16032 IOException: Sharing violation on path …
16046 [netcore] AOT with unresolved dependencies hits asserts
16122 VS 16.2.0 regression: CopyToAsync from DeflateStream to GzipStream throws NotImplementedException
16172 Interpreter stack size is too large
16192 Embedded Mono hangs when using native threads
16308 Change netcore package to be using release builds
16310 LLVM: ““.AsSpan()[0] doesn’t throw IndexOutOfRangeException
16319 [wasm] Timers do not fire when run inside WebWorkers.
16369 Relocations in .text on arm
16380 [netcore] Regession with AOTed System.Private.CoreLib
16381 [llvm] Assertion: should not be reached at mini-llvm.c:7104
16395 [Mobile] DateTime.Now returns incorrect local time for one hour after entering DST in 39 locales.
16411 JitTests.Float fails on iOS devices in release mode on 2019-08
16415 Timezone data not handled correctly on FreeBSD
16460 System.IO.Path.GetFullPath(“\\.\pipe\pipename”): different results on Mono and .NET
16486 FileSystemEventArgs.FullPath throws ArgumentNullException
16605 make distclean fails after build w/ embedded zlib
16616 [netcore] Vector.CopyTo w/ LLVM emits wrong exception
16626 [WinForms] ControlBox property didn`t hide Close button and icon
16689 [merp] missing data in crashing reporting json native frames
16701 C# REPL Unusable on Mono 6 / Ubuntu 19
16709 Disposing the FileSystemWatcher does not close associated file descriptors
16712 SIGSEGV in mono_class_setup_vtable_general
16742 Date.Time parse issue (year 1948) Avoid creating un-representable DateTime for transition point
16759 Stream.ReadAsync continues on different thread
16803 mono_gc_finalize_notify spinning after process exit
16808 LLVM failed for String.GetHashCode
16819 [coop][interp] mono_threads_enter_gc_safe_region Cannot transition thread 0x1952b000 from STATE_BLOCKING with DO_BLOCKING
16824 Crash when debugging iOS application that throws on DispatchQueue
16864 [arm64_32] fix remaining regression tests
16876 [Wasm] Switch to PNSE FileWatcher & Exclude Tests
16879 [Wasm] Determine if System.Net.Http.UnitTests Failures are Relevant
16918 XmlSerializer Deserializing Property with same name as its enum type no longer works
16943 LLVM: recursive calls have overhead in JIT mode
16950 Starting in Mono 6.0 (2019-02), NotImplementedException prevents using StreamWriter with GZipStream for encodings that use a preamble
16974 File.GetCreationTimeUtc() returns the time last modified, not time created
17004 [merp] crash reports have Darwin kernel version in OSVersion field
17017 Out of bounds unhandled exception
17038 [wasm][xunit tests] RemoteExecutorTests.RemoteInvokeWritesToFile fails
17040 [wasm][xunit tests] System.Net.Security.Tests.SslStreamAlpnTests - MissingMethodException: Default constructor not found
17083 Regression: when debugger encounters a not-unhandled exception Marshalling managed exception contains cut off stacktraces
17133 SystemNative_CopyFile() call to fchmod() introduced in Mono 6.0 is not compatible with the external storage location on some Android OS versions and devices
17139 mono_aot_register_n_debug_info
17278 System.BadImageFormatException when reflecting on BCL shipped with Mono
17334 mono_magic_trampoline being called more than expected
17335 Investigate heavy stack from System_Threading_Interlocked_Exchange_T_REF_T_REF__T_REF
tem.Reflection.Emit + ConstructorInfo doesn’t work as expected
17687 [Regression] Profiler’s calls log SIGABRTs when using GDI+ loader
17718 Delegate does not invoke target virtually
17737 Q: is using loader lock for domain seq_points access correct? (mono runtime) [runtime] Fix locking in mono_get_seq_points ().
17790 [merp] SendMicrosoftTelemetry icall doesn’t do any MERP logging when inducing a Managed Crash
17833 threadpool hang due to unlimited hill climbing
17878 Deadlock in GC during bridge callback from native thread on Android
17924 Mtouch argument interpreter crashes EntityFrameworkCore 3.0 iOS app
17926 [Bug] Segmentation Fault receiving message on WatchOS with debugger attached
17931 Native linking fails for armv7s
18011 [embedding] Chaining Mach exceptions to Mono signals using utility threads
To generate a diff of this commit:
cvs rdiff -u -r1.9 -r1.10 pkgsrc/lang/mono6/Makefile
cvs rdiff -u -r1.3 -r1.4 pkgsrc/lang/mono6/PLIST
cvs rdiff -u -r1.6 -r1.7 pkgsrc/lang/mono6/distinfo
cvs rdiff -u -r1.3 -r0 pkgsrc/lang/mono6/patches/patch-configure.ac \
pkgsrc/lang/mono6/patches/patch-mcs_class_corlib_Test_Mono_MonoNativePlatformType.cs \
pkgsrc/lang/mono6/patches/patch-mono_native_Makefile.am \
pkgsrc/lang/mono6/patches/patch-mono_native_mono-native-platform.h
cvs rdiff -u -r0 -r1.1 \
pkgsrc/lang/mono6/patches/patch-external_corert_src_Native_gc_env_gcenv.structs.h \
pkgsrc/lang/mono6/patches/patch-libgc_pthread__stop__world.c \
pkgsrc/lang/mono6/patches/patch-libgc_pthread__support.c \
pkgsrc/lang/mono6/patches/patch-mono_metadata_w32mutex-unix.c \
pkgsrc/lang/mono6/patches/patch-mono_utils_mono-threads-posix.c
cvs rdiff -u -r1.3 -r1.4 \
pkgsrc/lang/mono6/patches/patch-mono_metadata_mono-config.c
cvs rdiff -u -r1.1 -r0 \
pkgsrc/lang/mono6/patches/patch-mono_metadata_threads.c
cvs rdiff -u -r1.1 -r1.2 \
pkgsrc/lang/mono6/patches/patch-mono_utils_mono-utils-debug.c \
pkgsrc/lang/mono6/patches/patch-support_minizip_ioapi.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: pkgsrc/lang/mono6/Makefile
diff -u pkgsrc/lang/mono6/Makefile:1.9 pkgsrc/lang/mono6/Makefile:1.10
--- pkgsrc/lang/mono6/Makefile:1.9 Thu Jan 9 15:26:36 2020
+++ pkgsrc/lang/mono6/Makefile Wed Feb 12 15:25:15 2020
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.9 2020/01/09 15:26:36 ryoon Exp $
+# $NetBSD: Makefile,v 1.10 2020/02/12 15:25:15 ryoon Exp $
-DISTNAME= mono-6.6.0.161
+DISTNAME= mono-6.8.0.105
CATEGORIES= lang
MASTER_SITES= https://download.mono-project.com/sources/mono/
EXTRACT_SUFX= .tar.xz
Index: pkgsrc/lang/mono6/PLIST
diff -u pkgsrc/lang/mono6/PLIST:1.3 pkgsrc/lang/mono6/PLIST:1.4
--- pkgsrc/lang/mono6/PLIST:1.3 Thu Jan 9 15:26:36 2020
+++ pkgsrc/lang/mono6/PLIST Wed Feb 12 15:25:15 2020
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.3 2020/01/09 15:26:36 ryoon Exp $
+@comment $NetBSD: PLIST,v 1.4 2020/02/12 15:25:15 ryoon Exp $
bin/al
bin/al2
bin/aprofutil
@@ -3167,7 +3167,6 @@ lib/mono/msbuild/Current/bin/Roslyn/Micr
lib/mono/msbuild/Current/bin/Roslyn/Microsoft.CodeAnalysis.VisualBasic.dll
lib/mono/msbuild/Current/bin/Roslyn/Microsoft.CodeAnalysis.dll
lib/mono/msbuild/Current/bin/Roslyn/Microsoft.Managed.Core.targets
-lib/mono/msbuild/Current/bin/Roslyn/Microsoft.Managed.EditorConfig.targets
lib/mono/msbuild/Current/bin/Roslyn/Microsoft.VisualBasic.Core.targets
lib/mono/msbuild/Current/bin/Roslyn/System.Collections.Immutable.dll
lib/mono/msbuild/Current/bin/Roslyn/System.Memory.dll
Index: pkgsrc/lang/mono6/distinfo
diff -u pkgsrc/lang/mono6/distinfo:1.6 pkgsrc/lang/mono6/distinfo:1.7
--- pkgsrc/lang/mono6/distinfo:1.6 Wed Feb 12 13:43:31 2020
+++ pkgsrc/lang/mono6/distinfo Wed Feb 12 15:25:15 2020
@@ -1,10 +1,9 @@
-$NetBSD: distinfo,v 1.6 2020/02/12 13:43:31 kamil Exp $
+$NetBSD: distinfo,v 1.7 2020/02/12 15:25:15 ryoon Exp $
-SHA1 (mono-6.6.0.161.tar.xz) = e67eb01dc72db45bcc40169c65b54f17f64ddadb
-RMD160 (mono-6.6.0.161.tar.xz) = 36f11f69fe7530ccf2c745fee787e48c6e737f32
-SHA512 (mono-6.6.0.161.tar.xz) = 0b0c72daef9e1c10c0d566292997d4a923766390793ec1196a063b885e853b47a12503238632879cf7397f03b34909137e24c53db9300a4f209164e973284186
-Size (mono-6.6.0.161.tar.xz) = 241179396 bytes
-SHA1 (patch-configure.ac) = ef4a5ad6519f0333c71825b41d52c73a548c9edd
+SHA1 (mono-6.8.0.105.tar.xz) = e39aa0ac15b3b73ecf0767462798a5acde0aed79
+RMD160 (mono-6.8.0.105.tar.xz) = 5a84c75f941d5a2a645999e13da8458fc87d3bac
+SHA512 (mono-6.8.0.105.tar.xz) = 8207082f6c538037a17dba5e22576d8e9b0aac946df270ff34daad0857e7b1cfd71c8cf4851e74dd5338397c9587540f11b23e71776bca6dc2a1b89dbed2fd7e
+Size (mono-6.8.0.105.tar.xz) = 243441900 bytes
SHA1 (patch-data_Makefile.am) = 535480855e413750d5b6cab6351b1683ac911246
SHA1 (patch-data_net__2__0_Browsers_Makefile.am) = 847fa7f5a54e7583a87c40749efe5a99e513c3c9
SHA1 (patch-data_net__2__0_Makefile.am) = dffb23423381a9031587536ee5de2b34610329ee
@@ -12,15 +11,16 @@ SHA1 (patch-data_net__4__0_Browsers_Make
SHA1 (patch-data_net__4__0_Makefile.am) = 7c0fa175047f01a556f61503b2fcfabdedd2c606
SHA1 (patch-data_net__4__5_Browsers_Makefile.am) = 80bd57a2ac3fc95adef18acd9cfd7744ca112b01
SHA1 (patch-data_net__4__5_Makefile.am) = d7591e835bfdd27fa0fba4b669b778924c811be4
-SHA1 (patch-mcs_class_corlib_Test_Mono_MonoNativePlatformType.cs) = 226b2638ba0106539e8ab5d9698803c6421147f0
+SHA1 (patch-external_corert_src_Native_gc_env_gcenv.structs.h) = 91b37d93c1c3aadcdb383c443142fe28f50ad8e6
+SHA1 (patch-libgc_pthread__stop__world.c) = f5a12dc3f453136dabc0b93d57caa155a420ab0d
+SHA1 (patch-libgc_pthread__support.c) = b4fcf5ab1f5d5d06739891c1614ff870b8e4a4c5
SHA1 (patch-mono_eglib_giconv.c) = 04d2559d3868605194efd6267da010870f53d961
SHA1 (patch-mono_metadata_icall.c) = b326c16e9aa8f9ee154d937128e5e09fd31b235a
-SHA1 (patch-mono_metadata_mono-config.c) = 510fc7a2dde144f593ebccb0258c3753dfe5ce52
-SHA1 (patch-mono_metadata_threads.c) = e1432cced0dafce1a2712869ce79e12a2ab35973
-SHA1 (patch-mono_native_Makefile.am) = 659ec73775cc90d54f41e130cc7eba75150eafbe
-SHA1 (patch-mono_native_mono-native-platform.h) = c3ad79f8210f797b30e3eda05ccf54f6578ecaf3
+SHA1 (patch-mono_metadata_mono-config.c) = d349721ff2b6b3b767208eacdc5882b9e6dc47b4
+SHA1 (patch-mono_metadata_w32mutex-unix.c) = c3d424fe4ae1079c9c664c876a087fb0134f2e22
SHA1 (patch-mono_utils_mono-os-semaphore.h) = b850911945c95be804e9462263d558ef702831ca
SHA1 (patch-mono_utils_mono-sigcontext.h) = b8a6f886661622e9b0d382443536bd3dc998f95f
-SHA1 (patch-mono_utils_mono-utils-debug.c) = 30b0ab55c9227705026a8edd1e4bb693ae4f9953
+SHA1 (patch-mono_utils_mono-threads-posix.c) = 3111d6a47fa104d964b34fdb5f7eca8643559ea3
+SHA1 (patch-mono_utils_mono-utils-debug.c) = b813d7a3c652f120c658c3c3eeacd9c1f8b60be4
SHA1 (patch-runtime_mono-wrapper.in) = ea40d2f2e8b67de0ae42c6e608e3c085dc2b040e
-SHA1 (patch-support_minizip_ioapi.c) = df6c587d8cc8e2dc99e77d09411b4cc9276349cf
+SHA1 (patch-support_minizip_ioapi.c) = 605c86916c957c31a8b3048d7703482f8f545463
Index: pkgsrc/lang/mono6/patches/patch-mono_metadata_mono-config.c
diff -u pkgsrc/lang/mono6/patches/patch-mono_metadata_mono-config.c:1.3 pkgsrc/lang/mono6/patches/patch-mono_metadata_mono-config.c:1.4
--- pkgsrc/lang/mono6/patches/patch-mono_metadata_mono-config.c:1.3 Thu Jan 9 15:26:36 2020
+++ pkgsrc/lang/mono6/patches/patch-mono_metadata_mono-config.c Wed Feb 12 15:25:16 2020
@@ -1,16 +1,16 @@
-$NetBSD: patch-mono_metadata_mono-config.c,v 1.3 2020/01/09 15:26:36 ryoon Exp $
+$NetBSD: patch-mono_metadata_mono-config.c,v 1.4 2020/02/12 15:25:16 ryoon Exp $
Look for our dllmap in /usr/pkg/etc/mono/config
as opposed to /usr/pkg/etc/mono/mono/config
---- mono/metadata/mono-config.c.orig 2019-12-10 07:50:32.000000000 +0000
+--- mono/metadata/mono-config.c.orig 2020-02-04 17:00:34.000000000 +0000
+++ mono/metadata/mono-config.c
@@ -676,7 +676,7 @@ mono_config_parse (const char *filename)
const char *cfg_dir = mono_get_config_dir ();
if (cfg_dir) {
-- char *mono_cfg = g_build_filename (cfg_dir, "mono", "config", (const char *)NULL);
-+ char *mono_cfg = g_build_filename (cfg_dir, "config", (const char *)NULL);
+- char *mono_cfg = g_build_filename (cfg_dir, "mono", "config", (const char*)NULL);
++ char *mono_cfg = g_build_filename (cfg_dir, "config", (const char*)NULL);
mono_config_parse_file (mono_cfg);
g_free (mono_cfg);
}
Index: pkgsrc/lang/mono6/patches/patch-mono_utils_mono-utils-debug.c
diff -u pkgsrc/lang/mono6/patches/patch-mono_utils_mono-utils-debug.c:1.1 pkgsrc/lang/mono6/patches/patch-mono_utils_mono-utils-debug.c:1.2
--- pkgsrc/lang/mono6/patches/patch-mono_utils_mono-utils-debug.c:1.1 Sun Aug 25 16:37:01 2019
+++ pkgsrc/lang/mono6/patches/patch-mono_utils_mono-utils-debug.c Wed Feb 12 15:25:16 2020
@@ -1,23 +1,19 @@
-$NetBSD: patch-mono_utils_mono-utils-debug.c,v 1.1 2019/08/25 16:37:01 maya Exp $
+$NetBSD: patch-mono_utils_mono-utils-debug.c,v 1.2 2020/02/12 15:25:16 ryoon Exp $
Learn to use kinfo_proc2 on netbsd
---- mono/utils/mono-utils-debug.c.orig 2019-07-18 07:46:08.000000000 +0000
+--- mono/utils/mono-utils-debug.c.orig 2020-02-04 17:00:34.000000000 +0000
+++ mono/utils/mono-utils-debug.c
-@@ -27,10 +27,11 @@ mono_is_usermode_native_debugger_present
- #include <errno.h>
- #include <mono/utils/mono-errno.h>
- #include <fcntl.h>
--#if defined (__APPLE__)
-+#if defined (__APPLE__) || defined (__NetBSD__)
- #include <sys/sysctl.h>
+@@ -32,6 +32,8 @@ mono_is_usermode_native_debugger_present
#endif
#if defined (__NetBSD__)
-+#include <sys/proc.h>
#include <kvm.h>
++#include <sys/param.h>
++#include <sys/sysctl.h>
#endif
#if defined (_AIX)
-@@ -78,8 +79,9 @@ mono_is_usermode_native_debugger_present
+ #include <procinfo.h>
+@@ -78,8 +80,9 @@ mono_is_usermode_native_debugger_present
if (!kd)
return FALSE;
int count = 0;
Index: pkgsrc/lang/mono6/patches/patch-support_minizip_ioapi.c
diff -u pkgsrc/lang/mono6/patches/patch-support_minizip_ioapi.c:1.1 pkgsrc/lang/mono6/patches/patch-support_minizip_ioapi.c:1.2
--- pkgsrc/lang/mono6/patches/patch-support_minizip_ioapi.c:1.1 Thu Jan 9 15:26:36 2020
+++ pkgsrc/lang/mono6/patches/patch-support_minizip_ioapi.c Wed Feb 12 15:25:16 2020
@@ -1,15 +1,15 @@
-$NetBSD: patch-support_minizip_ioapi.c,v 1.1 2020/01/09 15:26:36 ryoon Exp $
+$NetBSD: patch-support_minizip_ioapi.c,v 1.2 2020/02/12 15:25:16 ryoon Exp $
* NetBSD has no 64-bit functions like macOS.
---- support/minizip/ioapi.c.orig 2019-12-10 07:50:32.000000000 +0000
+--- support/minizip/ioapi.c.orig 2020-02-04 17:00:34.000000000 +0000
+++ support/minizip/ioapi.c
@@ -14,7 +14,7 @@
#define _CRT_SECURE_NO_WARNINGS
#endif
--#if defined(__APPLE__) || defined(IOAPI_NO_64)
-+#if defined(__APPLE__) || defined(IOAPI_NO_64) || defined(__NetBSD__)
+-#if defined(__APPLE__) || defined(IOAPI_NO_64) || defined(__HAIKU__)
++#if defined(__APPLE__) || defined(IOAPI_NO_64) || defined(__HAIKU__) || defined(__NetBSD__)
// In darwin and perhaps other BSD variants off_t is a 64 bit value, hence no need for specific 64 bit functions
#define FOPEN_FUNC(filename, mode) fopen(filename, mode)
#define FTELLO_FUNC(stream) ftello(stream)
Added files:
Index: pkgsrc/lang/mono6/patches/patch-external_corert_src_Native_gc_env_gcenv.structs.h
diff -u /dev/null pkgsrc/lang/mono6/patches/patch-external_corert_src_Native_gc_env_gcenv.structs.h:1.1
--- /dev/null Wed Feb 12 15:25:16 2020
+++ pkgsrc/lang/mono6/patches/patch-external_corert_src_Native_gc_env_gcenv.structs.h Wed Feb 12 15:25:16 2020
@@ -0,0 +1,15 @@
+$NetBSD: patch-external_corert_src_Native_gc_env_gcenv.structs.h,v 1.1 2020/02/12 15:25:16 ryoon Exp $
+
+* Workaround for NetBSD's pthread_equal
+
+--- external/corert/src/Native/gc/env/gcenv.structs.h.orig 2020-02-04 17:00:39.000000000 +0000
++++ external/corert/src/Native/gc/env/gcenv.structs.h
+@@ -42,7 +42,7 @@ class EEThreadId
+ public:
+ bool IsCurrentThread()
+ {
+- return m_isValid && pthread_equal(m_id, pthread_self());
++ return m_isValid && (m_id == pthread_self());
+ }
+
+ void SetToCurrentThread()
Index: pkgsrc/lang/mono6/patches/patch-libgc_pthread__stop__world.c
diff -u /dev/null pkgsrc/lang/mono6/patches/patch-libgc_pthread__stop__world.c:1.1
--- /dev/null Wed Feb 12 15:25:16 2020
+++ pkgsrc/lang/mono6/patches/patch-libgc_pthread__stop__world.c Wed Feb 12 15:25:16 2020
@@ -0,0 +1,24 @@
+$NetBSD: patch-libgc_pthread__stop__world.c,v 1.1 2020/02/12 15:25:16 ryoon Exp $
+
+* Workaround for NetBSD's pthread_equal
+
+--- libgc/pthread_stop_world.c.orig 2020-02-04 17:00:30.000000000 +0000
++++ libgc/pthread_stop_world.c
+@@ -259,7 +259,7 @@ static void pthread_push_all_stacks()
+ for (i = 0; i < THREAD_TABLE_SZ; i++) {
+ for (p = GC_threads[i]; p != 0; p = p -> next) {
+ if (p -> flags & FINISHED) continue;
+- if (pthread_equal(p -> id, me)) {
++ if ((p -> id == me)) {
+ # ifdef SPARC
+ lo = (ptr_t)GC_save_regs_in_stack();
+ # else
+@@ -305,7 +305,7 @@ static void pthread_push_all_stacks()
+ (unsigned long) p -> id,
+ (unsigned long) bs_lo, (unsigned long) bs_hi);
+ # endif
+- if (pthread_equal(p -> id, me)) {
++ if ((p -> id == me)) {
+ GC_push_all_eager(bs_lo, bs_hi);
+ } else {
+ GC_push_all_stack(bs_lo, bs_hi);
Index: pkgsrc/lang/mono6/patches/patch-libgc_pthread__support.c
diff -u /dev/null pkgsrc/lang/mono6/patches/patch-libgc_pthread__support.c:1.1
--- /dev/null Wed Feb 12 15:25:16 2020
+++ pkgsrc/lang/mono6/patches/patch-libgc_pthread__support.c Wed Feb 12 15:25:16 2020
@@ -0,0 +1,24 @@
+$NetBSD: patch-libgc_pthread__support.c,v 1.1 2020/02/12 15:25:16 ryoon Exp $
+
+* Workaround for NetBSD's pthread_equal
+
+--- libgc/pthread_support.c.orig 2020-02-04 17:00:30.000000000 +0000
++++ libgc/pthread_support.c
+@@ -791,7 +791,7 @@ void GC_delete_thread(pthread_t id)
+ nacl_gc_thread_self = NULL;
+ #endif
+
+- while (!pthread_equal(p -> id, id)) {
++ while (!(p -> id == id)) {
+ prev = p;
+ p = p -> next;
+ }
+@@ -846,7 +846,7 @@ GC_thread GC_lookup_thread(pthread_t id)
+ int hv = ((unsigned long)id) % THREAD_TABLE_SZ;
+ register GC_thread p = GC_threads[hv];
+
+- while (p != 0 && !pthread_equal(p -> id, id)) p = p -> next;
++ while (p != 0 && !(p -> id == id)) p = p -> next;
+ return(p);
+ }
+
Index: pkgsrc/lang/mono6/patches/patch-mono_metadata_w32mutex-unix.c
diff -u /dev/null pkgsrc/lang/mono6/patches/patch-mono_metadata_w32mutex-unix.c:1.1
--- /dev/null Wed Feb 12 15:25:16 2020
+++ pkgsrc/lang/mono6/patches/patch-mono_metadata_w32mutex-unix.c Wed Feb 12 15:25:16 2020
@@ -0,0 +1,51 @@
+$NetBSD: patch-mono_metadata_w32mutex-unix.c,v 1.1 2020/02/12 15:25:16 ryoon Exp $
+
+* Workaround for NetBSD's pthread_equal
+
+--- mono/metadata/w32mutex-unix.c.orig 2020-02-04 17:00:34.000000000 +0000
++++ mono/metadata/w32mutex-unix.c
+@@ -84,7 +84,7 @@ mutex_handle_signal (MonoW32Handle *hand
+ if (mutex_handle->abandoned) {
+ mono_trace (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER_MUTEX, "%s: %s handle %p is abandoned",
+ __func__, mono_w32handle_get_typename (handle_data->type), handle_data);
+- } else if (!pthread_equal (mutex_handle->tid, tid)) {
++ } else if (!(mutex_handle->tid == tid)) {
+ mono_trace (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER_MUTEX, "%s: we don't own %s handle %p (owned by %ld, me %ld)",
+ __func__, mono_w32handle_get_typename (handle_data->type), handle_data, (long)mutex_handle->tid, (long)tid);
+ return MONO_W32HANDLE_WAIT_RET_NOT_OWNED_BY_CALLER;
+@@ -118,7 +118,7 @@ mutex_handle_own (MonoW32Handle *handle_
+ __func__, mono_w32handle_get_typename (handle_data->type), handle_data, (gpointer) mutex_handle->tid, mutex_handle->recursion, (gpointer) pthread_self (), mutex_handle->recursion + 1,
mutex_handle->abandoned ? "true" : "false");
+
+ if (mutex_handle->recursion != 0) {
+- g_assert (pthread_equal (pthread_self (), mutex_handle->tid));
++ g_assert ((pthread_self () == mutex_handle->tid));
+ mutex_handle->recursion++;
+ } else {
+ mutex_handle->tid = pthread_self ();
+@@ -146,7 +146,7 @@ mutex_handle_is_owned (MonoW32Handle *ha
+ mono_trace (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER_MUTEX, "%s: testing ownership %s handle %p",
+ __func__, mono_w32handle_get_typename (handle_data->type), handle_data);
+
+- if (mutex_handle->recursion > 0 && pthread_equal (mutex_handle->tid, pthread_self ())) {
++ if (mutex_handle->recursion > 0 && (mutex_handle->tid == pthread_self ())) {
+ mono_trace (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER_MUTEX, "%s: %s handle %p owned by %p",
+ __func__, mono_w32handle_get_typename (handle_data->type), handle_data, (gpointer) pthread_self ());
+ return TRUE;
+@@ -404,7 +404,7 @@ ves_icall_System_Threading_Mutex_Release
+ if (mutex_handle->abandoned) {
+ // The Win32 ReleaseMutex() function returns TRUE for abandoned mutexes
+ ret = TRUE;
+- } else if (!pthread_equal (mutex_handle->tid, tid)) {
++ } else if (!(mutex_handle->tid == tid)) {
+ ret = FALSE;
+
+ mono_trace (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER_MUTEX, "%s: we don't own %s handle %p (owned by %ld, me %ld)",
+@@ -505,7 +505,7 @@ mono_w32mutex_abandon (MonoInternalThrea
+
+ tid = MONO_UINT_TO_NATIVE_THREAD_ID (internal->tid);
+
+- if (!pthread_equal (mutex_handle->tid, tid))
++ if (!(mutex_handle->tid == tid))
+ g_error ("%s: trying to release mutex %p acquired by thread %p from thread %p",
+ __func__, handle, (gpointer) mutex_handle->tid, (gpointer) tid);
+
Index: pkgsrc/lang/mono6/patches/patch-mono_utils_mono-threads-posix.c
diff -u /dev/null pkgsrc/lang/mono6/patches/patch-mono_utils_mono-threads-posix.c:1.1
--- /dev/null Wed Feb 12 15:25:16 2020
+++ pkgsrc/lang/mono6/patches/patch-mono_utils_mono-threads-posix.c Wed Feb 12 15:25:16 2020
@@ -0,0 +1,15 @@
+$NetBSD: patch-mono_utils_mono-threads-posix.c,v 1.1 2020/02/12 15:25:16 ryoon Exp $
+
+* Workaround for NetBSD's pthread_equal
+
+--- mono/utils/mono-threads-posix.c.orig 2020-02-04 17:00:34.000000000 +0000
++++ mono/utils/mono-threads-posix.c
+@@ -224,7 +224,7 @@ mono_native_thread_id_get (void)
+ gboolean
+ mono_native_thread_id_equals (MonoNativeThreadId id1, MonoNativeThreadId id2)
+ {
+- return pthread_equal (id1, id2);
++ return (id1 == id2);
+ }
+
+ /*
Home |
Main Index |
Thread Index |
Old Index