about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2022-12-06 18:05:42 +0100
committerptitSeb <sebastien.chev@gmail.com>2022-12-06 18:05:42 +0100
commitb8300add62f1a865e3daf1077e6b6e1d61ea6240 (patch)
treea9c3d012128795f9f76ca97b7f08c691a599b057 /src
parent97cb1e2080245cb3607bb22404605a194d040e58 (diff)
downloadbox64-b8300add62f1a865e3daf1077e6b6e1d61ea6240.tar.gz
box64-b8300add62f1a865e3daf1077e6b6e1d61ea6240.zip
Added wrapped libxcb-sync.so (helps #468)
Diffstat (limited to 'src')
-rwxr-xr-xsrc/library_list.h1
-rw-r--r--src/wrapped/generated/functions_list.txt2
-rw-r--r--src/wrapped/generated/wrappedlibxcbsyncdefs.h8
-rw-r--r--src/wrapped/generated/wrappedlibxcbsynctypes.h17
-rw-r--r--src/wrapped/generated/wrappedlibxcbsyncundefs.h8
-rw-r--r--src/wrapped/generated/wrapper.c3
-rw-r--r--src/wrapped/generated/wrapper.h1
-rw-r--r--src/wrapped/wrappedlibxcbsync.c23
-rw-r--r--src/wrapped/wrappedlibxcbsync_private.h95
9 files changed, 158 insertions, 0 deletions
diff --git a/src/library_list.h b/src/library_list.h
index 820e2516..99ece64a 100755
--- a/src/library_list.h
+++ b/src/library_list.h
@@ -68,6 +68,7 @@ GO("libxcb-icccm.so.4", libxcbicccm)
 GO("libxcb-util.so.1", libxcbutil)
 GO("libxcb-render-util.so.0", libxcbrenderutil)
 GO("libxcb-render.so.0", libxcbrender)
+GO("libxcb-sync.so.1", libxcbsync)
 //GO("libxcb-present.so.0", libxcbpresent)
 GO("libXtst.so.6", libxtst)
 GO("libXt.so.6", libxt)
diff --git a/src/wrapped/generated/functions_list.txt b/src/wrapped/generated/functions_list.txt
index ad7f6c25..b2055c3f 100644
--- a/src/wrapped/generated/functions_list.txt
+++ b/src/wrapped/generated/functions_list.txt
@@ -987,6 +987,7 @@
 #() pFppLp
 #() pFpppi
 #() pFpppu
+#() pFpppU
 #() pFpppL
 #() pFpppp
 #() pFSppi
@@ -3537,6 +3538,7 @@ wrappedlibxcbrender:
 wrappedlibxcbrenderutil:
 wrappedlibxcbshape:
 wrappedlibxcbshm:
+wrappedlibxcbsync:
 wrappedlibxcbutil:
 wrappedlibxcbxfixes:
 wrappedlibxcbxtest:
diff --git a/src/wrapped/generated/wrappedlibxcbsyncdefs.h b/src/wrapped/generated/wrappedlibxcbsyncdefs.h
new file mode 100644
index 00000000..908b275d
--- /dev/null
+++ b/src/wrapped/generated/wrappedlibxcbsyncdefs.h
@@ -0,0 +1,8 @@
+/*******************************************************************
+ * File automatically generated by rebuild_wrappers.py (v2.1.0.16) *
+ *******************************************************************/
+#ifndef __wrappedlibxcbsyncDEFS_H_
+#define __wrappedlibxcbsyncDEFS_H_
+
+
+#endif // __wrappedlibxcbsyncDEFS_H_
diff --git a/src/wrapped/generated/wrappedlibxcbsynctypes.h b/src/wrapped/generated/wrappedlibxcbsynctypes.h
new file mode 100644
index 00000000..f1699cd5
--- /dev/null
+++ b/src/wrapped/generated/wrappedlibxcbsynctypes.h
@@ -0,0 +1,17 @@
+/*******************************************************************
+ * File automatically generated by rebuild_wrappers.py (v2.1.0.16) *
+ *******************************************************************/
+#ifndef __wrappedlibxcbsyncTYPES_H_
+#define __wrappedlibxcbsyncTYPES_H_
+
+#ifndef LIBNAME
+#error You should only #include this file inside a wrapped*.c file
+#endif
+#ifndef ADDED_FUNCTIONS
+#define ADDED_FUNCTIONS() 
+#endif
+
+
+#define SUPER() ADDED_FUNCTIONS()
+
+#endif // __wrappedlibxcbsyncTYPES_H_
diff --git a/src/wrapped/generated/wrappedlibxcbsyncundefs.h b/src/wrapped/generated/wrappedlibxcbsyncundefs.h
new file mode 100644
index 00000000..2ad06dac
--- /dev/null
+++ b/src/wrapped/generated/wrappedlibxcbsyncundefs.h
@@ -0,0 +1,8 @@
+/*******************************************************************
+ * File automatically generated by rebuild_wrappers.py (v2.1.0.16) *
+ *******************************************************************/
+#ifndef __wrappedlibxcbsyncUNDEFS_H_
+#define __wrappedlibxcbsyncUNDEFS_H_
+
+
+#endif // __wrappedlibxcbsyncUNDEFS_H_
diff --git a/src/wrapped/generated/wrapper.c b/src/wrapped/generated/wrapper.c
index 220400c3..791fc3c3 100644
--- a/src/wrapped/generated/wrapper.c
+++ b/src/wrapped/generated/wrapper.c
@@ -1021,6 +1021,7 @@ typedef void* (*pFppLL_t)(void*, void*, uintptr_t, uintptr_t);
 typedef void* (*pFppLp_t)(void*, void*, uintptr_t, void*);
 typedef void* (*pFpppi_t)(void*, void*, void*, int64_t);
 typedef void* (*pFpppu_t)(void*, void*, void*, uint64_t);
+typedef void* (*pFpppU_t)(void*, void*, void*, uint64_t);
 typedef void* (*pFpppL_t)(void*, void*, void*, uintptr_t);
 typedef void* (*pFpppp_t)(void*, void*, void*, void*);
 typedef void* (*pFSppi_t)(void*, void*, void*, int64_t);
@@ -3278,6 +3279,7 @@ void pFppLL(x64emu_t *emu, uintptr_t fcn) { pFppLL_t fn = (pFppLL_t)fcn; R_RAX=(
 void pFppLp(x64emu_t *emu, uintptr_t fcn) { pFppLp_t fn = (pFppLp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX); }
 void pFpppi(x64emu_t *emu, uintptr_t fcn) { pFpppi_t fn = (pFpppi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX); }
 void pFpppu(x64emu_t *emu, uintptr_t fcn) { pFpppu_t fn = (pFpppu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint64_t)R_RCX); }
+void pFpppU(x64emu_t *emu, uintptr_t fcn) { pFpppU_t fn = (pFpppU_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint64_t)R_RCX); }
 void pFpppL(x64emu_t *emu, uintptr_t fcn) { pFpppL_t fn = (pFpppL_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX); }
 void pFpppp(x64emu_t *emu, uintptr_t fcn) { pFpppp_t fn = (pFpppp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); }
 void pFSppi(x64emu_t *emu, uintptr_t fcn) { pFSppi_t fn = (pFSppi_t)fcn; R_RAX=(uintptr_t)fn(io_convert((void*)R_RDI), (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX); }
@@ -5400,6 +5402,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &pFppLp) return 1;
 	if (fun == &pFpppi) return 1;
 	if (fun == &pFpppu) return 1;
+	if (fun == &pFpppU) return 1;
 	if (fun == &pFpppL) return 1;
 	if (fun == &pFpppp) return 1;
 	if (fun == &vFiiiii) return 1;
diff --git a/src/wrapped/generated/wrapper.h b/src/wrapped/generated/wrapper.h
index 41a90f1b..cfe5c035 100644
--- a/src/wrapped/generated/wrapper.h
+++ b/src/wrapped/generated/wrapper.h
@@ -1020,6 +1020,7 @@ void pFppLL(x64emu_t *emu, uintptr_t fnc);
 void pFppLp(x64emu_t *emu, uintptr_t fnc);
 void pFpppi(x64emu_t *emu, uintptr_t fnc);
 void pFpppu(x64emu_t *emu, uintptr_t fnc);
+void pFpppU(x64emu_t *emu, uintptr_t fnc);
 void pFpppL(x64emu_t *emu, uintptr_t fnc);
 void pFpppp(x64emu_t *emu, uintptr_t fnc);
 void pFSppi(x64emu_t *emu, uintptr_t fnc);
diff --git a/src/wrapped/wrappedlibxcbsync.c b/src/wrapped/wrappedlibxcbsync.c
new file mode 100644
index 00000000..ee470e8a
--- /dev/null
+++ b/src/wrapped/wrappedlibxcbsync.c
@@ -0,0 +1,23 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#define _GNU_SOURCE         /* See feature_test_macros(7) */
+#include <dlfcn.h>
+
+#include "wrappedlibs.h"
+
+#include "debug.h"
+#include "wrapper.h"
+#include "bridge.h"
+#include "librarian/library_private.h"
+#include "x64emu.h"
+#include "emu/x64emu_private.h"
+#include "callback.h"
+#include "librarian.h"
+#include "box64context.h"
+#include "emu/x64emu_private.h"
+
+const char* libxcbsyncName = "libxcb-sync.so.1";
+#define LIBNAME libxcbsync
+
+#include "wrappedlib_init.h"
diff --git a/src/wrapped/wrappedlibxcbsync_private.h b/src/wrapped/wrappedlibxcbsync_private.h
new file mode 100644
index 00000000..2ca5fdcd
--- /dev/null
+++ b/src/wrapped/wrappedlibxcbsync_private.h
@@ -0,0 +1,95 @@
+#if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA))
+#error meh!
+#endif
+
+//GO(xcb_sync_alarm_end, 
+//GO(xcb_sync_alarm_next, 
+//GO(xcb_sync_await, 
+//GO(xcb_sync_await_checked, 
+//GO(xcb_sync_await_fence, 
+//GO(xcb_sync_await_fence_checked, 
+//GO(xcb_sync_await_fence_fence_list, 
+//GO(xcb_sync_await_fence_fence_list_end, 
+//GO(xcb_sync_await_fence_fence_list_length, 
+//GO(xcb_sync_await_fence_sizeof, 
+//GO(xcb_sync_await_sizeof, 
+//GO(xcb_sync_await_wait_list, 
+//GO(xcb_sync_await_wait_list_iterator, 
+//GO(xcb_sync_await_wait_list_length, 
+//GO(xcb_sync_change_alarm, 
+//GO(xcb_sync_change_alarm_aux, 
+//GO(xcb_sync_change_alarm_aux_checked, 
+//GO(xcb_sync_change_alarm_checked, 
+//GO(xcb_sync_change_alarm_sizeof, 
+//GO(xcb_sync_change_alarm_value_list, 
+//GO(xcb_sync_change_alarm_value_list_serialize, 
+//GO(xcb_sync_change_alarm_value_list_sizeof, 
+//GO(xcb_sync_change_alarm_value_list_unpack, 
+//GO(xcb_sync_change_counter, 
+//GO(xcb_sync_change_counter_checked, 
+//GO(xcb_sync_counter_end, 
+//GO(xcb_sync_counter_next, 
+//GO(xcb_sync_create_alarm, 
+//GO(xcb_sync_create_alarm_aux, 
+//GO(xcb_sync_create_alarm_aux_checked, 
+//GO(xcb_sync_create_alarm_checked, 
+//GO(xcb_sync_create_alarm_sizeof, 
+//GO(xcb_sync_create_alarm_value_list, 
+//GO(xcb_sync_create_alarm_value_list_serialize, 
+//GO(xcb_sync_create_alarm_value_list_sizeof, 
+//GO(xcb_sync_create_alarm_value_list_unpack, 
+GO(xcb_sync_create_counter, pFpppU)
+GO(xcb_sync_create_counter_checked, pFpppU)
+//GO(xcb_sync_create_fence, 
+//GO(xcb_sync_create_fence_checked, 
+//GO(xcb_sync_destroy_alarm, 
+//GO(xcb_sync_destroy_alarm_checked, 
+GO(xcb_sync_destroy_counter, pFppp)
+GO(xcb_sync_destroy_counter_checked, pFppp)
+//GO(xcb_sync_destroy_fence, 
+//GO(xcb_sync_destroy_fence_checked, 
+//GO(xcb_sync_fence_end, 
+//GO(xcb_sync_fence_next, 
+//GO(xcb_sync_get_priority, 
+//GO(xcb_sync_get_priority_reply, 
+//GO(xcb_sync_get_priority_unchecked, 
+DATA(xcb_sync_id, 2*sizeof(void*))
+//GO(xcb_sync_initialize, 
+//GO(xcb_sync_initialize_reply, 
+//GO(xcb_sync_initialize_unchecked, 
+//GO(xcb_sync_int64_end, 
+//GO(xcb_sync_int64_next, 
+//GO(xcb_sync_list_system_counters, 
+//GO(xcb_sync_list_system_counters_counters_iterator, 
+//GO(xcb_sync_list_system_counters_counters_length, 
+//GO(xcb_sync_list_system_counters_reply, 
+//GO(xcb_sync_list_system_counters_sizeof, 
+//GO(xcb_sync_list_system_counters_unchecked, 
+//GO(xcb_sync_query_alarm, 
+//GO(xcb_sync_query_alarm_reply, 
+//GO(xcb_sync_query_alarm_unchecked, 
+//GO(xcb_sync_query_counter, 
+//GO(xcb_sync_query_counter_reply, 
+//GO(xcb_sync_query_counter_unchecked, 
+//GO(xcb_sync_query_fence, 
+//GO(xcb_sync_query_fence_reply, 
+//GO(xcb_sync_query_fence_unchecked, 
+//GO(xcb_sync_reset_fence, 
+//GO(xcb_sync_reset_fence_checked, 
+GO(xcb_sync_set_counter, pFpppU)
+GO(xcb_sync_set_counter_checked, pFpppU)
+//GO(xcb_sync_set_priority, 
+//GO(xcb_sync_set_priority_checked, 
+//GO(xcb_sync_systemcounter_end, 
+//GO(xcb_sync_systemcounter_name, 
+//GO(xcb_sync_systemcounter_name_end, 
+//GO(xcb_sync_systemcounter_name_length, 
+//GO(xcb_sync_systemcounter_next, 
+//GO(xcb_sync_systemcounter_sizeof, 
+//GO(xcb_sync_trigger_end, 
+//GO(xcb_sync_trigger_fence, 
+//GO(xcb_sync_trigger_fence_checked, 
+//GO(xcb_sync_trigger_next, 
+//GO(xcb_sync_waitcondition_end, 
+//GO(xcb_sync_waitcondition_next, 
+