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

openSUSE Build Service is sponsored by