mirror of
https://git.freebsd.org/ports.git
synced 2025-07-18 17:59:20 -04:00
lang/mono5.10,lang/mono: Attempt to fix build on aarch64
The Roslyn C# compiler has a concurrency problem on aarch64: https://github.com/mono/mono/issues/7017 (not FreeBSD specific) so the workaround is to disable parallelism… so the .NET libraries are built very very slowly PR: 229710 Approved by: portmgr (build fix blanket)
This commit is contained in:
parent
b7051d827b
commit
b62ec370c8
4 changed files with 54 additions and 0 deletions
|
@ -66,6 +66,7 @@ OPTIONS_SLAVE= MONOLITE
|
|||
.include <bsd.port.options.mk>
|
||||
|
||||
.if ${ARCH} == aarch64
|
||||
EXTRA_PATCHES= ${FILESDIR}/extra-patch-aarch64-race-workaround
|
||||
PLIST= ${.CURDIR}/pkg-plist.aarch64
|
||||
.endif
|
||||
|
||||
|
|
26
lang/mono/files/extra-patch-aarch64-race-workaround
Normal file
26
lang/mono/files/extra-patch-aarch64-race-workaround
Normal file
|
@ -0,0 +1,26 @@
|
|||
https://bugs.freebsd.org/bugzilla/attachment.cgi?id=195063&action=diff#i/lang/mono/files/extra-patch-aarch64-race-workaround_sec1
|
||||
|
||||
Workaround for Roslyn crash: https://github.com/mono/mono/issues/7017
|
||||
|
||||
--- mcs/build/profiles/basic.make.orig 2021-11-08 19:42:34.845483000 +0100
|
||||
+++ mcs/build/profiles/basic.make 2021-11-08 19:43:00.996003000 +0100
|
||||
@@ -47,7 +47,7 @@ LIBRARY_COMPILE = $(BOOT_COMPILE)
|
||||
#
|
||||
# Copy from rules.make because I don't know how to unset MCS_FLAGS
|
||||
#
|
||||
-USE_MCS_FLAGS = /codepage:$(CODEPAGE) /nologo /noconfig /deterministic $(LOCAL_MCS_FLAGS) $(PLATFORM_MCS_FLAGS) $(PROFILE_MCS_FLAGS) $(MCS_FLAGS)
|
||||
+USE_MCS_FLAGS = /codepage:$(CODEPAGE) /parallel- /nologo /noconfig /deterministic $(LOCAL_MCS_FLAGS) $(PLATFORM_MCS_FLAGS) $(PROFILE_MCS_FLAGS) $(MCS_FLAGS)
|
||||
|
||||
.PHONY: profile-check do-profile-check
|
||||
profile-check:
|
||||
--- mcs/build/rules.make.orig 2021-11-08 19:43:05.777570000 +0100
|
||||
+++ mcs/build/rules.make 2021-11-08 19:43:20.886314000 +0100
|
||||
@@ -34,7 +34,7 @@ BUILD_TOOLS_PROFILE = build
|
||||
endif
|
||||
endif
|
||||
|
||||
-USE_MCS_FLAGS = /codepage:$(CODEPAGE) /nologo /noconfig /deterministic $(LOCAL_MCS_FLAGS) $(PLATFORM_MCS_FLAGS) $(PROFILE_MCS_FLAGS) $(MCS_FLAGS)
|
||||
+USE_MCS_FLAGS = /codepage:$(CODEPAGE) /parallel- /nologo /noconfig /deterministic $(LOCAL_MCS_FLAGS) $(PLATFORM_MCS_FLAGS) $(PROFILE_MCS_FLAGS) $(MCS_FLAGS)
|
||||
USE_MBAS_FLAGS = /codepage:$(CODEPAGE) $(LOCAL_MBAS_FLAGS) $(PLATFORM_MBAS_FLAGS) $(PROFILE_MBAS_FLAGS) $(MBAS_FLAGS)
|
||||
USE_CFLAGS = $(LOCAL_CFLAGS) $(CFLAGS) $(CPPFLAGS)
|
||||
CSCOMPILE = $(Q_MCS) $(MCS) $(USE_MCS_FLAGS)
|
|
@ -67,6 +67,7 @@ OPTIONS_SLAVE= MONOLITE
|
|||
.include <bsd.port.options.mk>
|
||||
|
||||
.if ${ARCH} == aarch64
|
||||
EXTRA_PATCHES= ${FILESDIR}/extra-patch-aarch64-race-workaround
|
||||
PLIST= ${.CURDIR}/pkg-plist.aarch64
|
||||
.endif
|
||||
|
||||
|
|
26
lang/mono5.10/files/extra-patch-aarch64-race-workaround
Normal file
26
lang/mono5.10/files/extra-patch-aarch64-race-workaround
Normal file
|
@ -0,0 +1,26 @@
|
|||
https://bugs.freebsd.org/bugzilla/attachment.cgi?id=195063&action=diff#i/lang/mono/files/extra-patch-aarch64-race-workaround_sec1
|
||||
|
||||
Workaround for Roslyn crash: https://github.com/mono/mono/issues/7017
|
||||
|
||||
--- mcs/build/profiles/basic.make.orig 2021-11-08 19:42:34.845483000 +0100
|
||||
+++ mcs/build/profiles/basic.make 2021-11-08 19:43:00.996003000 +0100
|
||||
@@ -47,7 +47,7 @@ LIBRARY_COMPILE = $(BOOT_COMPILE)
|
||||
#
|
||||
# Copy from rules.make because I don't know how to unset MCS_FLAGS
|
||||
#
|
||||
-USE_MCS_FLAGS = /codepage:$(CODEPAGE) /nologo /noconfig /deterministic $(LOCAL_MCS_FLAGS) $(PLATFORM_MCS_FLAGS) $(PROFILE_MCS_FLAGS) $(MCS_FLAGS)
|
||||
+USE_MCS_FLAGS = /codepage:$(CODEPAGE) /parallel- /nologo /noconfig /deterministic $(LOCAL_MCS_FLAGS) $(PLATFORM_MCS_FLAGS) $(PROFILE_MCS_FLAGS) $(MCS_FLAGS)
|
||||
|
||||
.PHONY: profile-check do-profile-check
|
||||
profile-check:
|
||||
--- mcs/build/rules.make.orig 2021-11-08 19:43:05.777570000 +0100
|
||||
+++ mcs/build/rules.make 2021-11-08 19:43:20.886314000 +0100
|
||||
@@ -34,7 +34,7 @@ BUILD_TOOLS_PROFILE = build
|
||||
endif
|
||||
endif
|
||||
|
||||
-USE_MCS_FLAGS = /codepage:$(CODEPAGE) /nologo /noconfig /deterministic $(LOCAL_MCS_FLAGS) $(PLATFORM_MCS_FLAGS) $(PROFILE_MCS_FLAGS) $(MCS_FLAGS)
|
||||
+USE_MCS_FLAGS = /codepage:$(CODEPAGE) /parallel- /nologo /noconfig /deterministic $(LOCAL_MCS_FLAGS) $(PLATFORM_MCS_FLAGS) $(PROFILE_MCS_FLAGS) $(MCS_FLAGS)
|
||||
USE_MBAS_FLAGS = /codepage:$(CODEPAGE) $(LOCAL_MBAS_FLAGS) $(PLATFORM_MBAS_FLAGS) $(PROFILE_MBAS_FLAGS) $(MBAS_FLAGS)
|
||||
USE_CFLAGS = $(LOCAL_CFLAGS) $(CFLAGS) $(CPPFLAGS)
|
||||
CSCOMPILE = $(Q_MCS) $(MCS) $(USE_MCS_FLAGS)
|
Loading…
Add table
Reference in a new issue