File 0585-erts-export-the-driver-steal-API-on-macos.patch of Package erlang
From 95988a9d7c5590f62c0c28804279788c32f713c1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Lukas=20Backstr=C3=B6m?= <lukas@erlang.org>
Date: Fri, 23 May 2025 12:29:48 +0200
Subject: [PATCH 5/5] erts: export the driver steal API on macos
---
erts/emulator/beam/erl_driver.h | 9 +++++++++
erts/emulator/beam/erl_drv_thread.c | 8 --------
2 files changed, 9 insertions(+), 8 deletions(-)
diff --git a/erts/emulator/beam/erl_driver.h b/erts/emulator/beam/erl_driver.h
index 8d739f8d6b..207fa8e312 100644
--- a/erts/emulator/beam/erl_driver.h
+++ b/erts/emulator/beam/erl_driver.h
@@ -492,6 +492,15 @@ EXTERN char* erl_drv_cond_name(ErlDrvCond *cnd);
EXTERN char* erl_drv_rwlock_name(ErlDrvRWLock *rwlck);
EXTERN char* erl_drv_thread_name(ErlDrvTid tid);
+#if defined(__DARWIN__)
+EXTERN int erl_drv_stolen_main_thread_join(ErlDrvTid tid, void **respp);
+EXTERN int erl_drv_steal_main_thread(char *name,
+ ErlDrvTid *dtid,
+ void* (*func)(void*),
+ void* arg,
+ ErlDrvThreadOpts *opts);
+#endif
+
/*
* Misc.
*/
diff --git a/erts/emulator/beam/erl_drv_thread.c b/erts/emulator/beam/erl_drv_thread.c
index 81432dfb81..00b4530afb 100644
--- a/erts/emulator/beam/erl_drv_thread.c
+++ b/erts/emulator/beam/erl_drv_thread.c
@@ -733,14 +733,6 @@ erl_drv_thread_join(ErlDrvTid tid, void **respp)
extern int erts_darwin_main_thread_pipe[2];
extern int erts_darwin_main_thread_result_pipe[2];
-int erl_drv_stolen_main_thread_join(ErlDrvTid tid, void **respp);
-int erl_drv_steal_main_thread(char *name,
- ErlDrvTid *dtid,
- void* (*func)(void*),
- void* arg,
- ErlDrvThreadOpts *opts);
-
-
int
erl_drv_stolen_main_thread_join(ErlDrvTid tid, void **respp)
{
--
2.51.0