Compare commits

...

5 Commits

Author SHA1 Message Date
Rémi Verschelde
4912f62a8f Revert "Add patch to fix Linux kernel regression with mmap and MAP_32BIT"
This reverts commit d496154ab1.

The Linux kernel regression has been patched in 6.1.30 and 6.3.4.
2023-06-02 15:55:02 +02:00
Rémi Verschelde
6236e2ee74 CI: Mono 6.12.0.198, Python 3.11, use ubuntu-latest
- Rediff patches against Mono 6.12.0.198.
- Drop `xcode_13_14_fix.diff` which is included upstream in 6.12.0.198.
2023-05-26 12:59:57 +02:00
Rémi Verschelde
d496154ab1 Add patch to fix Linux kernel regression with mmap and MAP_32BIT 2023-05-26 12:58:55 +02:00
Rémi Verschelde
8767196960 Merge pull request #80 from bruvzg/btls_arm_macos
Add patch for ARM64 macOS BTLS build.
2023-02-09 22:57:44 +01:00
bruvzg
a0e457e7c1 Add patch for ARM64 macOS BTLS build. 2023-02-09 21:16:57 +02:00
12 changed files with 88 additions and 28 deletions

View File

@@ -23,8 +23,8 @@ on:
env:
# Use SHA or tag instead of the branch for caching purposes.
MONO_TAG: mono-6.12.0.182
PYTHON_VERSION: '3.10'
MONO_TAG: mono-6.12.0.198
PYTHON_VERSION: '3.11'
# Should match the version that Mono supports.
EMSDK_VERSION: 1.39.9
# platform/iphone/detect.py
@@ -523,7 +523,7 @@ jobs:
with:
python-version: ${{ env.PYTHON_VERSION }}
- name: Setup Emscripten SDK
uses: mymindstorm/setup-emsdk@v11
uses: mymindstorm/setup-emsdk@v12
with:
version: ${{ env.EMSDK_VERSION }}
- name: Patch Mono
@@ -733,7 +733,7 @@ jobs:
if: success() && github.event_name == 'create' && startsWith(github.ref, 'refs/heads/release/')
needs: [linux, windows, osx, ios, ios-cross, android, wasm, bcl]
name: Create Release
runs-on: ubuntu-18.04
runs-on: ubuntu-latest
outputs:
release_upload_url: ${{ steps.create_release.outputs.upload_url }}
steps:
@@ -760,7 +760,7 @@ jobs:
if: success() && github.event_name == 'create' && startsWith(github.ref, 'refs/heads/release/')
needs: create-release
name: Upload Release Artifacts
runs-on: ubuntu-18.04
runs-on: ubuntu-latest
strategy:
matrix:
artifact_name: [linux-x86, linux-x86_64, windows-x86, windows-x86_64, osx-arm64, osx-x86_64,

View File

@@ -3,7 +3,7 @@ on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-20.04
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2

View File

@@ -9,7 +9,7 @@ This repository contains scripts for building the Mono runtime to use with Godot
The scripts are tested against specific versions of the toolchains used by Godot.
While they may work with other versions, you might have issues applying patches or compiling, so we recommend using the versions below.
- Mono: 6.12.0.182.
- Mono: 6.12.0.198.
- Emscripten: 1.39.9.
- Android NDK: 23.2.8568313

View File

@@ -3,11 +3,11 @@ index e57a636ef4d..60c60a8fc17 100644
--- a/mcs/build/rules.make
+++ b/mcs/build/rules.make
@@ -94,7 +94,7 @@ include $(topdir)/build/config-default.make
include $(topdir)/build/platforms/$(BUILD_PLATFORM).make
-PROFILE_PLATFORM = $(if $(PLATFORMS),$(if $(filter $(PLATFORMS),$(HOST_PLATFORM)),$(HOST_PLATFORM),$(error Unknown platform "$(HOST_PLATFORM)" for profile "$(PROFILE)")))
+PROFILE_PLATFORM ?= $(if $(PLATFORMS),$(if $(filter $(PLATFORMS),$(HOST_PLATFORM)),$(HOST_PLATFORM),$(error Unknown platform "$(HOST_PLATFORM)" for profile "$(PROFILE)")))
PROFILE_DIRECTORY = $(PROFILE)$(if $(PROFILE_PLATFORM),-$(PROFILE_PLATFORM))
# Useful

View File

@@ -1,8 +1,8 @@
diff --git a/configure.ac b/configure.ac
index 088128e5e74..54693aace64 100644
index 19b20127ca2..d07afde5e05 100644
--- a/configure.ac
+++ b/configure.ac
@@ -5918,6 +5918,8 @@ if test "x$enable_btls" = "xyes"; then
@@ -5924,6 +5924,8 @@ if test "x$enable_btls" = "xyes"; then
if test "x$HAVE_YASM" != "xyes"; then
BTLS_CMAKE_ARGS="-DOPENSSL_NO_ASM=1"
fi
@@ -11,7 +11,7 @@ index 088128e5e74..54693aace64 100644
;;
esac
;;
@@ -5929,6 +5931,8 @@ if test "x$enable_btls" = "xyes"; then
@@ -5935,6 +5937,8 @@ if test "x$enable_btls" = "xyes"; then
if test "x$HAVE_YASM" != "xyes"; then
BTLS_CMAKE_ARGS="-DOPENSSL_NO_ASM=1"
fi

View File

@@ -0,0 +1,59 @@
diff --git a/configure.ac b/configure.ac
index d07afde5e05..2c052530f2c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -4927,9 +4927,6 @@ if test "x$target_mach" = "xyes"; then
CPPFLAGS_FOR_LIBGC="$CPPFLAGS_FOR_LIBGC -DTARGET_OSX"
CFLAGS_FOR_LIBGC="$CFLAGS_FOR_LIBGC -DTARGET_OSX"
target_osx=yes
- if test "x$TARGET" = "xARM64"; then
- BTLS_SUPPORTED=no
- fi
], [
AC_DEFINE(TARGET_IOS,1,[The JIT/AOT targets iOS])
CPPFLAGS_FOR_LIBGC="$CPPFLAGS_FOR_LIBGC -DTARGET_IOS"
@@ -5952,7 +5949,11 @@ if test "x$enable_btls" = "xyes"; then
;;
aarch64)
btls_arch=aarch64
- btls_cflags="-march=armv8-a+crypto"
+ if test "x$target_mach" = "xyes"; then
+ btls_cflags="-arch arm64"
+ else
+ btls_cflags="-march=armv8-a+crypto"
+ fi
;;
s390x)
btls_arch=s390x
diff --git a/mono/btls/CMakeLists.txt b/mono/btls/CMakeLists.txt
index 9946f5d21a4..a8aa3d07b0e 100644
--- a/mono/btls/CMakeLists.txt
+++ b/mono/btls/CMakeLists.txt
@@ -21,6 +21,15 @@ if (MSVC OR CYGWIN)
set(BTLS_HOST_WIN32 1)
endif ()
+if (NOT "${BTLS_ARCH}" STREQUAL "")
+ message (STATUS "SET ARCH: ${BTLS_ARCH}")
+ set (CMAKE_SYSTEM_PROCESSOR "${BTLS_ARCH}")
+endif ()
+
+if ((("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "arm64") OR ("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "aarch64")) AND APPLE AND NOT IOS)
+ set(OPENSSL_NO_ASM 1)
+endif ()
+
if (NOT OPENSSL_NO_ASM)
if (BTLS_HOST_WIN32)
if (CYGWIN AND "${BTLS_ARCH}" STREQUAL "i386")
@@ -38,11 +47,6 @@ if (NOT OPENSSL_NO_ASM)
endif ()
endif ()
-if (NOT "${BTLS_ARCH}" STREQUAL "")
- message (STATUS "SET ARCH: ${BTLS_ARCH}")
- set (CMAKE_SYSTEM_PROCESSOR "${BTLS_ARCH}")
-endif ()
-
if (NOT MSVC)
if(${CMAKE_SYSTEM_NAME} MATCHES "AIX" OR ${CMAKE_SYSTEM_NAME} MATCHES "OS400")
# GCC+XCOFF doesn't support -fvisibility=hidden, and we would prefer XCOFF debugging info.

View File

@@ -1,8 +1,8 @@
diff --git a/mono/metadata/threads.c b/mono/metadata/threads.c
index ad9b8823f8f..3542b32b540 100644
index 8d6753f2e01..1c1bd460123 100644
--- a/mono/metadata/threads.c
+++ b/mono/metadata/threads.c
@@ -77,8 +77,12 @@ mono_native_thread_join_handle (HANDLE thread_handle, gboolean close_handle);
@@ -78,8 +78,12 @@ mono_native_thread_join_handle (HANDLE thread_handle, gboolean close_handle);
#include <zircon/syscalls.h>
#endif
@@ -18,10 +18,10 @@ index ad9b8823f8f..3542b32b540 100644
#ifdef HOST_ANDROID
diff --git a/mono/utils/mono-threads-posix.c b/mono/utils/mono-threads-posix.c
index 3e4bf93de5f..79c9f731fe7 100644
index cd32e6b042d..5e2fd4618b8 100644
--- a/mono/utils/mono-threads-posix.c
+++ b/mono/utils/mono-threads-posix.c
@@ -31,8 +31,12 @@
@@ -32,8 +32,12 @@
#include <errno.h>

View File

@@ -1,16 +1,16 @@
diff --git a/mono/metadata/threadpool-io.c b/mono/metadata/threadpool-io.c
index fdfef2de91e28..45ac0d84b2429 100644
index a8a947e7dea..b87b59ed5b6 100644
--- a/mono/metadata/threadpool-io.c
+++ b/mono/metadata/threadpool-io.c
@@ -180,6 +180,7 @@ selector_thread_wakeup_drain_pipes (void)
@@ -179,6 +179,7 @@ selector_thread_wakeup_drain_pipes (void)
{
gchar buffer [128];
gint received;
+ static gint warnings_issued = 0;
for (;;) {
#if !defined(HOST_WIN32)
@@ -192,11 +193,16 @@ selector_thread_wakeup_drain_pipes (void)
@@ -191,11 +192,16 @@ selector_thread_wakeup_drain_pipes (void)
* some unices (like AIX) send ERESTART, which doesn't
* exist on some other OSes errno
*/
@@ -30,7 +30,7 @@ index fdfef2de91e28..45ac0d84b2429 100644
break;
}
#else
@@ -204,8 +210,13 @@ selector_thread_wakeup_drain_pipes (void)
@@ -203,8 +209,13 @@ selector_thread_wakeup_drain_pipes (void)
if (received == 0)
break;
if (received == SOCKET_ERROR) {

View File

@@ -1,10 +1,10 @@
diff --git a/mono/mini/debugger-agent.c b/mono/mini/debugger-agent.c
index df6329391df..05f30d5b4dc 100644
index 32bfc471ea2..5087405eed5 100644
--- a/mono/mini/debugger-agent.c
+++ b/mono/mini/debugger-agent.c
@@ -4088,8 +4088,12 @@ thread_startup (MonoProfiler *prof, uintptr_t tid)
@@ -4172,8 +4172,12 @@ thread_startup (MonoProfiler *prof, uintptr_t tid)
}
tls = (DebuggerTlsData *)mono_native_tls_get_value (debugger_tls_id);
- g_assert (!tls);
- // FIXME: Free this somewhere

View File

@@ -1,5 +1,5 @@
diff --git a/mono/utils/mono-log-darwin.c b/mono/utils/mono-log-darwin.c
index 3cb127bad59..30ff5edc307 100644
index 2cb41b1481e..4f566ddb90a 100644
--- a/mono/utils/mono-log-darwin.c
+++ b/mono/utils/mono-log-darwin.c
@@ -5,7 +5,8 @@

View File

@@ -1,5 +1,5 @@
diff --git a/mono/tools/offsets-tool/offsets-tool.py b/mono/tools/offsets-tool/offsets-tool.py
index 35445ba585c..d1586ee5ecd 100644
index f06799cba12..adf7eb4bbd6 100644
--- a/mono/tools/offsets-tool/offsets-tool.py
+++ b/mono/tools/offsets-tool/offsets-tool.py
@@ -54,6 +54,7 @@ class OffsetsTool:

View File

@@ -32,7 +32,8 @@ def main(raw_args):
'bcl-profile-platform-override.diff',
'mono_ios_asl_log_deprecated.diff',
'wasm_m2n_trampolines_hook.diff',
'btls-cmake-args-linux-mingw.diff'
'btls-cmake-args-linux-mingw.diff',
'btls-cmake-arm64.diff',
]
if os.path.isfile(os.path.join(mono_source_root, 'mono/tools/offsets-tool/offsets-tool.py')):