pkgsrc-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: pkgsrc
Module Name: pkgsrc
Committed By: nia
Date: Wed Mar 3 12:05:42 UTC 2021
Modified Files:
pkgsrc/archivers/torrentzip: Makefile
pkgsrc/doc: CHANGES-2021 TODO
pkgsrc/games/fna: Makefile
pkgsrc/lang: Makefile
pkgsrc/lang/mono: Makefile buildlink3.mk distinfo
pkgsrc/lang/mono/patches: patch-mono_metadata_icall.c
patch-mono_utils_mono-sigcontext.h
patch-mono_utils_mono-threads-posix.c
Added Files:
pkgsrc/lang/mono/patches: patch-acceptance-tests_Makefile.in
patch-acceptance-tests_microbench-perf_sh_in patch-data_Makefile.am
patch-data_net__2__0_Browsers_Makefile.am
patch-data_net__2__0_Makefile.am
patch-data_net__4__0_Browsers_Makefile.am
patch-data_net__4__0_Makefile.am
patch-data_net__4__5_Browsers_Makefile.am
patch-data_net__4__5_Makefile.am
patch-external_corert_src_Native_gc_env_gcenv.structs.h
patch-mono_eglib_giconv.c patch-mono_metadata_w32mutex-unix.c
patch-mono_mini_Makefile.am.in patch-mono_mini_Makefile.in
patch-mono_tests_Makefile.am patch-mono_tests_Makefile.in
patch-mono_utils_jemalloc_Makefile.in
patch-mono_utils_mono-os-semaphore.h
patch-mono_utils_mono-utils-debug.c patch-runtime_mono-wrapper.in
patch-scripts_submodules_versions.mk patch-support_minizip_ioapi.c
Removed Files:
pkgsrc/lang/mono: PLIST.Darwin PLIST.Linux PLIST.common options.mk
pkgsrc/lang/mono/patches: patch-aa patch-ae patch-af patch-ai patch-aj
patch-ak patch-al patch-am patch-ap patch-aq patch-ar patch-as
patch-ba patch-bc patch-bd patch-be patch-bf patch-bi patch-cc
patch-configure patch-da patch-data_Makefile.in
patch-data_mono-nunit.pc.in patch-data_net_4_0_Browsers_Makefile.in
patch-data_net_4_5_Browsers_Makefile.in
patch-data_net_4_5_Makefile.in patch-db patch-dc patch-de patch-df
patch-dh patch-di patch-dj patch-dk patch-dl patch-do
patch-libgc_misc.c patch-man_mprof-report.1
patch-mcs_class_System_System.Net.NetworkInformation_IPGlobalProperties.cs
patch-mono_dis_Makefile.in patch-mono_metadata_boehm-gc.c
patch-mono_metadata_mono-perfcounters.c
patch-mono_metadata_mono-route.c patch-mono_mini_mini-arm.c
patch-mono_profiler_proflog.c patch-mono_unit-tests_Makefile.in
patch-mono_utils_Makefile.in patch-mono_utils_mono-compiler.h
patch-mono_utils_mono-mmap.c patch-mono_utils_mono-semaphore.c
patch-mono_utils_mono-threads-dragonfly.c
patch-mono_utils_mono-threads-netbsd.c
patch-mono_utils_mono-threads-solaris.c
patch-mono_utils_mono-threads.c patch-po_Makefile.in
patch-support_signal.c patch-support_time.c patch-support_unistd.c
pkgsrc/lang/mono6: DESCR Makefile PLIST buildlink3.mk distinfo
pkgsrc/lang/mono6/patches: patch-acceptance-tests_Makefile.in
patch-acceptance-tests_microbench-perf_sh_in patch-data_Makefile.am
patch-data_net__2__0_Browsers_Makefile.am
patch-data_net__2__0_Makefile.am
patch-data_net__4__0_Browsers_Makefile.am
patch-data_net__4__0_Makefile.am
patch-data_net__4__5_Browsers_Makefile.am
patch-data_net__4__5_Makefile.am
patch-external_corert_src_Native_gc_env_gcenv.structs.h
patch-mono_eglib_giconv.c patch-mono_metadata_icall.c
patch-mono_metadata_w32mutex-unix.c patch-mono_mini_Makefile.am.in
patch-mono_mini_Makefile.in patch-mono_tests_Makefile.am
patch-mono_tests_Makefile.in patch-mono_utils_jemalloc_Makefile.in
patch-mono_utils_mono-os-semaphore.h
patch-mono_utils_mono-sigcontext.h
patch-mono_utils_mono-threads-posix.c
patch-mono_utils_mono-utils-debug.c patch-runtime_mono-wrapper.in
patch-scripts_submodules_versions.mk patch-support_minizip_ioapi.c
Log Message:
Move lang/mono6 to lang/mono.
The old mono4 has been refusing to build on all platforms for a while,
while mono6 at least builds on some, so hopefully this is less misleading.
To generate a diff of this commit:
cvs rdiff -u -r1.7 -r1.8 pkgsrc/archivers/torrentzip/Makefile
cvs rdiff -u -r1.1365 -r1.1366 pkgsrc/doc/CHANGES-2021
cvs rdiff -u -r1.20411 -r1.20412 pkgsrc/doc/TODO
cvs rdiff -u -r1.1 -r1.2 pkgsrc/games/fna/Makefile
cvs rdiff -u -r1.594 -r1.595 pkgsrc/lang/Makefile
cvs rdiff -u -r1.195 -r1.196 pkgsrc/lang/mono/Makefile
cvs rdiff -u -r1.1 -r0 pkgsrc/lang/mono/PLIST.Darwin
cvs rdiff -u -r1.4 -r0 pkgsrc/lang/mono/PLIST.Linux
cvs rdiff -u -r1.27 -r0 pkgsrc/lang/mono/PLIST.common
cvs rdiff -u -r1.66 -r1.67 pkgsrc/lang/mono/buildlink3.mk
cvs rdiff -u -r1.111 -r1.112 pkgsrc/lang/mono/distinfo
cvs rdiff -u -r1.5 -r0 pkgsrc/lang/mono/options.mk
cvs rdiff -u -r1.18 -r0 pkgsrc/lang/mono/patches/patch-aa
cvs rdiff -u -r0 -r1.1 \
pkgsrc/lang/mono/patches/patch-acceptance-tests_Makefile.in \
pkgsrc/lang/mono/patches/patch-acceptance-tests_microbench-perf_sh_in \
pkgsrc/lang/mono/patches/patch-data_Makefile.am \
pkgsrc/lang/mono/patches/patch-data_net__2__0_Browsers_Makefile.am \
pkgsrc/lang/mono/patches/patch-data_net__2__0_Makefile.am \
pkgsrc/lang/mono/patches/patch-data_net__4__0_Browsers_Makefile.am \
pkgsrc/lang/mono/patches/patch-data_net__4__0_Makefile.am \
pkgsrc/lang/mono/patches/patch-data_net__4__5_Browsers_Makefile.am \
pkgsrc/lang/mono/patches/patch-data_net__4__5_Makefile.am \
pkgsrc/lang/mono/patches/patch-external_corert_src_Native_gc_env_gcenv.structs.h \
pkgsrc/lang/mono/patches/patch-mono_eglib_giconv.c \
pkgsrc/lang/mono/patches/patch-mono_metadata_w32mutex-unix.c \
pkgsrc/lang/mono/patches/patch-mono_mini_Makefile.am.in \
pkgsrc/lang/mono/patches/patch-mono_mini_Makefile.in \
pkgsrc/lang/mono/patches/patch-mono_tests_Makefile.am \
pkgsrc/lang/mono/patches/patch-mono_tests_Makefile.in \
pkgsrc/lang/mono/patches/patch-mono_utils_jemalloc_Makefile.in \
pkgsrc/lang/mono/patches/patch-mono_utils_mono-os-semaphore.h \
pkgsrc/lang/mono/patches/patch-mono_utils_mono-utils-debug.c \
pkgsrc/lang/mono/patches/patch-runtime_mono-wrapper.in \
pkgsrc/lang/mono/patches/patch-scripts_submodules_versions.mk \
pkgsrc/lang/mono/patches/patch-support_minizip_ioapi.c
cvs rdiff -u -r1.13 -r0 pkgsrc/lang/mono/patches/patch-ae
cvs rdiff -u -r1.14 -r0 pkgsrc/lang/mono/patches/patch-af
cvs rdiff -u -r1.10 -r0 pkgsrc/lang/mono/patches/patch-ai \
pkgsrc/lang/mono/patches/patch-aj pkgsrc/lang/mono/patches/patch-db
cvs rdiff -u -r1.12 -r0 pkgsrc/lang/mono/patches/patch-ak
cvs rdiff -u -r1.8 -r0 pkgsrc/lang/mono/patches/patch-al \
pkgsrc/lang/mono/patches/patch-bc
cvs rdiff -u -r1.7 -r0 pkgsrc/lang/mono/patches/patch-am \
pkgsrc/lang/mono/patches/patch-aq pkgsrc/lang/mono/patches/patch-bd \
pkgsrc/lang/mono/patches/patch-dc
cvs rdiff -u -r1.5 -r0 pkgsrc/lang/mono/patches/patch-ap \
pkgsrc/lang/mono/patches/patch-be \
pkgsrc/lang/mono/patches/patch-configure \
pkgsrc/lang/mono/patches/patch-de pkgsrc/lang/mono/patches/patch-df \
pkgsrc/lang/mono/patches/patch-dh pkgsrc/lang/mono/patches/patch-dl \
pkgsrc/lang/mono/patches/patch-mono_mini_mini-arm.c
cvs rdiff -u -r1.6 -r0 pkgsrc/lang/mono/patches/patch-ar \
pkgsrc/lang/mono/patches/patch-cc pkgsrc/lang/mono/patches/patch-da \
pkgsrc/lang/mono/patches/patch-di
cvs rdiff -u -r1.4 -r0 pkgsrc/lang/mono/patches/patch-as \
pkgsrc/lang/mono/patches/patch-bf pkgsrc/lang/mono/patches/patch-dk
cvs rdiff -u -r1.11 -r0 pkgsrc/lang/mono/patches/patch-ba
cvs rdiff -u -r1.3 -r0 pkgsrc/lang/mono/patches/patch-bi \
pkgsrc/lang/mono/patches/patch-dj pkgsrc/lang/mono/patches/patch-do \
pkgsrc/lang/mono/patches/patch-man_mprof-report.1 \
pkgsrc/lang/mono/patches/patch-mono_utils_Makefile.in \
pkgsrc/lang/mono/patches/patch-mono_utils_mono-compiler.h
cvs rdiff -u -r1.1 -r0 pkgsrc/lang/mono/patches/patch-data_Makefile.in \
pkgsrc/lang/mono/patches/patch-data_mono-nunit.pc.in \
pkgsrc/lang/mono/patches/patch-data_net_4_0_Browsers_Makefile.in \
pkgsrc/lang/mono/patches/patch-data_net_4_5_Browsers_Makefile.in \
pkgsrc/lang/mono/patches/patch-data_net_4_5_Makefile.in \
pkgsrc/lang/mono/patches/patch-libgc_misc.c \
pkgsrc/lang/mono/patches/patch-mcs_class_System_System.Net.NetworkInformation_IPGlobalProperties.cs \
pkgsrc/lang/mono/patches/patch-mono_dis_Makefile.in \
pkgsrc/lang/mono/patches/patch-mono_metadata_boehm-gc.c \
pkgsrc/lang/mono/patches/patch-mono_metadata_mono-route.c \
pkgsrc/lang/mono/patches/patch-mono_utils_mono-semaphore.c \
pkgsrc/lang/mono/patches/patch-mono_utils_mono-threads-netbsd.c \
pkgsrc/lang/mono/patches/patch-mono_utils_mono-threads-solaris.c \
pkgsrc/lang/mono/patches/patch-mono_utils_mono-threads.c \
pkgsrc/lang/mono/patches/patch-support_unistd.c
cvs rdiff -u -r1.1 -r1.2 pkgsrc/lang/mono/patches/patch-mono_metadata_icall.c \
pkgsrc/lang/mono/patches/patch-mono_utils_mono-sigcontext.h
cvs rdiff -u -r1.2 -r0 \
pkgsrc/lang/mono/patches/patch-mono_metadata_mono-perfcounters.c \
pkgsrc/lang/mono/patches/patch-mono_profiler_proflog.c \
pkgsrc/lang/mono/patches/patch-mono_unit-tests_Makefile.in \
pkgsrc/lang/mono/patches/patch-mono_utils_mono-mmap.c \
pkgsrc/lang/mono/patches/patch-mono_utils_mono-threads-dragonfly.c \
pkgsrc/lang/mono/patches/patch-po_Makefile.in \
pkgsrc/lang/mono/patches/patch-support_signal.c \
pkgsrc/lang/mono/patches/patch-support_time.c
cvs rdiff -u -r1.2 -r1.3 \
pkgsrc/lang/mono/patches/patch-mono_utils_mono-threads-posix.c
cvs rdiff -u -r1.1 -r0 pkgsrc/lang/mono6/DESCR
cvs rdiff -u -r1.26 -r0 pkgsrc/lang/mono6/Makefile
cvs rdiff -u -r1.7 -r0 pkgsrc/lang/mono6/PLIST
cvs rdiff -u -r1.6 -r0 pkgsrc/lang/mono6/buildlink3.mk
cvs rdiff -u -r1.13 -r0 pkgsrc/lang/mono6/distinfo
cvs rdiff -u -r1.2 -r0 \
pkgsrc/lang/mono6/patches/patch-acceptance-tests_Makefile.in \
pkgsrc/lang/mono6/patches/patch-mono_eglib_giconv.c \
pkgsrc/lang/mono6/patches/patch-mono_utils_jemalloc_Makefile.in \
pkgsrc/lang/mono6/patches/patch-runtime_mono-wrapper.in \
pkgsrc/lang/mono6/patches/patch-scripts_submodules_versions.mk \
pkgsrc/lang/mono6/patches/patch-support_minizip_ioapi.c
cvs rdiff -u -r1.1 -r0 \
pkgsrc/lang/mono6/patches/patch-acceptance-tests_microbench-perf_sh_in \
pkgsrc/lang/mono6/patches/patch-data_Makefile.am \
pkgsrc/lang/mono6/patches/patch-data_net__2__0_Browsers_Makefile.am \
pkgsrc/lang/mono6/patches/patch-data_net__2__0_Makefile.am \
pkgsrc/lang/mono6/patches/patch-data_net__4__0_Browsers_Makefile.am \
pkgsrc/lang/mono6/patches/patch-data_net__4__0_Makefile.am \
pkgsrc/lang/mono6/patches/patch-data_net__4__5_Browsers_Makefile.am \
pkgsrc/lang/mono6/patches/patch-data_net__4__5_Makefile.am \
pkgsrc/lang/mono6/patches/patch-external_corert_src_Native_gc_env_gcenv.structs.h \
pkgsrc/lang/mono6/patches/patch-mono_metadata_w32mutex-unix.c \
pkgsrc/lang/mono6/patches/patch-mono_mini_Makefile.in \
pkgsrc/lang/mono6/patches/patch-mono_tests_Makefile.in \
pkgsrc/lang/mono6/patches/patch-mono_utils_mono-os-semaphore.h \
pkgsrc/lang/mono6/patches/patch-mono_utils_mono-sigcontext.h \
pkgsrc/lang/mono6/patches/patch-mono_utils_mono-threads-posix.c
cvs rdiff -u -r1.3 -r0 pkgsrc/lang/mono6/patches/patch-mono_metadata_icall.c \
pkgsrc/lang/mono6/patches/patch-mono_mini_Makefile.am.in \
pkgsrc/lang/mono6/patches/patch-mono_tests_Makefile.am \
pkgsrc/lang/mono6/patches/patch-mono_utils_mono-utils-debug.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: pkgsrc/archivers/torrentzip/Makefile
diff -u pkgsrc/archivers/torrentzip/Makefile:1.7 pkgsrc/archivers/torrentzip/Makefile:1.8
--- pkgsrc/archivers/torrentzip/Makefile:1.7 Mon Oct 5 15:21:07 2020
+++ pkgsrc/archivers/torrentzip/Makefile Wed Mar 3 12:05:41 2021
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.7 2020/10/05 15:21:07 wiz Exp $
+# $NetBSD: Makefile,v 1.8 2021/03/03 12:05:41 nia Exp $
DISTNAME= TrrntZip.NET106
PKGNAME= torrentzip-1.0.6
@@ -11,7 +11,7 @@ HOMEPAGE= https://romvault.com/trrntzip/
COMMENT= Convert zip archives to torrentzip format
LICENSE= apache-2.0
-DEPENDS+= mono-[0-9]*:../../lang/mono6
+DEPENDS+= mono-[0-9]*:../../lang/mono
WRKSRC= ${WRKDIR}
USE_LANGUAGES= # none
Index: pkgsrc/doc/CHANGES-2021
diff -u pkgsrc/doc/CHANGES-2021:1.1365 pkgsrc/doc/CHANGES-2021:1.1366
--- pkgsrc/doc/CHANGES-2021:1.1365 Wed Mar 3 10:22:22 2021
+++ pkgsrc/doc/CHANGES-2021 Wed Mar 3 12:05:40 2021
@@ -1,4 +1,4 @@
-$NetBSD: CHANGES-2021,v 1.1365 2021/03/03 10:22:22 fox Exp $
+$NetBSD: CHANGES-2021,v 1.1366 2021/03/03 12:05:40 nia Exp $
Changes to the packages collection and infrastructure in 2021:
@@ -2147,3 +2147,5 @@ Changes to the packages collection and i
Updated net/rabbitmq to 3.8.14 [adam 2021-03-03]
Updated www/bozohttpd to 20210227 [mrg 2021-03-03]
Updated audio/fasttracker2 to 1.44 [fox 2021-03-03]
+ Updated lang/mono to 6.12.0.107 [nia 2021-03-03]
+ Removed lang/mono6 successor lang/mono [nia 2021-03-03]
Index: pkgsrc/doc/TODO
diff -u pkgsrc/doc/TODO:1.20411 pkgsrc/doc/TODO:1.20412
--- pkgsrc/doc/TODO:1.20411 Mon Mar 1 13:22:23 2021
+++ pkgsrc/doc/TODO Wed Mar 3 12:05:40 2021
@@ -1,4 +1,4 @@
-$NetBSD: TODO,v 1.20411 2021/03/01 13:22:23 adam Exp $
+$NetBSD: TODO,v 1.20412 2021/03/03 12:05:40 nia Exp $
Suggested new packages
======================
@@ -811,7 +811,7 @@ For possible Perl packages updates, see
o molden-4.8 [after which PR 40252 can be closed]
o molden-5.5
o mono-nat-1.1.0
- o mono6-6.12.0.122
+ o mono-6.12.0.122
o mopher-0.6.0
o moserial-2.30.0
o mpdas-0.4.1
Index: pkgsrc/games/fna/Makefile
diff -u pkgsrc/games/fna/Makefile:1.1 pkgsrc/games/fna/Makefile:1.2
--- pkgsrc/games/fna/Makefile:1.1 Sun Jan 24 19:07:21 2021
+++ pkgsrc/games/fna/Makefile Wed Mar 3 12:05:41 2021
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.1 2021/01/24 19:07:21 maya Exp $
+# $NetBSD: Makefile,v 1.2 2021/03/03 12:05:41 nia Exp $
GITHUB_PROJECT= FNA
GITHUB_TAG= 21.01
@@ -65,5 +65,5 @@ do-install:
.include "../../graphics/fna3d/buildlink3.mk"
.include "../../graphics/SDL2_image/buildlink3.mk"
.include "../../audio/faudio/buildlink3.mk"
-.include "../../lang/mono6/buildlink3.mk"
+.include "../../lang/mono/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"
Index: pkgsrc/lang/Makefile
diff -u pkgsrc/lang/Makefile:1.594 pkgsrc/lang/Makefile:1.595
--- pkgsrc/lang/Makefile:1.594 Mon Mar 1 08:45:42 2021
+++ pkgsrc/lang/Makefile Wed Mar 3 12:05:41 2021
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.594 2021/03/01 08:45:42 nia Exp $
+# $NetBSD: Makefile,v 1.595 2021/03/03 12:05:41 nia Exp $
#
COMMENT= Programming languages
@@ -164,7 +164,6 @@ SUBDIR+= minischeme
SUBDIR+= mit-scheme-bin
SUBDIR+= mono
SUBDIR+= mono-basic
-SUBDIR+= mono6
SUBDIR+= moscow_ml
SUBDIR+= mozjs78
SUBDIR+= mpd
Index: pkgsrc/lang/mono/Makefile
diff -u pkgsrc/lang/mono/Makefile:1.195 pkgsrc/lang/mono/Makefile:1.196
--- pkgsrc/lang/mono/Makefile:1.195 Fri Dec 4 20:45:26 2020
+++ pkgsrc/lang/mono/Makefile Wed Mar 3 12:05:41 2021
@@ -1,34 +1,36 @@
-# $NetBSD: Makefile,v 1.195 2020/12/04 20:45:26 nia Exp $
+# $NetBSD: Makefile,v 1.196 2021/03/03 12:05:41 nia Exp $
-DISTNAME= mono-4.0.4.1
-PKGREVISION= 23
+DISTNAME= mono-6.12.0.107
CATEGORIES= lang
MASTER_SITES= https://download.mono-project.com/sources/mono/
-EXTRACT_SUFX= .tar.bz2
+EXTRACT_SUFX= .tar.xz
MAINTAINER= pkgsrc-users%NetBSD.org@localhost
HOMEPAGE= https://www.mono-project.com/
COMMENT= Open source implementation of the .NET Development Framework
LICENSE= mit AND gnu-gpl-v2 AND gnu-lgpl-v2 AND apache-2.0
-BUILD_DEPENDS+= p5-XML-Parser-[0-9]*:../../textproc/p5-XML-Parser
+WRKSRC= ${WRKDIR}/${DISTNAME}
+
+TOOL_DEPENDS+= p5-XML-Parser-[0-9]*:../../textproc/p5-XML-Parser
CONFLICTS= pnet-[0-9]* mcsim-[0-9]* lc-[0-9]*
-ALL_ENV+= MONO_SHARED_DIR=${WRKDIR:Q} PLATFORM=
-WRKSRC= ${WRKDIR}/mono-4.0.4
+ALL_ENV+= MONO_SHARED_DIR=${WRKDIR} PLATFORM=
+ALL_ENV+= PAXCTL=${PAXCTL}
-USE_TOOLS+= bash:run bison gmake gtar msgfmt perl:run pkg-config
+USE_TOOLS+= bash:run cmake gmake msgfmt perl:run pkg-config
+USE_TOOLS+= bison autoconf automake
USE_LIBTOOL= yes
USE_LANGUAGES+= c c99 c++
-EXTRACT_USING= gtar
+EXTRACT_USING= bsdtar
GNU_CONFIGURE= yes
-CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR:Q}
-CONFIGURE_ARGS+= --with-libgdiplus=installed
-CONFIGURE_ARGS+= --disable-dtrace
-
-CTF_SUPPORTED= no # https://smartos.org/bugview/OS-6510
+GNU_CONFIGURE_STRICT= no # has sub-configures
+CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR}
+CONFIGURE_ARGS+= --disable-btls
+CONFIGURE_ARGS+= --disable-btls-lib
-.include "options.mk"
+# Requires a cwrappers change: http://mail-index.netbsd.org/tech-pkg/2019/08/16/msg021791.html
+USE_CWRAPPERS= no
MAKE_FLAGS+= PERL=${PERL5:Q} mandir=${PREFIX}/${PKGMANDIR}
UNLIMIT_RESOURCES= datasize stacksize memorysize
@@ -44,62 +46,49 @@ PKGCONFIG_OVERRIDE+= data/system.web.ext
PKGCONFIG_OVERRIDE+= data/system.web.extensions.design_1.0.pc.in
PKGCONFIG_OVERRIDE+= data/system.web.mvc.pc.in data/wcf.pc.in
-REPLACE_PERL+= mcs/tools/scan-tests.pl
-REPLACE_PERL+= msvc/create-windef.pl mono/benchmark/test-driver
-REPLACE_PERL+= mono/cil/make-opcodes-def.pl mono/metadata/make-bundle.pl
-REPLACE_PERL+= mono/mini/genmdesc.pl mono/tests/stress-runner.pl
+REPLACE_PERL+= mono/benchmark/test-driver
+REPLACE_PERL+= mono/cil/make-opcodes-def.pl
+REPLACE_PERL+= mono/tests/stress-runner.pl
REPLACE_PYTHON+= scripts/mono-heapviz
-REPLACE_BASH+= build-mingw32.sh
REPLACE_BASH+= mono/arch/arm/dpiops.sh
REPLACE_BASH+= mono/arch/arm/vfpops.sh
-REPLACE_BASH+= scripts/mono-find-provides.in
-REPLACE_BASH+= scripts/mono-find-requires.in
+REPLACE_BASH+= scripts/mono-package-runtime
+REPLACE_BASH+= scripts/mono-find-provides.in scripts/mono-find-requires.in
REPLACE_BASH+= scripts/mono-test-install
REPLACE_BASH+= mcs/class/Mono.Cairo/Samples/gtk/compile.sh
REPLACE_BASH+= mcs/class/Mono.Cairo/Samples/png/compile.sh
REPLACE_BASH+= mcs/class/Mono.Cairo/Samples/win32/compile.sh
REPLACE_BASH+= mcs/class/Mono.Cairo/Samples/x11/compile.sh
-REPLACE_BASH+= mcs/tools/tinderbox/tinderbox.sh
REPLACE_BASH+= libgc/mkinstalldirs
-REPLACE_BASH+= mcs/mkinstalldirs
-REPLACE_BASH+= mkinstalldirs
+REPLACE_BASH+= mcs/mkinstalldirs mkinstalldirs
EGDIR= ${PREFIX}/share/examples/mono
-CONF_FILES= ${EGDIR}/config ${PKG_SYSCONFDIR}/mono/config
-CONF_FILES+= ${EGDIR}/browscap.ini ${PKG_SYSCONFDIR}/mono/browscap.ini
-CONF_FILES+= ${EGDIR}/2.0/DefaultWsdlHelpGenerator.aspx \
- ${PKG_SYSCONFDIR}/mono/2.0/DefaultWsdlHelpGenerator.aspx
-CONF_FILES+= ${EGDIR}/2.0/machine.config \
- ${PKG_SYSCONFDIR}/mono/2.0/machine.config
-CONF_FILES+= ${EGDIR}/mconfig/config.xml \
- ${PKG_SYSCONFDIR}/mono/mconfig/config.xml
-CONF_FILES+= ${EGDIR}/2.0/settings.map \
- ${PKG_SYSCONFDIR}/mono/2.0/settings.map
-CONF_FILES+= ${EGDIR}/2.0/web.config \
- ${PKG_SYSCONFDIR}/mono/2.0/web.config
-CONF_FILES+= ${EGDIR}/2.0/Browsers/Compat.browser \
- ${PKG_SYSCONFDIR}/mono/2.0/Browsers/Compat.browser
-CONF_FILES+= ${EGDIR}/4.0/DefaultWsdlHelpGenerator.aspx \
- ${PKG_SYSCONFDIR}/mono/4.0/DefaultWsdlHelpGenerator.aspx
-CONF_FILES+= ${EGDIR}/4.0/machine.config \
- ${PKG_SYSCONFDIR}/mono/4.0/machine.config
-CONF_FILES+= ${EGDIR}/4.0/settings.map \
- ${PKG_SYSCONFDIR}/mono/4.0/settings.map
-CONF_FILES+= ${EGDIR}/4.0/web.config \
- ${PKG_SYSCONFDIR}/mono/4.0/web.config
-CONF_FILES+= ${EGDIR}/4.0/Browsers/Compat.browser \
- ${PKG_SYSCONFDIR}/mono/4.0/Browsers/Compat.browser
-CONF_FILES+= ${EGDIR}/4.5/DefaultWsdlHelpGenerator.aspx \
- ${PKG_SYSCONFDIR}/mono/4.5/DefaultWsdlHelpGenerator.aspx
-CONF_FILES+= ${EGDIR}/4.5/machine.config \
- ${PKG_SYSCONFDIR}/mono/4.5/machine.config
-CONF_FILES+= ${EGDIR}/4.5/settings.map \
- ${PKG_SYSCONFDIR}/mono/4.5/settings.map
-CONF_FILES+= ${EGDIR}/4.5/web.config ${PKG_SYSCONFDIR}/mono/4.5/web.config
-CONF_FILES+= ${EGDIR}/4.5/Browsers/Compat.browser \
- ${PKG_SYSCONFDIR}/mono/4.5/Browsers/Compat.browser
+
+EGDIR_CONF_FILES= \
+
+.for conf in \
+ 2.0/Browsers/Compat.browser \
+ 2.0/DefaultWsdlHelpGenerator.aspx \
+ 2.0/DefaultWsdlHelpGenerator.aspx \
+ 2.0/machine.config \
+ 2.0/settings.map \
+ 2.0/web.config \
+ 4.0/Browsers/Compat.browser \
+ 4.0/DefaultWsdlHelpGenerator.aspx \
+ 4.0/machine.config \
+ 4.0/settings.map \
+ 4.0/web.config \
+ 4.5/Browsers/Compat.browser \
+ 4.5/DefaultWsdlHelpGenerator.aspx \
+ 4.5/machine.config \
+ 4.5/settings.map \
+ 4.5/web.config \
+ browscap.ini \
+ config
+CONF_FILES+= ${EGDIR}/${conf} ${PKG_SYSCONFDIR}/mono/${conf}
+.endfor
MAKE_DIRS+= ${PKG_SYSCONFDIR}/mono/2.0
MAKE_DIRS+= ${PKG_SYSCONFDIR}/mono/2.0/Browsers
@@ -109,7 +98,8 @@ MAKE_DIRS+= ${PKG_SYSCONFDIR}/mono/4.5
MAKE_DIRS+= ${PKG_SYSCONFDIR}/mono/4.5/Browsers
MAKE_DIRS+= ${PKG_SYSCONFDIR}/mono/mconfig
-INSTALLATION_DIRS+= share/examples/mono/4.5
+# Uses [[ ... ]], not needed during the build.
+SKIP_PORTABILITY_CHECK+= acceptance-tests/microbench-perf.sh.in
TEST_TARGET= check
@@ -118,13 +108,7 @@ SUBST_STAGE.fix-prefix= pre-configure
SUBST_MESSAGE.fix-prefix= Fixing relative prefix
SUBST_FILES.fix-prefix= ${PKGCONFIG_OVERRIDE}
SUBST_SED.fix-prefix= -e 's,$${pcfiledir}/../..,\@prefix\@,g'
-SUBST_NOOP_OK.fix-prefix= yes # some of the files are modified
-
-SUBST_CLASSES+= fix-mcs
-SUBST_STAGE.fix-mcs= pre-configure
-SUBST_MESSAGE.fix-mcs= Fixing mcs default prefix
-SUBST_FILES.fix-mcs= mcs/build/config-default.make
-SUBST_VARS.fix-mcs= PREFIX PKGMANDIR
+SUBST_NOOP_OK.fix-prefix= yes
SUBST_CLASSES+= fix-cfgdir
SUBST_STAGE.fix-cfgdir= pre-configure
@@ -132,47 +116,31 @@ SUBST_MESSAGE.fix-cfgdir= Fixing configu
SUBST_FILES.fix-cfgdir= mcs/tools/mconfig/Makefile
SUBST_SED.fix-cfgdir= -e 's,$$(sysconfdir)/mono,${EGDIR},g'
-SUBST_CLASSES+= fix-libx11
-SUBST_STAGE.fix-libx11= pre-configure
-SUBST_MESSAGE.fix-libx11= Fixing libX11 search path configuration
-SUBST_FILES.fix-libx11= configure
-SUBST_VARS.fix-libx11= X11BASE
-
-PLIST_VARS= libgc monodoc
+# Uses [[ ... ]], not needed during the build.
+CHECK_PORTABILITY_SKIP+= acceptance-tests/microbench-perf.sh.in
+CHECK_PORTABILITY_SKIP+= external/llvm-project/polly/lib/External/isl/configure
.include "../../mk/bsd.prefs.mk"
-SUBST_CLASSES+= fix-domlib
-SUBST_STAGE.fix-domlib= pre-configure
-SUBST_FILES.fix-domlib= mcs/class/System/System.Net.NetworkInformation/IPGlobalProperties.cs
-.if ${OPSYS} == "SunOS"
-SUBST_SED.fix-domlib= -e 's,@DOMAINLIB@,libnsl,g'
-.else
-SUBST_SED.fix-domlib= -e 's,@DOMAINLIB@,libc,g'
-.endif
-
-# The builtin boehm-gc fails on SunOS with newer GCC, just use the pkgsrc
-# version in any case as it is optimised.
-.if ${OPSYS} == "SunOS"
-.include "../../devel/boehm-gc/buildlink3.mk"
-CONFIGURE_ARGS+= --with-gc=boehm
-.else
-CONFIGURE_ARGS+= --with-gc=included
-PLIST.libgc= yes
-.endif
+# We patched makefiles, regen
+pre-configure:
+ ${RUN} cd ${WRKSRC} && NOCONFIGURE=1 ${SH} ./autogen.sh
.if ${OPSYS} == "SunOS"
CFLAGS+= -D_XOPEN_SOURCE=600
+# Conflicts with the above settings
+CONFIGURE_ENV+= ac_cv_func_madvise=no
CONFIGURE_ARGS+= --with-mcs-docs=no
-CONFIGURE_ARGS+= --with-sgen=no
+CONFIGURE_ARGS+= --enable-dtrace=no
CONFIGURE_ARGS+= --with-sigaltstack=no
+CONFIGURE_ENV+= ac_cv_func_getdomainname=no
+CONFIGURE_ENV+= ac_cv_func_setdomainname=no
ULIMIT_CMD_datasize= ulimit -d 524288
ULIMIT_CMD_stacksize= ulimit -s 10240
-.elif ${OPSYS} == "NetBSD" && ${MACHINE_ARCH:M*arm*}
-CONFIGURE_ARGS+= --with-mcs-docs=no
-CONFIGURE_ARGS+= --disable-parallel-mark
-.else
-PLIST.monodoc= yes
+.elif ${OPSYS} == "NetBSD"
+# Available as a libc symbol, but no declaration.
+# XXX learn about getvfsstat
+CONFIGURE_ENV+= ac_cv_func_getfsstat=no
.endif
.if ${MACHINE_ARCH:M*i[34]86*}
@@ -181,6 +149,17 @@ GNU_ARCH.i386= i586
CFLAGS+= -march=i586
.endif
+PLIST_VARS+= boehm
+.if ${MACHINE_ARCH} == "aarch64"
+CONFIGURE_ARGS+= --disable-boehm
+CONFIGURE_ARGS+= --with-libgc=none
+.else
+PLIST.boehm= yes
+.endif
+
+# Unsafe JIT, possibly problematic boehm-gc
+NOT_PAX_MPROTECT_SAFE+= bin/mono-sgen
+
post-install:
${INSTALL_DATA} ${WRKSRC}/data/net_4_5/DefaultWsdlHelpGenerator.aspx \
${DESTDIR}${EGDIR}/4.5/DefaultWsdlHelpGenerator.aspx
@@ -199,6 +178,7 @@ post-install:
.include "../../devel/gettext-lib/buildlink3.mk"
.include "../../lang/python/application.mk"
+.include "../../lang/python/tool.mk"
.include "../../textproc/icu/buildlink3.mk"
.include "../../textproc/libxml2/buildlink3.mk"
.include "../../textproc/libxslt/buildlink3.mk"
Index: pkgsrc/lang/mono/buildlink3.mk
diff -u pkgsrc/lang/mono/buildlink3.mk:1.66 pkgsrc/lang/mono/buildlink3.mk:1.67
--- pkgsrc/lang/mono/buildlink3.mk:1.66 Thu Nov 5 09:06:57 2020
+++ pkgsrc/lang/mono/buildlink3.mk Wed Mar 3 12:05:41 2021
@@ -1,21 +1,13 @@
-# $NetBSD: buildlink3.mk,v 1.66 2020/11/05 09:06:57 ryoon Exp $
+# $NetBSD: buildlink3.mk,v 1.67 2021/03/03 12:05:41 nia Exp $
BUILDLINK_TREE+= mono
.if !defined(MONO_BUILDLINK3_MK)
MONO_BUILDLINK3_MK:=
-.include "../../mk/bsd.fast.prefs.mk"
-.if ${OPSYS} == "NetBSD"
-BUILDLINK_API_DEPENDS.mono+= mono>=6
-BUILDLINK_ABI_DEPENDS.mono?= mono>=4.0.4.1nb22
-BUILDLINK_PKGSRCDIR.mono?= ../../lang/mono6
-.else
BUILDLINK_API_DEPENDS.mono+= mono>=4
-BUILDLINK_ABI_DEPENDS.mono?= mono>=4.0.4.1nb15
+BUILDLINK_ABI_DEPENDS.mono+= mono>=6.12.0.90nb1
BUILDLINK_PKGSRCDIR.mono?= ../../lang/mono
-.endif
-
ALL_ENV+= MONO_SHARED_DIR=${WRKDIR}
BUILDLINK_CONTENTS_FILTER.mono= ${EGREP} '(^include/|^lib/)'
Index: pkgsrc/lang/mono/distinfo
diff -u pkgsrc/lang/mono/distinfo:1.111 pkgsrc/lang/mono/distinfo:1.112
--- pkgsrc/lang/mono/distinfo:1.111 Sat May 9 12:39:44 2020
+++ pkgsrc/lang/mono/distinfo Wed Mar 3 12:05:41 2021
@@ -1,67 +1,31 @@
-$NetBSD: distinfo,v 1.111 2020/05/09 12:39:44 rillig Exp $
+$NetBSD: distinfo,v 1.112 2021/03/03 12:05:41 nia Exp $
-SHA1 (mono-4.0.4.1.tar.bz2) = 12f3dbdac92e937cafba1d4e5a168c4cf2620935
-RMD160 (mono-4.0.4.1.tar.bz2) = 27c2d2682786444ee52199134cb84cc59894b093
-SHA512 (mono-4.0.4.1.tar.bz2) = 2f299e97dd3014c9d221677e73e5134a0c0a5b27e479fb60aabc2b3eddedf07f525f3a74194ccbfdf8efe63d7ea72850f8ee64d6f15f51bccd5db0df6c1b3722
-Size (mono-4.0.4.1.tar.bz2) = 96106273 bytes
-SHA1 (patch-aa) = 84e5bca2b6d9715271c343f774c81186858d90c9
-SHA1 (patch-ae) = 25869b98f9197243aea799b75b238d92f58e8845
-SHA1 (patch-af) = 6a458a91dc34420d45238b5dad01ed63f0bd9e00
-SHA1 (patch-ai) = d06c382d188f4263a2a505ca3d3ee491baa3af28
-SHA1 (patch-aj) = 33b75ec2662cc442f602b21b03fee1e5c39e3a76
-SHA1 (patch-ak) = 262845edcf84cf5127b7e01963f0d433aad7682a
-SHA1 (patch-al) = 07462d3f9cf2aa08b1fb837400084d32a7062eee
-SHA1 (patch-am) = ff0af9c120ebeb59edcdb727c7d36aa5939c73af
-SHA1 (patch-ap) = e0590d7014ae4ef74ee9f9c39f069411a66c8f76
-SHA1 (patch-aq) = 91f8384c62e4a7a1b2079038495a1a78364926c9
-SHA1 (patch-ar) = e225bfaa1a18aa5997a1a6472889da3a0ec533cc
-SHA1 (patch-as) = 101c0119f498a389613a3cd54497e85b3aece1c2
-SHA1 (patch-ba) = f501f1fa3e603660dc8f64ea6bc020b4f4c08a57
-SHA1 (patch-bc) = 1fbb3d78683dc29944eb69d2b033f34539da2b39
-SHA1 (patch-bd) = a6706236caae06c5defa5c8e2488380cc64f93ab
-SHA1 (patch-be) = d1b603478ff8b1acdd2160efe2d88974f62ac20f
-SHA1 (patch-bf) = 550c198e41ccc33dd690950754af4557df9b1d1d
-SHA1 (patch-bi) = 4d2252c53facafeb8fc7f459759294da5f14dfeb
-SHA1 (patch-cc) = d26c9e04f04896f0e7b2edab61cd347d76e0fcaf
-SHA1 (patch-configure) = 87c01757866d92676b5166d7ed375f5c0ba939b3
-SHA1 (patch-da) = 08c7c78aa4c6f1a1de4d34aebe05cd2ed1e7dcfd
-SHA1 (patch-data_Makefile.in) = 0c54664b1a59714c6bec02547d70eaa7dee47928
-SHA1 (patch-data_mono-nunit.pc.in) = 59e0a932727b842ac90c2d0b702481d62f72cab8
-SHA1 (patch-data_net_4_0_Browsers_Makefile.in) = ab4baa45dd75b87786cbc7d942611915d5ae1f72
-SHA1 (patch-data_net_4_5_Browsers_Makefile.in) = e4cab08ffa040020684edb3a9fbc8e448d2faf35
-SHA1 (patch-data_net_4_5_Makefile.in) = 778be615f4f21f2561e47e082302c09f02c6f8f6
-SHA1 (patch-db) = 185ae2e5cbac9bca99443efbc5a8ae63423656cf
-SHA1 (patch-dc) = 725c82a9ac4ae9c01045149504a6df6a64d808a3
-SHA1 (patch-de) = 0c2a123868b20236fceb93d33fa3084a1afd004c
-SHA1 (patch-df) = b2780e809d681795a6bdd9039ec890cfc9362187
-SHA1 (patch-dh) = 30f0bea7c707829247c2b426a88c4adba057e534
-SHA1 (patch-di) = 67a26c3cd7752d5b629f00cdba7cc9613d10f43c
-SHA1 (patch-dj) = 049cc88dc523975404445f13de81255d75a22156
-SHA1 (patch-dk) = ad78819e71f082d0b7f262c162d3a67cfdfdcf2f
-SHA1 (patch-dl) = dc63c1d3f6a1d78b2f5bb725cdff6824e2307dc5
-SHA1 (patch-do) = 0bda0d2e482be218fb502e0c4ea945a41d078d27
-SHA1 (patch-libgc_misc.c) = 52c68e7b6f1b58f480286bd135591f97a3e13125
-SHA1 (patch-man_mprof-report.1) = 0a80c164614cc9af5f01822005193d80f1d89946
-SHA1 (patch-mcs_class_System_System.Net.NetworkInformation_IPGlobalProperties.cs) = 2c312a28f24a45ca2802dcbe032fd7007ddd60a3
-SHA1 (patch-mono_dis_Makefile.in) = f000112e2712faf29104489e45feae8d6fc45169
-SHA1 (patch-mono_metadata_boehm-gc.c) = 7398638ba62e09eefead5a87661226573eb5f220
-SHA1 (patch-mono_metadata_icall.c) = 191a7fccb174855026cb11dd0f6ac450bb920ec7
-SHA1 (patch-mono_metadata_mono-perfcounters.c) = 8cfbfa62fe4201a20bc07645ccf6b13487a64fc3
-SHA1 (patch-mono_metadata_mono-route.c) = 6eb741efca0a66fae894f7c49fa8f6393079e67f
-SHA1 (patch-mono_mini_mini-arm.c) = 1c4f85a6b2a49604a6b4299f65f0c93d0c01ffa3
-SHA1 (patch-mono_profiler_proflog.c) = 060e8052aeedc1ee224d33644f39b8085a6c92a2
-SHA1 (patch-mono_unit-tests_Makefile.in) = 98cb082e2e0ad53c36b513a7bce9568c26e14f21
-SHA1 (patch-mono_utils_Makefile.in) = be9caeff6d687e8c686d7436db2f39f7803c231a
-SHA1 (patch-mono_utils_mono-compiler.h) = 210062c167c00500f6a9176ef94c8cd96d39c730
-SHA1 (patch-mono_utils_mono-mmap.c) = 869c24a57861fcfb1bdc8a04ed0e0d1fd5a0e0b5
-SHA1 (patch-mono_utils_mono-semaphore.c) = a47c7816445c7781e1cf0efc889dedfbf5b351f9
-SHA1 (patch-mono_utils_mono-sigcontext.h) = 2ab18320bf0c3844bd79818da9fbbedeb6ff466d
-SHA1 (patch-mono_utils_mono-threads-dragonfly.c) = d41c7735d5ba0224ff4a4cf70308fb835ec00bbe
-SHA1 (patch-mono_utils_mono-threads-netbsd.c) = 29d7bdb4906bca4e2f5a0a94b7e70e04570df8ee
-SHA1 (patch-mono_utils_mono-threads-posix.c) = d0cb2b1be62cbafe86a3efa817b8120af4ab1086
-SHA1 (patch-mono_utils_mono-threads-solaris.c) = 8781c9e09edfbbbc9940f02cce46a3ce5b6c10c3
-SHA1 (patch-mono_utils_mono-threads.c) = 1cf1bd2416fc36df0e456774281c7d4a1bfa50fc
-SHA1 (patch-po_Makefile.in) = 53f967c75ae028d991f118fb3bbc5b90bb4ceea7
-SHA1 (patch-support_signal.c) = 33e0c19c21955b105d78a05b2b10d00f479a60c2
-SHA1 (patch-support_time.c) = 2031ab294d66594ff3645b03c48ffca143ab59b5
-SHA1 (patch-support_unistd.c) = 3cd39812b252c660b4cbb44d3da4353829f0ce7a
+SHA1 (mono-6.12.0.107.tar.xz) = 6a28375a714a9832f6b35eaf3f01c029fd93995d
+RMD160 (mono-6.12.0.107.tar.xz) = c5a005aae49e85725fff78c236dbd7ef08f047e6
+SHA512 (mono-6.12.0.107.tar.xz) = 567cd37847bd5a0bf78df8a3ada2ed2cfb10e466fffb5aadc3d145751552720bdd1fc2a734fba142b91f2e221f42b6717d6eb3f7c8823cbec3d458b10712d7ea
+Size (mono-6.12.0.107.tar.xz) = 291862192 bytes
+SHA1 (patch-acceptance-tests_Makefile.in) = b2edf3ed54d3669c5651c6d63bb8fb04fae0fec0
+SHA1 (patch-acceptance-tests_microbench-perf_sh_in) = d46118c1685e3e48a5b8594bf7f77acd2bebaf94
+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
+SHA1 (patch-data_net__4__0_Browsers_Makefile.am) = 0ada5af132816efb41dfbd7ce2ba2355d751b883
+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-external_corert_src_Native_gc_env_gcenv.structs.h) = 91b37d93c1c3aadcdb383c443142fe28f50ad8e6
+SHA1 (patch-mono_eglib_giconv.c) = 5c2ca5788b93d371d1aa30f296a447516b622a4e
+SHA1 (patch-mono_metadata_icall.c) = 9c0ec3d4d3263943a7351a76065ef80ce312396a
+SHA1 (patch-mono_metadata_w32mutex-unix.c) = c3d424fe4ae1079c9c664c876a087fb0134f2e22
+SHA1 (patch-mono_mini_Makefile.am.in) = 7f4555b53e74646d96c847862999e4eceaa86164
+SHA1 (patch-mono_mini_Makefile.in) = c8a96e8d9139b5f1c751abc2256af45c219e504e
+SHA1 (patch-mono_tests_Makefile.am) = ddeab885c28be53dc457261c63af53b3de754052
+SHA1 (patch-mono_tests_Makefile.in) = cf6a670e94b52f41d30ae6262f2f4ed5c0da4c05
+SHA1 (patch-mono_utils_jemalloc_Makefile.in) = bb20a6f72c88632bf2e75c83174b4255788ad4ff
+SHA1 (patch-mono_utils_mono-os-semaphore.h) = b850911945c95be804e9462263d558ef702831ca
+SHA1 (patch-mono_utils_mono-sigcontext.h) = b8a6f886661622e9b0d382443536bd3dc998f95f
+SHA1 (patch-mono_utils_mono-threads-posix.c) = 3111d6a47fa104d964b34fdb5f7eca8643559ea3
+SHA1 (patch-mono_utils_mono-utils-debug.c) = 39f099969040b3a52101b611be723b25674ea68b
+SHA1 (patch-runtime_mono-wrapper.in) = ea40d2f2e8b67de0ae42c6e608e3c085dc2b040e
+SHA1 (patch-scripts_submodules_versions.mk) = ca45d582a09af1bb3a1031a689c188605dea91b8
+SHA1 (patch-support_minizip_ioapi.c) = 605c86916c957c31a8b3048d7703482f8f545463
Index: pkgsrc/lang/mono/patches/patch-mono_metadata_icall.c
diff -u pkgsrc/lang/mono/patches/patch-mono_metadata_icall.c:1.1 pkgsrc/lang/mono/patches/patch-mono_metadata_icall.c:1.2
--- pkgsrc/lang/mono/patches/patch-mono_metadata_icall.c:1.1 Thu May 21 14:38:08 2015
+++ pkgsrc/lang/mono/patches/patch-mono_metadata_icall.c Wed Mar 3 12:05:41 2021
@@ -1,22 +1,16 @@
-$NetBSD: patch-mono_metadata_icall.c,v 1.1 2015/05/21 14:38:08 kefren Exp $
+$NetBSD: patch-mono_metadata_icall.c,v 1.2 2021/03/03 12:05:41 nia Exp $
-strtod hack until someone has time to debug mono_strtod
+NetBSD will side-load <stdbool.h> which must have #define bool _Bool.
+This causes some problems with the C preprocessor usage here. undef it.
---- mono/metadata/icall.c.orig 2015-05-21 14:20:36.000000000 +0300
-+++ mono/metadata/icall.c 2015-05-21 14:22:00.000000000 +0300
-@@ -127,10 +127,15 @@ mono_double_ParseImpl (char *ptr, double
- *result = 0.0;
+--- mono/metadata/icall.c.orig 2020-04-30 07:46:10.000000000 +0000
++++ mono/metadata/icall.c
+@@ -120,6 +120,8 @@
+ #include "mono/metadata/icall-signatures.h"
+ #include "mono/utils/mono-signal-handler.h"
- if (*ptr){
-+#if defined(__NetBSD__)
-+ /* XXX WIP: mono_strtod spins 100% CPU on NetBSD */
-+ *result = strtod(ptr, &endptr);
-+#else
- /* mono_strtod () is not thread-safe */
- mono_mutex_lock (&mono_strtod_mutex);
- *result = mono_strtod (ptr, &endptr);
- mono_mutex_unlock (&mono_strtod_mutex);
-+#endif
- }
++#undef bool
++
+ //#define MONO_DEBUG_ICALLARRAY
- if (!*ptr || (endptr && *endptr))
+ #ifdef MONO_DEBUG_ICALLARRAY
Index: pkgsrc/lang/mono/patches/patch-mono_utils_mono-sigcontext.h
diff -u pkgsrc/lang/mono/patches/patch-mono_utils_mono-sigcontext.h:1.1 pkgsrc/lang/mono/patches/patch-mono_utils_mono-sigcontext.h:1.2
--- pkgsrc/lang/mono/patches/patch-mono_utils_mono-sigcontext.h:1.1 Tue Jan 10 10:35:28 2017
+++ pkgsrc/lang/mono/patches/patch-mono_utils_mono-sigcontext.h Wed Mar 3 12:05:41 2021
@@ -1,55 +1,19 @@
-$NetBSD: patch-mono_utils_mono-sigcontext.h,v 1.1 2017/01/10 10:35:28 he Exp $
+$NetBSD: patch-mono_utils_mono-sigcontext.h,v 1.2 2021/03/03 12:05:41 nia Exp $
---- mono/utils/mono-sigcontext.h.orig 2015-08-25 20:33:40.000000000 +0000
+NetBSD/aarch64 support.
+
+--- mono/utils/mono-sigcontext.h.orig 2019-09-19 07:46:07.000000000 +0000
+++ mono/utils/mono-sigcontext.h
-@@ -201,6 +201,10 @@ typedef struct ucontext {
- #define UCONTEXT_REG_RSI(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs [_REG_RSI])
- #define UCONTEXT_REG_RDI(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs [_REG_RDI])
- #define UCONTEXT_REG_RIP(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs [_REG_RIP])
-+ #define UCONTEXT_REG_R8(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs [_REG_R8])
-+ #define UCONTEXT_REG_R9(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs [_REG_R9])
-+ #define UCONTEXT_REG_R10(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs [_REG_R10])
-+ #define UCONTEXT_REG_R11(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs [_REG_R11])
- #define UCONTEXT_REG_R12(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs [_REG_R12])
- #define UCONTEXT_REG_R13(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs [_REG_R13])
- #define UCONTEXT_REG_R14(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs [_REG_R14])
-@@ -287,9 +291,9 @@ typedef struct ucontext {
-
- #define UCONTEXT_REG_Rn(ctx, n) (((os_ucontext*)(ctx))->uc_mcontext.__gregs [(n)])
- #define UCONTEXT_REG_FPRn(ctx, n) (((os_ucontext*)(ctx))->uc_mcontext.__fpregs.__fpu_regs [(n)])
-- #define UCONTEXT_REG_NIP(ctx) _UC_MACHINE_PC(ctx)
-+ #define UCONTEXT_REG_NIP(ctx) _UC_MACHINE_PC((os_ucontext*)(ctx))
- #define UCONTEXT_REG_LNK(ctx) (((os_ucontext*)(ctx))->uc_mcontext.__gregs [_REG_LR])
--#elif defined(__FreeBSD__)
-+#elif defined(__FreeBSD__) || defined(__DragonFly__)
- typedef ucontext_t os_ucontext;
-
- #define UCONTEXT_REG_Rn(ctx, n) ((ctx)->uc_mcontext.mc_gpr [(n)])
-@@ -351,6 +355,27 @@ typedef struct ucontext {
- #define UCONTEXT_REG_R11(ctx) (((arm_ucontext*)(ctx))->sig_ctx.arm_fp)
- #define UCONTEXT_REG_R12(ctx) (((arm_ucontext*)(ctx))->sig_ctx.arm_ip)
- #define UCONTEXT_REG_CPSR(ctx) (((arm_ucontext*)(ctx))->sig_ctx.arm_cpsr)
+@@ -474,6 +474,12 @@ typedef struct ucontext {
+ #define UCONTEXT_REG_SP(ctx) (((ucontext_t*)(ctx))->uc_mcontext.mc_gpregs.gp_sp)
+ #define UCONTEXT_REG_R0(ctx) (((ucontext_t*)(ctx))->uc_mcontext.mc_gpregs.gp_x [ARMREG_R0])
+ #define UCONTEXT_GREGS(ctx) (&(((ucontext_t*)(ctx))->uc_mcontext.mc_gpregs.gp_x))
+#elif defined(__NetBSD__)
-+ typedef ucontext_t arm_ucontext;
-+
-+ #define UCONTEXT_REG_PC(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs[_REG_PC])
-+ #define UCONTEXT_REG_SP(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs[_REG_SP])
-+ #define UCONTEXT_REG_LR(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs[_REG_LR])
-+ #define UCONTEXT_REG_R0(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs[_REG_R0])
-+ #define UCONTEXT_REG_R1(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs[_REG_R1])
-+ #define UCONTEXT_REG_R2(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs[_REG_R2])
-+ #define UCONTEXT_REG_R3(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs[_REG_R3])
-+ #define UCONTEXT_REG_R4(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs[_REG_R4])
-+ #define UCONTEXT_REG_R5(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs[_REG_R5])
-+ #define UCONTEXT_REG_R6(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs[_REG_R6])
-+ #define UCONTEXT_REG_R7(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs[_REG_R7])
-+ #define UCONTEXT_REG_R8(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs[_REG_R8])
-+ #define UCONTEXT_REG_R9(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs[_REG_R9])
-+ #define UCONTEXT_REG_R10(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs[_REG_R10])
-+ #define UCONTEXT_REG_R11(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs[_REG_R11])
-+ #define UCONTEXT_REG_R12(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs[_REG_R12])
-+ #define UCONTEXT_REG_CPSR(ctx) (((ucontext_t*)(ctx))->uc_mcontext.__gregs[_REG_CPSR])
-+ #define UCONTEXT_REG_VFPREGS(ctx) (double*)(&((ucontext_t*)(ctx))->uc_mcontext.__fpu)
- #endif
-
- #elif defined(TARGET_ARM64)
++#include <ucontext.h>
++ #define UCONTEXT_REG_PC(ctx) _UC_MACHINE_PC((ucontext_t*)(ctx))
++ #define UCONTEXT_REG_SP(ctx) _UC_MACHINE_SP((ucontext_t*)(ctx))
++ #define UCONTEXT_REG_R0(ctx) _UC_MACHINE_INTRV((ucontext_t*)(ctx))
++ #define UCONTEXT_GREGS(ctx) (&(((ucontext_t*)(ctx))->uc_mcontext.__gregs))
+ #else
+ #include <ucontext.h>
+ #define UCONTEXT_REG_PC(ctx) (((ucontext_t*)(ctx))->uc_mcontext.pc)
Index: pkgsrc/lang/mono/patches/patch-mono_utils_mono-threads-posix.c
diff -u pkgsrc/lang/mono/patches/patch-mono_utils_mono-threads-posix.c:1.2 pkgsrc/lang/mono/patches/patch-mono_utils_mono-threads-posix.c:1.3
--- pkgsrc/lang/mono/patches/patch-mono_utils_mono-threads-posix.c:1.2 Sun Nov 30 08:40:51 2014
+++ pkgsrc/lang/mono/patches/patch-mono_utils_mono-threads-posix.c Wed Mar 3 12:05:41 2021
@@ -1,26 +1,15 @@
-$NetBSD: patch-mono_utils_mono-threads-posix.c,v 1.2 2014/11/30 08:40:51 spz Exp $
+$NetBSD: patch-mono_utils_mono-threads-posix.c,v 1.3 2021/03/03 12:05:41 nia Exp $
---- mono/utils/mono-threads-posix.c.orig 2014-10-04 09:27:43.000000000 +0000
+* 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
-@@ -420,13 +420,21 @@ mono_threads_core_set_name (MonoNativeTh
+@@ -224,7 +224,7 @@ mono_native_thread_id_get (void)
+ gboolean
+ mono_native_thread_id_equals (MonoNativeThreadId id1, MonoNativeThreadId id2)
{
- #ifdef HAVE_PTHREAD_SETNAME_NP
- if (!name) {
-+#ifdef linux
- pthread_setname_np (tid, "");
-+#else
-+ pthread_setname_np (tid, "%s", "");
-+#endif
- } else {
- char n [16];
-
- strncpy (n, name, 16);
- n [15] = '\0';
-+#ifdef linux
- pthread_setname_np (tid, n);
-+#else
-+ pthread_setname_np (tid, "%s", n);
-+#endif
- }
- #endif
+- return pthread_equal (id1, id2);
++ return (id1 == id2);
}
+
+ /*
Added files:
Index: pkgsrc/lang/mono/patches/patch-acceptance-tests_Makefile.in
diff -u /dev/null pkgsrc/lang/mono/patches/patch-acceptance-tests_Makefile.in:1.1
--- /dev/null Wed Mar 3 12:05:42 2021
+++ pkgsrc/lang/mono/patches/patch-acceptance-tests_Makefile.in Wed Mar 3 12:05:41 2021
@@ -0,0 +1,13 @@
+$NetBSD: patch-acceptance-tests_Makefile.in,v 1.1 2021/03/03 12:05:41 nia Exp $
+
+--- acceptance-tests/Makefile.in.orig 2020-04-30 07:53:12.000000000 +0000
++++ acceptance-tests/Makefile.in
+@@ -5853,7 +5853,7 @@ __bump-version-%:
+
+ __bump-branch-%:
+ @if [ "$(BRANCH)" = "" ]; then echo "Usage: make bump-branch-$* BRANCH=<branch> REMOTE_BRANCH=<remote branch>"; exit 1; fi
+- @if [ "$(REMOTE_BRANCH)" == "" ]; then echo "Usage: make bump-branch-$* BRANCH=<branch> REMOTE_BRANCH=<remote branch>"; exit 1; fi
++ @if [ "$(REMOTE_BRANCH)" = "" ]; then echo "Usage: make bump-branch-$* BRANCH=<branch> REMOTE_BRANCH=<remote branch>"; exit 1; fi
+ $(PYTHON) $(SCRIPT) $(SUBMODULES_CONFIG_FILE) set-branch $* $(BRANCH)
+ $(PYTHON) $(SCRIPT) $(SUBMODULES_CONFIG_FILE) set-remote-branch $* $(REMOTE_BRANCH)
+ @if [ "$(COMMIT)" = "1" ]; then echo "[submodules] Bump $* to switch to $(BRANCH) $(REMOTE BRANCH)." | git commit -F - $(SUBMODULES_CONFIG_FILE); fi
Index: pkgsrc/lang/mono/patches/patch-acceptance-tests_microbench-perf_sh_in
diff -u /dev/null pkgsrc/lang/mono/patches/patch-acceptance-tests_microbench-perf_sh_in:1.1
--- /dev/null Wed Mar 3 12:05:42 2021
+++ pkgsrc/lang/mono/patches/patch-acceptance-tests_microbench-perf_sh_in Wed Mar 3 12:05:41 2021
@@ -0,0 +1,28 @@
+$NetBSD: patch-acceptance-tests_microbench-perf_sh_in,v 1.1 2021/03/03 12:05:41 nia Exp $
+
+Shell portability.
+
+https://github.com/mono/mono/issues/19694
+
+--- acceptance-tests/microbench-perf.sh.in.orig 2020-02-04 17:00:30.000000000 +0000
++++ acceptance-tests/microbench-perf.sh.in 2020-05-03 13:09:59.908937340 +0000
+@@ -3,15 +3,13 @@
+ aotpattern="--aot="
+
+ # if this is an aot invoke
+-if [[ $@ =~ $aotpattern ]];
+-then
++case "$*" in *"$aotpattern"*)
+ # just aot the code
+ echo "$r/runtime/mono-wrapper $@"
+ exec $r/runtime/mono-wrapper $@
+-else
++;;
++*)
+ # else run it under perf
+ echo "$MONO_PERF_BINARY record -o $r/acceptance-tests/perf.data -v -s -g -- $r/mono/mini/mono-sgen $@"
+ exec $MONO_PERF_BINARY record -o $r/acceptance-tests/perf.data -v -s -g $r/mono/mini/mono-sgen $@
+-fi
+-
+-
++esac
Index: pkgsrc/lang/mono/patches/patch-data_Makefile.am
diff -u /dev/null pkgsrc/lang/mono/patches/patch-data_Makefile.am:1.1
--- /dev/null Wed Mar 3 12:05:42 2021
+++ pkgsrc/lang/mono/patches/patch-data_Makefile.am Wed Mar 3 12:05:41 2021
@@ -0,0 +1,14 @@
+$NetBSD: patch-data_Makefile.am,v 1.1 2021/03/03 12:05:41 nia Exp $
+
+Install configuration files to the examples directory.
+
+--- data/Makefile.am.orig 2019-07-18 07:46:04.000000000 +0000
++++ data/Makefile.am
+@@ -1,6 +1,6 @@
+ SUBDIRS = net_2_0 net_4_0 net_4_5
+
+-monodir = $(sysconfdir)/mono
++monodir = $(datadir)/examples/mono
+ monolldbdir = $(libdir)/mono/lldb
+
+ EXTRA_DIST = \
Index: pkgsrc/lang/mono/patches/patch-data_net__2__0_Browsers_Makefile.am
diff -u /dev/null pkgsrc/lang/mono/patches/patch-data_net__2__0_Browsers_Makefile.am:1.1
--- /dev/null Wed Mar 3 12:05:42 2021
+++ pkgsrc/lang/mono/patches/patch-data_net__2__0_Browsers_Makefile.am Wed Mar 3 12:05:41 2021
@@ -0,0 +1,12 @@
+$NetBSD: patch-data_net__2__0_Browsers_Makefile.am,v 1.1 2021/03/03 12:05:41 nia Exp $
+
+Install configuration files to the examples directory.
+
+--- data/net_2_0/Browsers/Makefile.am.orig 2019-07-18 07:46:04.000000000 +0000
++++ data/net_2_0/Browsers/Makefile.am
+@@ -1,4 +1,4 @@
+-monodir = $(sysconfdir)/mono/2.0/Browsers
++monodir = $(datadir)/examples/mono/2.0/Browsers
+
+ EXTRA_DIST = ../../Browsers/Compat.browser
+
Index: pkgsrc/lang/mono/patches/patch-data_net__2__0_Makefile.am
diff -u /dev/null pkgsrc/lang/mono/patches/patch-data_net__2__0_Makefile.am:1.1
--- /dev/null Wed Mar 3 12:05:42 2021
+++ pkgsrc/lang/mono/patches/patch-data_net__2__0_Makefile.am Wed Mar 3 12:05:41 2021
@@ -0,0 +1,14 @@
+$NetBSD: patch-data_net__2__0_Makefile.am,v 1.1 2021/03/03 12:05:41 nia Exp $
+
+Install configuration files to the examples directory.
+
+--- data/net_2_0/Makefile.am.orig 2019-07-18 07:46:04.000000000 +0000
++++ data/net_2_0/Makefile.am
+@@ -1,6 +1,6 @@
+ SUBDIRS = Browsers
+
+-monodir = $(sysconfdir)/mono/2.0
++monodir = $(datadir)/examples/mono/2.0
+
+ EXTRA_DIST = machine.config \
+ web.config \
Index: pkgsrc/lang/mono/patches/patch-data_net__4__0_Browsers_Makefile.am
diff -u /dev/null pkgsrc/lang/mono/patches/patch-data_net__4__0_Browsers_Makefile.am:1.1
--- /dev/null Wed Mar 3 12:05:42 2021
+++ pkgsrc/lang/mono/patches/patch-data_net__4__0_Browsers_Makefile.am Wed Mar 3 12:05:41 2021
@@ -0,0 +1,12 @@
+$NetBSD: patch-data_net__4__0_Browsers_Makefile.am,v 1.1 2021/03/03 12:05:41 nia Exp $
+
+Install configuration files to the examples directory.
+
+--- data/net_4_0/Browsers/Makefile.am.orig 2019-07-18 07:46:04.000000000 +0000
++++ data/net_4_0/Browsers/Makefile.am
+@@ -1,4 +1,4 @@
+-monodir = $(sysconfdir)/mono/4.0/Browsers
++monodir = $(datadir)/examples/mono/4.0/Browsers
+
+ EXTRA_DIST = ../../Browsers/Compat.browser
+
Index: pkgsrc/lang/mono/patches/patch-data_net__4__0_Makefile.am
diff -u /dev/null pkgsrc/lang/mono/patches/patch-data_net__4__0_Makefile.am:1.1
--- /dev/null Wed Mar 3 12:05:42 2021
+++ pkgsrc/lang/mono/patches/patch-data_net__4__0_Makefile.am Wed Mar 3 12:05:41 2021
@@ -0,0 +1,14 @@
+$NetBSD: patch-data_net__4__0_Makefile.am,v 1.1 2021/03/03 12:05:41 nia Exp $
+
+Install configuration files to the examples directory.
+
+--- data/net_4_0/Makefile.am.orig 2019-07-18 07:46:04.000000000 +0000
++++ data/net_4_0/Makefile.am
+@@ -1,6 +1,6 @@
+ SUBDIRS = Browsers
+
+-monodir = $(sysconfdir)/mono/4.0
++monodir = $(datadir)/examples/mono/4.0
+
+ EXTRA_DIST = machine.config \
+ web.config \
Index: pkgsrc/lang/mono/patches/patch-data_net__4__5_Browsers_Makefile.am
diff -u /dev/null pkgsrc/lang/mono/patches/patch-data_net__4__5_Browsers_Makefile.am:1.1
--- /dev/null Wed Mar 3 12:05:42 2021
+++ pkgsrc/lang/mono/patches/patch-data_net__4__5_Browsers_Makefile.am Wed Mar 3 12:05:41 2021
@@ -0,0 +1,12 @@
+$NetBSD: patch-data_net__4__5_Browsers_Makefile.am,v 1.1 2021/03/03 12:05:41 nia Exp $
+
+Install configuration files to the examples directory.
+
+--- data/net_4_5/Browsers/Makefile.am.orig 2019-07-18 07:46:04.000000000 +0000
++++ data/net_4_5/Browsers/Makefile.am
+@@ -1,4 +1,4 @@
+-monodir = $(sysconfdir)/mono/4.5/Browsers
++monodir = $(datadir)/examples/mono/4.5/Browsers
+
+ EXTRA_DIST = ../../Browsers/Compat.browser
+
Index: pkgsrc/lang/mono/patches/patch-data_net__4__5_Makefile.am
diff -u /dev/null pkgsrc/lang/mono/patches/patch-data_net__4__5_Makefile.am:1.1
--- /dev/null Wed Mar 3 12:05:42 2021
+++ pkgsrc/lang/mono/patches/patch-data_net__4__5_Makefile.am Wed Mar 3 12:05:41 2021
@@ -0,0 +1,14 @@
+$NetBSD: patch-data_net__4__5_Makefile.am,v 1.1 2021/03/03 12:05:41 nia Exp $
+
+Install configuration files to the examples directory.
+
+--- data/net_4_5/Makefile.am.orig 2019-07-18 07:46:04.000000000 +0000
++++ data/net_4_5/Makefile.am
+@@ -1,6 +1,6 @@
+ SUBDIRS = Browsers
+
+-monodir = $(sysconfdir)/mono/4.5
++monodir = $(datadir)/examples/mono/4.5
+
+ EXTRA_DIST = machine.config \
+ web.config \
Index: pkgsrc/lang/mono/patches/patch-external_corert_src_Native_gc_env_gcenv.structs.h
diff -u /dev/null pkgsrc/lang/mono/patches/patch-external_corert_src_Native_gc_env_gcenv.structs.h:1.1
--- /dev/null Wed Mar 3 12:05:42 2021
+++ pkgsrc/lang/mono/patches/patch-external_corert_src_Native_gc_env_gcenv.structs.h Wed Mar 3 12:05:41 2021
@@ -0,0 +1,15 @@
+$NetBSD: patch-external_corert_src_Native_gc_env_gcenv.structs.h,v 1.1 2021/03/03 12:05:41 nia 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/mono/patches/patch-mono_eglib_giconv.c
diff -u /dev/null pkgsrc/lang/mono/patches/patch-mono_eglib_giconv.c:1.1
--- /dev/null Wed Mar 3 12:05:42 2021
+++ pkgsrc/lang/mono/patches/patch-mono_eglib_giconv.c Wed Mar 3 12:05:41 2021
@@ -0,0 +1,30 @@
+$NetBSD: patch-mono_eglib_giconv.c,v 1.1 2021/03/03 12:05:41 nia Exp $
+
+Support POSIX iconv(3) on modern NetBSD.
+
+--- mono/eglib/giconv.c.orig 2020-04-30 07:46:10.000000000 +0000
++++ mono/eglib/giconv.c
+@@ -37,6 +37,14 @@
+ #define FORCE_INLINE(RET_TYPE) inline RET_TYPE __attribute__((always_inline))
+ #endif
+
++#if defined(__NetBSD__)
++#include <sys/param.h>
++#if __NetBSD_Prereq__(9,99,17)
++#define NETBSD_POSIX_ICONV 1
++#else
++#define NETBSD_POSIX_ICONV 0
++#endif
++#endif
+
+ #define UNROLL_DECODE_UTF8 0
+ #define UNROLL_ENCODE_UTF8 0
+@@ -197,7 +205,7 @@ g_iconv (GIConv cd, gchar **inbytes, gsi
+ outleftptr = NULL;
+ }
+ // AIX needs this for C++ and GNU iconv
+-#if defined(__NetBSD__) || defined(_AIX)
++#if (defined(__NetBSD__) && !NETBSD_POSIX_ICONV) || defined(_AIX)
+ return iconv (cd->cd, (const gchar **)inbytes, inleftptr, outbytes, outleftptr);
+ #else
+ return iconv (cd->cd, inbytes, inleftptr, outbytes, outleftptr);
Index: pkgsrc/lang/mono/patches/patch-mono_metadata_w32mutex-unix.c
diff -u /dev/null pkgsrc/lang/mono/patches/patch-mono_metadata_w32mutex-unix.c:1.1
--- /dev/null Wed Mar 3 12:05:42 2021
+++ pkgsrc/lang/mono/patches/patch-mono_metadata_w32mutex-unix.c Wed Mar 3 12:05:41 2021
@@ -0,0 +1,51 @@
+$NetBSD: patch-mono_metadata_w32mutex-unix.c,v 1.1 2021/03/03 12:05:41 nia 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/mono/patches/patch-mono_mini_Makefile.am.in
diff -u /dev/null pkgsrc/lang/mono/patches/patch-mono_mini_Makefile.am.in:1.1
--- /dev/null Wed Mar 3 12:05:42 2021
+++ pkgsrc/lang/mono/patches/patch-mono_mini_Makefile.am.in Wed Mar 3 12:05:41 2021
@@ -0,0 +1,13 @@
+$NetBSD: patch-mono_mini_Makefile.am.in,v 1.1 2021/03/03 12:05:41 nia Exp $
+
+--- mono/mini/Makefile.am.in.orig 2020-03-27 23:41:36.181681899 +0000
++++ mono/mini/Makefile.am.in
+@@ -1002,7 +1002,7 @@ endif
+ MONO_PATH=$(FULLAOT_MONO_PATH) $(top_builddir)/runtime/mono-wrapper $(MOBILE_RUNTIME_ARG) $(LLVM_AOT_RUNTIME_OPTS) $(GSHAREDVT_RUNTIME_OPTS)
--aot="$(FULLAOT_AOT_ARGS),$(LLVM_AOT_COMPILER_OPTS)" $(FULLAOT_TMP_DIR)/{$(fullaot_testing_deps_commas),*.exe} || exit 1
+ ln -s $(if $(MONO_EXECUTABLE),$(MONO_EXECUTABLE),$$PWD/mono) $(FULLAOT_TMP_DIR)/
+ for i in $(fullaot_regtests); do echo $$i; MONO_PATH=$(FULLAOT_MONO_PATH) $(top_builddir)/runtime/mono-wrapper $(MOBILE_RUNTIME_ARG) $(FULLAOT_ARGS) $(FULLAOT_TMP_DIR)/$$i --exclude
'!FULLAOT' $(ARCH_FULLAOT_EXCLUDE) || exit 1; done
+- if test x$(MIXED) == x1; then failed=0;i=0; while test $$i -lt 900; do i=`expr $$i + 1`; bash -c "echo -n '.'"; MONO_PATH=$(FULLAOT_MONO_PATH) MONO_DEBUG=aot-skip=$$i
$(top_builddir)/runtime/mono-wrapper --full-aot-interp $(FULLAOT_TMP_DIR)/basic.exe > $(FULLAOT_TMP_DIR)/mixed.log || failed=1; if test $$failed -eq 1; then echo "Failed at $$i"; exit $$failed; fi;
done; fi
++ if test x$(MIXED) = x1; then failed=0;i=0; while test $$i -lt 900; do i=`expr $$i + 1`; bash -c "echo -n '.'"; MONO_PATH=$(FULLAOT_MONO_PATH) MONO_DEBUG=aot-skip=$$i
$(top_builddir)/runtime/mono-wrapper --full-aot-interp $(FULLAOT_TMP_DIR)/basic.exe > $(FULLAOT_TMP_DIR)/mixed.log || failed=1; if test $$failed -eq 1; then echo "Failed at $$i"; exit $$failed; fi;
done; fi
+
+ # This can run in parallel
+ fullaot-libs: $(patsubst %,fullaot-tmp/%.dylib,$(FULLAOT_LIBS))
Index: pkgsrc/lang/mono/patches/patch-mono_mini_Makefile.in
diff -u /dev/null pkgsrc/lang/mono/patches/patch-mono_mini_Makefile.in:1.1
--- /dev/null Wed Mar 3 12:05:42 2021
+++ pkgsrc/lang/mono/patches/patch-mono_mini_Makefile.in Wed Mar 3 12:05:41 2021
@@ -0,0 +1,13 @@
+$NetBSD: patch-mono_mini_Makefile.in,v 1.1 2021/03/03 12:05:41 nia Exp $
+
+--- mono/mini/Makefile.in.orig 2020-03-27 23:42:13.693641403 +0000
++++ mono/mini/Makefile.in
+@@ -3314,7 +3314,7 @@ fullaotcheck: $(mono) $(fullaot_regtests
+ MONO_PATH=$(FULLAOT_MONO_PATH) $(top_builddir)/runtime/mono-wrapper $(MOBILE_RUNTIME_ARG) $(LLVM_AOT_RUNTIME_OPTS) $(GSHAREDVT_RUNTIME_OPTS)
--aot="$(FULLAOT_AOT_ARGS),$(LLVM_AOT_COMPILER_OPTS)" $(FULLAOT_TMP_DIR)/{$(fullaot_testing_deps_commas),*.exe} || exit 1
+ ln -s $(if $(MONO_EXECUTABLE),$(MONO_EXECUTABLE),$$PWD/mono) $(FULLAOT_TMP_DIR)/
+ for i in $(fullaot_regtests); do echo $$i; MONO_PATH=$(FULLAOT_MONO_PATH) $(top_builddir)/runtime/mono-wrapper $(MOBILE_RUNTIME_ARG) $(FULLAOT_ARGS) $(FULLAOT_TMP_DIR)/$$i --exclude
'!FULLAOT' $(ARCH_FULLAOT_EXCLUDE) || exit 1; done
+- if test x$(MIXED) == x1; then failed=0;i=0; while test $$i -lt 900; do i=`expr $$i + 1`; bash -c "echo -n '.'"; MONO_PATH=$(FULLAOT_MONO_PATH) MONO_DEBUG=aot-skip=$$i
$(top_builddir)/runtime/mono-wrapper --full-aot-interp $(FULLAOT_TMP_DIR)/basic.exe > $(FULLAOT_TMP_DIR)/mixed.log || failed=1; if test $$failed -eq 1; then echo "Failed at $$i"; exit $$failed; fi;
done; fi
++ if test x$(MIXED) = x1; then failed=0;i=0; while test $$i -lt 900; do i=`expr $$i + 1`; bash -c "echo -n '.'"; MONO_PATH=$(FULLAOT_MONO_PATH) MONO_DEBUG=aot-skip=$$i
$(top_builddir)/runtime/mono-wrapper --full-aot-interp $(FULLAOT_TMP_DIR)/basic.exe > $(FULLAOT_TMP_DIR)/mixed.log || failed=1; if test $$failed -eq 1; then echo "Failed at $$i"; exit $$failed; fi;
done; fi
+
+ # This can run in parallel
+ fullaot-libs: $(patsubst %,fullaot-tmp/%.dylib,$(FULLAOT_LIBS))
Index: pkgsrc/lang/mono/patches/patch-mono_tests_Makefile.am
diff -u /dev/null pkgsrc/lang/mono/patches/patch-mono_tests_Makefile.am:1.1
--- /dev/null Wed Mar 3 12:05:42 2021
+++ pkgsrc/lang/mono/patches/patch-mono_tests_Makefile.am Wed Mar 3 12:05:41 2021
@@ -0,0 +1,13 @@
+$NetBSD: patch-mono_tests_Makefile.am,v 1.1 2021/03/03 12:05:41 nia Exp $
+
+--- mono/tests/Makefile.am.orig 2020-03-27 23:57:32.877761629 +0000
++++ mono/tests/Makefile.am
+@@ -5,7 +5,7 @@ SUBDIRS = gc-descriptors . testing_gac a
+ check-local:
+ ok=:; \
+ $(MAKE) test-tailcall || ok=false; \
+- if test x$(IGNORE_TEST_JIT) == x; then $(MAKE) test-jit || ok=false; fi; \
++ if test x$(IGNORE_TEST_JIT) = x; then $(MAKE) test-jit || ok=false; fi; \
+ $(MAKE) test-generic-sharing || ok=false; \
+ $(MAKE) test-type-load || ok=false; \
+ $(MAKE) test-multi-netmodule || ok=false; \
Index: pkgsrc/lang/mono/patches/patch-mono_tests_Makefile.in
diff -u /dev/null pkgsrc/lang/mono/patches/patch-mono_tests_Makefile.in:1.1
--- /dev/null Wed Mar 3 12:05:42 2021
+++ pkgsrc/lang/mono/patches/patch-mono_tests_Makefile.in Wed Mar 3 12:05:41 2021
@@ -0,0 +1,13 @@
+$NetBSD: patch-mono_tests_Makefile.in,v 1.1 2021/03/03 12:05:41 nia Exp $
+
+--- mono/tests/Makefile.in.orig 2020-03-27 23:45:58.917886158 +0000
++++ mono/tests/Makefile.in
+@@ -2682,7 +2682,7 @@ uninstall-am:
+ check-local:
+ ok=:; \
+ $(MAKE) test-tailcall || ok=false; \
+- if test x$(IGNORE_TEST_JIT) == x; then $(MAKE) test-jit || ok=false; fi; \
++ if test x$(IGNORE_TEST_JIT) = x; then $(MAKE) test-jit || ok=false; fi; \
+ $(MAKE) test-generic-sharing || ok=false; \
+ $(MAKE) test-type-load || ok=false; \
+ $(MAKE) test-multi-netmodule || ok=false; \
Index: pkgsrc/lang/mono/patches/patch-mono_utils_jemalloc_Makefile.in
diff -u /dev/null pkgsrc/lang/mono/patches/patch-mono_utils_jemalloc_Makefile.in:1.1
--- /dev/null Wed Mar 3 12:05:42 2021
+++ pkgsrc/lang/mono/patches/patch-mono_utils_jemalloc_Makefile.in Wed Mar 3 12:05:41 2021
@@ -0,0 +1,13 @@
+$NetBSD: patch-mono_utils_jemalloc_Makefile.in,v 1.1 2021/03/03 12:05:41 nia Exp $
+
+--- mono/utils/jemalloc/Makefile.in.orig 2020-04-30 07:53:15.000000000 +0000
++++ mono/utils/jemalloc/Makefile.in
+@@ -743,7 +743,7 @@ __bump-version-%:
+
+ __bump-branch-%:
+ @if [ "$(BRANCH)" = "" ]; then echo "Usage: make bump-branch-$* BRANCH=<branch> REMOTE_BRANCH=<remote branch>"; exit 1; fi
+- @if [ "$(REMOTE_BRANCH)" == "" ]; then echo "Usage: make bump-branch-$* BRANCH=<branch> REMOTE_BRANCH=<remote branch>"; exit 1; fi
++ @if [ "$(REMOTE_BRANCH)" = "" ]; then echo "Usage: make bump-branch-$* BRANCH=<branch> REMOTE_BRANCH=<remote branch>"; exit 1; fi
+ $(PYTHON) $(SCRIPT) $(SUBMODULES_CONFIG_FILE) set-branch $* $(BRANCH)
+ $(PYTHON) $(SCRIPT) $(SUBMODULES_CONFIG_FILE) set-remote-branch $* $(REMOTE_BRANCH)
+ @if [ "$(COMMIT)" = "1" ]; then echo "[submodules] Bump $* to switch to $(BRANCH) $(REMOTE BRANCH)." | git commit -F - $(SUBMODULES_CONFIG_FILE); fi
Index: pkgsrc/lang/mono/patches/patch-mono_utils_mono-os-semaphore.h
diff -u /dev/null pkgsrc/lang/mono/patches/patch-mono_utils_mono-os-semaphore.h:1.1
--- /dev/null Wed Mar 3 12:05:42 2021
+++ pkgsrc/lang/mono/patches/patch-mono_utils_mono-os-semaphore.h Wed Mar 3 12:05:41 2021
@@ -0,0 +1,16 @@
+$NetBSD: patch-mono_utils_mono-os-semaphore.h,v 1.1 2021/03/03 12:05:41 nia Exp $
+
+XXX netbsd will return EBUSY if we try to destroy a semaphore
+that something is waiting on. This apparently occurs in practice.
+
+--- mono/utils/mono-os-semaphore.h.orig 2019-07-18 07:46:08.000000000 +0000
++++ mono/utils/mono-os-semaphore.h
+@@ -190,6 +190,8 @@ mono_os_sem_destroy (MonoSemType *sem)
+ int res;
+
+ res = sem_destroy (sem);
++ if ((res != 0) && (errno = EBUSY))
++ res = 0;
+ if (G_UNLIKELY (res != 0))
+ g_error ("%s: sem_destroy failed with \"%s\" (%d)", __func__, g_strerror (errno), errno);
+ }
Index: pkgsrc/lang/mono/patches/patch-mono_utils_mono-utils-debug.c
diff -u /dev/null pkgsrc/lang/mono/patches/patch-mono_utils_mono-utils-debug.c:1.1
--- /dev/null Wed Mar 3 12:05:42 2021
+++ pkgsrc/lang/mono/patches/patch-mono_utils_mono-utils-debug.c Wed Mar 3 12:05:41 2021
@@ -0,0 +1,46 @@
+$NetBSD: patch-mono_utils_mono-utils-debug.c,v 1.1 2021/03/03 12:05:41 nia Exp $
+
+Learn to use kinfo_proc2 on netbsd
+
+--- mono/utils/mono-utils-debug.c.orig 2020-02-04 17:00:34.000000000 +0000
++++ mono/utils/mono-utils-debug.c
+@@ -32,6 +32,8 @@ mono_is_usermode_native_debugger_present
+ #endif
+ #if defined (__NetBSD__)
+ #include <kvm.h>
++#include <sys/param.h>
++#include <sys/sysctl.h>
+ #endif
+ #if defined (_AIX)
+ #include <procinfo.h>
+@@ -74,14 +76,23 @@ mono_is_usermode_native_debugger_present
+
+ #elif defined (__NetBSD__)
+
+- kvm_t * const kd = kvm_open (NULL, NULL, NULL, KVM_NO_FILES, "kvm_open");
+- if (!kd)
++ struct kinfo_proc2 p;
++ size_t len = sizeof(p);
++ int name[] = {
++ [0] = CTL_KERN,
++ [1] = KERN_PROC2,
++ [2] = KERN_PROC_PID,
++ [3] = getpid(),
++ [4] = (int)(sizeof(struct kinfo_proc2)),
++ [5] = 1
++ };
++
++ const size_t namelen = __arraycount(name);
++
++ if (sysctl(name, namelen, &p, &len, NULL, 0) == -1)
+ return FALSE;
+- int count = 0;
+- struct kinfo_proc const * const info = kvm_getprocs (kd, KERN_PROC_PID, getpid (), &count);
+- gboolean const traced = info && count > 0 && (info->kp_proc.p_slflag & PSL_TRACED);
+- kvm_close (kd);
+- return traced;
++
++ return (p.p_flag & P_TRACED) ? TRUE : FALSE;
+
+ #elif defined (_AIX)
+
Index: pkgsrc/lang/mono/patches/patch-runtime_mono-wrapper.in
diff -u /dev/null pkgsrc/lang/mono/patches/patch-runtime_mono-wrapper.in:1.1
--- /dev/null Wed Mar 3 12:05:42 2021
+++ pkgsrc/lang/mono/patches/patch-runtime_mono-wrapper.in Wed Mar 3 12:05:41 2021
@@ -0,0 +1,12 @@
+$NetBSD: patch-runtime_mono-wrapper.in,v 1.1 2021/03/03 12:05:41 nia Exp $
+
+Mark the mono executable as not MPROTECT safe during the build.
+
+--- runtime/mono-wrapper.in.orig 2019-07-18 07:46:08.000000000 +0000
++++ runtime/mono-wrapper.in
+@@ -8,4 +8,5 @@ then
+ fi
+ MONO_EXECUTABLE=${MONO_EXECUTABLE:-"$r/@mono_runtime@"}
+ export MONO_CFG_DIR PATH
++$PAXCTL +m $(readlink -f "$MONO_EXECUTABLE") 2>/dev/null | true
+ exec "$r/libtool" --mode=execute "${MONO_EXECUTABLE_WRAPPER}" --config "@mono_cfg_dir@/mono/config" "$@"
Index: pkgsrc/lang/mono/patches/patch-scripts_submodules_versions.mk
diff -u /dev/null pkgsrc/lang/mono/patches/patch-scripts_submodules_versions.mk:1.1
--- /dev/null Wed Mar 3 12:05:42 2021
+++ pkgsrc/lang/mono/patches/patch-scripts_submodules_versions.mk Wed Mar 3 12:05:41 2021
@@ -0,0 +1,13 @@
+$NetBSD: patch-scripts_submodules_versions.mk,v 1.1 2021/03/03 12:05:41 nia Exp $
+
+--- scripts/submodules/versions.mk.orig 2020-04-30 07:46:10.000000000 +0000
++++ scripts/submodules/versions.mk
+@@ -111,7 +111,7 @@ __bump-version-%:
+
+ __bump-branch-%:
+ @if [ "$(BRANCH)" = "" ]; then echo "Usage: make bump-branch-$* BRANCH=<branch> REMOTE_BRANCH=<remote branch>"; exit 1; fi
+- @if [ "$(REMOTE_BRANCH)" == "" ]; then echo "Usage: make bump-branch-$* BRANCH=<branch> REMOTE_BRANCH=<remote branch>"; exit 1; fi
++ @if [ "$(REMOTE_BRANCH)" = "" ]; then echo "Usage: make bump-branch-$* BRANCH=<branch> REMOTE_BRANCH=<remote branch>"; exit 1; fi
+ $(PYTHON) $(SCRIPT) $(SUBMODULES_CONFIG_FILE) set-branch $* $(BRANCH)
+ $(PYTHON) $(SCRIPT) $(SUBMODULES_CONFIG_FILE) set-remote-branch $* $(REMOTE_BRANCH)
+ @if [ "$(COMMIT)" = "1" ]; then echo "[submodules] Bump $* to switch to $(BRANCH) $(REMOTE BRANCH)." | git commit -F - $(SUBMODULES_CONFIG_FILE); fi
Index: pkgsrc/lang/mono/patches/patch-support_minizip_ioapi.c
diff -u /dev/null pkgsrc/lang/mono/patches/patch-support_minizip_ioapi.c:1.1
--- /dev/null Wed Mar 3 12:05:42 2021
+++ pkgsrc/lang/mono/patches/patch-support_minizip_ioapi.c Wed Mar 3 12:05:41 2021
@@ -0,0 +1,15 @@
+$NetBSD: patch-support_minizip_ioapi.c,v 1.1 2021/03/03 12:05:41 nia Exp $
+
+* NetBSD has no 64-bit functions like macOS.
+
+--- 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) || 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)
Home |
Main Index |
Thread Index |
Old Index