about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2022-12-06 17:30:49 +0100
committerptitSeb <sebastien.chev@gmail.com>2022-12-06 17:30:49 +0100
commit5cf4226c1318e0a4bed74428bab3e2af47da4d8b (patch)
tree8c2ff259184eeaf961e698d717cdef3150c075b9 /src
parent5bb3d8a24ddcff28a418a5fa9c7eda43ef3b690d (diff)
downloadbox64-5cf4226c1318e0a4bed74428bab3e2af47da4d8b.tar.gz
box64-5cf4226c1318e0a4bed74428bab3e2af47da4d8b.zip
Added wrapped libxcb-icccm.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/wrappedlibxcbicccmdefs.h8
-rw-r--r--src/wrapped/generated/wrappedlibxcbicccmtypes.h17
-rw-r--r--src/wrapped/generated/wrappedlibxcbicccmundefs.h8
-rw-r--r--src/wrapped/generated/wrapper.c3
-rw-r--r--src/wrapped/generated/wrapper.h1
-rw-r--r--src/wrapped/wrappedlibxcbicccm.c23
-rw-r--r--src/wrapped/wrappedlibxcbicccm_private.h86
9 files changed, 149 insertions, 0 deletions
diff --git a/src/library_list.h b/src/library_list.h
index 45c62b30..ee630b77 100755
--- a/src/library_list.h
+++ b/src/library_list.h
@@ -64,6 +64,7 @@ GO("libxcb-xtest.so.0", libxcbxtest)
 GO("libxcb-glx.so.0", libxcbglx)
 GO("libxcb-dri2.so.0", libxcbdri2)
 GO("libxcb-dri3.so.0", libxcbdri3)
+GO("libxcb-icccm.so.4", libxcbicccm)
 //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 510fcc67..8b56674d 100644
--- a/src/wrapped/generated/functions_list.txt
+++ b/src/wrapped/generated/functions_list.txt
@@ -858,6 +858,7 @@
 #() IFppip
 #() IFpppp
 #() IFSIii
+#() CFpupp
 #() uFEipp
 #() uFEupp
 #() uFEpup
@@ -3525,6 +3526,7 @@ wrappedlibxcbdri2:
 % x my_xcb_cookie_t u
 wrappedlibxcbdri3:
 wrappedlibxcbglx:
+wrappedlibxcbicccm:
 wrappedlibxcbimage:
 wrappedlibxcbkeysyms:
 wrappedlibxcbrandr:
diff --git a/src/wrapped/generated/wrappedlibxcbicccmdefs.h b/src/wrapped/generated/wrappedlibxcbicccmdefs.h
new file mode 100644
index 00000000..6d90cc32
--- /dev/null
+++ b/src/wrapped/generated/wrappedlibxcbicccmdefs.h
@@ -0,0 +1,8 @@
+/*******************************************************************
+ * File automatically generated by rebuild_wrappers.py (v2.1.0.16) *
+ *******************************************************************/
+#ifndef __wrappedlibxcbicccmDEFS_H_
+#define __wrappedlibxcbicccmDEFS_H_
+
+
+#endif // __wrappedlibxcbicccmDEFS_H_
diff --git a/src/wrapped/generated/wrappedlibxcbicccmtypes.h b/src/wrapped/generated/wrappedlibxcbicccmtypes.h
new file mode 100644
index 00000000..c5683f72
--- /dev/null
+++ b/src/wrapped/generated/wrappedlibxcbicccmtypes.h
@@ -0,0 +1,17 @@
+/*******************************************************************
+ * File automatically generated by rebuild_wrappers.py (v2.1.0.16) *
+ *******************************************************************/
+#ifndef __wrappedlibxcbicccmTYPES_H_
+#define __wrappedlibxcbicccmTYPES_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 // __wrappedlibxcbicccmTYPES_H_
diff --git a/src/wrapped/generated/wrappedlibxcbicccmundefs.h b/src/wrapped/generated/wrappedlibxcbicccmundefs.h
new file mode 100644
index 00000000..08b24dc2
--- /dev/null
+++ b/src/wrapped/generated/wrappedlibxcbicccmundefs.h
@@ -0,0 +1,8 @@
+/*******************************************************************
+ * File automatically generated by rebuild_wrappers.py (v2.1.0.16) *
+ *******************************************************************/
+#ifndef __wrappedlibxcbicccmUNDEFS_H_
+#define __wrappedlibxcbicccmUNDEFS_H_
+
+
+#endif // __wrappedlibxcbicccmUNDEFS_H_
diff --git a/src/wrapped/generated/wrapper.c b/src/wrapped/generated/wrapper.c
index 58f3a108..5215eab4 100644
--- a/src/wrapped/generated/wrapper.c
+++ b/src/wrapped/generated/wrapper.c
@@ -892,6 +892,7 @@ typedef int64_t (*IFppii_t)(void*, void*, int64_t, int64_t);
 typedef int64_t (*IFppip_t)(void*, void*, int64_t, void*);
 typedef int64_t (*IFpppp_t)(void*, void*, void*, void*);
 typedef int64_t (*IFSIii_t)(void*, int64_t, int64_t, int64_t);
+typedef uint8_t (*CFpupp_t)(void*, uint64_t, void*, void*);
 typedef uint64_t (*uFEipp_t)(x64emu_t*, int64_t, void*, void*);
 typedef uint64_t (*uFEupp_t)(x64emu_t*, uint64_t, void*, void*);
 typedef uint64_t (*uFEpup_t)(x64emu_t*, void*, uint64_t, void*);
@@ -3145,6 +3146,7 @@ void IFppii(x64emu_t *emu, uintptr_t fcn) { IFppii_t fn = (IFppii_t)fcn; R_RAX=(
 void IFppip(x64emu_t *emu, uintptr_t fcn) { IFppip_t fn = (IFppip_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX); }
 void IFpppp(x64emu_t *emu, uintptr_t fcn) { IFpppp_t fn = (IFpppp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); }
 void IFSIii(x64emu_t *emu, uintptr_t fcn) { IFSIii_t fn = (IFSIii_t)fcn; R_RAX=(int64_t)fn(io_convert((void*)R_RDI), (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX); }
+void CFpupp(x64emu_t *emu, uintptr_t fcn) { CFpupp_t fn = (CFpupp_t)fcn; R_RAX=(unsigned char)fn((void*)R_RDI, (uint64_t)R_RSI, (void*)R_RDX, (void*)R_RCX); }
 void uFEipp(x64emu_t *emu, uintptr_t fcn) { uFEipp_t fn = (uFEipp_t)fcn; R_RAX=(uint64_t)fn(emu, (int64_t)R_RDI, (void*)R_RSI, (void*)R_RDX); }
 void uFEupp(x64emu_t *emu, uintptr_t fcn) { uFEupp_t fn = (uFEupp_t)fcn; R_RAX=(uint64_t)fn(emu, (uint64_t)R_RDI, (void*)R_RSI, (void*)R_RDX); }
 void uFEpup(x64emu_t *emu, uintptr_t fcn) { uFEpup_t fn = (uFEpup_t)fcn; R_RAX=(uint64_t)fn(emu, (void*)R_RDI, (uint64_t)R_RSI, (void*)R_RDX); }
@@ -5283,6 +5285,7 @@ int isSimpleWrapper(wrapper_t fun) {
 	if (fun == &IFppii) return 1;
 	if (fun == &IFppip) return 1;
 	if (fun == &IFpppp) return 1;
+	if (fun == &CFpupp) return 1;
 	if (fun == &uFifff) return 4;
 	if (fun == &uFuuuu) return 1;
 	if (fun == &uFpiip) return 1;
diff --git a/src/wrapped/generated/wrapper.h b/src/wrapped/generated/wrapper.h
index 60d6dd91..3e86e4d5 100644
--- a/src/wrapped/generated/wrapper.h
+++ b/src/wrapped/generated/wrapper.h
@@ -891,6 +891,7 @@ void IFppii(x64emu_t *emu, uintptr_t fnc);
 void IFppip(x64emu_t *emu, uintptr_t fnc);
 void IFpppp(x64emu_t *emu, uintptr_t fnc);
 void IFSIii(x64emu_t *emu, uintptr_t fnc);
+void CFpupp(x64emu_t *emu, uintptr_t fnc);
 void uFEipp(x64emu_t *emu, uintptr_t fnc);
 void uFEupp(x64emu_t *emu, uintptr_t fnc);
 void uFEpup(x64emu_t *emu, uintptr_t fnc);
diff --git a/src/wrapped/wrappedlibxcbicccm.c b/src/wrapped/wrappedlibxcbicccm.c
new file mode 100644
index 00000000..5ff0c459
--- /dev/null
+++ b/src/wrapped/wrappedlibxcbicccm.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* libxcbicccmName = "libxcb-icccm.so.4";
+#define LIBNAME libxcbicccm
+
+#include "wrappedlib_init.h"
diff --git a/src/wrapped/wrappedlibxcbicccm_private.h b/src/wrapped/wrappedlibxcbicccm_private.h
new file mode 100644
index 00000000..01c25f78
--- /dev/null
+++ b/src/wrapped/wrappedlibxcbicccm_private.h
@@ -0,0 +1,86 @@
+#if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA))
+#error meh!
+#endif
+
+//GO(xcb_icccm_get_text_property, 
+//GO(xcb_icccm_get_text_property_reply, 
+//GO(xcb_icccm_get_text_property_reply_wipe, 
+//GO(xcb_icccm_get_text_property_unchecked, 
+//GO(xcb_icccm_get_wm_class, 
+//GO(xcb_icccm_get_wm_class_from_reply, 
+//GO(xcb_icccm_get_wm_class_reply, 
+//GO(xcb_icccm_get_wm_class_reply_wipe, 
+//GO(xcb_icccm_get_wm_class_unchecked, 
+//GO(xcb_icccm_get_wm_client_machine, 
+//GO(xcb_icccm_get_wm_client_machine_reply, 
+//GO(xcb_icccm_get_wm_client_machine_unchecked, 
+//GO(xcb_icccm_get_wm_colormap_windows, 
+//GO(xcb_icccm_get_wm_colormap_windows_from_reply, 
+//GO(xcb_icccm_get_wm_colormap_windows_reply, 
+//GO(xcb_icccm_get_wm_colormap_windows_reply_wipe, 
+//GO(xcb_icccm_get_wm_colormap_windows_unchecked, 
+//GO(xcb_icccm_get_wm_hints, 
+//GO(xcb_icccm_get_wm_hints_from_reply, 
+GO(xcb_icccm_get_wm_hints_reply, CFpupp)
+GO(xcb_icccm_get_wm_hints_unchecked, pFppu)
+//GO(xcb_icccm_get_wm_icon_name, 
+//GO(xcb_icccm_get_wm_icon_name_reply, 
+//GO(xcb_icccm_get_wm_icon_name_unchecked, 
+//GO(xcb_icccm_get_wm_name, 
+//GO(xcb_icccm_get_wm_name_reply, 
+//GO(xcb_icccm_get_wm_name_unchecked, 
+//GO(xcb_icccm_get_wm_normal_hints, 
+//GO(xcb_icccm_get_wm_normal_hints_reply, 
+//GO(xcb_icccm_get_wm_normal_hints_unchecked, 
+//GO(xcb_icccm_get_wm_protocols, 
+//GO(xcb_icccm_get_wm_protocols_from_reply, 
+//GO(xcb_icccm_get_wm_protocols_reply, 
+//GO(xcb_icccm_get_wm_protocols_reply_wipe, 
+//GO(xcb_icccm_get_wm_protocols_unchecked, 
+//GO(xcb_icccm_get_wm_size_hints, 
+//GO(xcb_icccm_get_wm_size_hints_from_reply, 
+//GO(xcb_icccm_get_wm_size_hints_reply, 
+//GO(xcb_icccm_get_wm_size_hints_unchecked, 
+//GO(xcb_icccm_get_wm_transient_for, 
+//GO(xcb_icccm_get_wm_transient_for_from_reply, 
+//GO(xcb_icccm_get_wm_transient_for_reply, 
+//GO(xcb_icccm_get_wm_transient_for_unchecked, 
+//GO(xcb_icccm_set_wm_class, 
+//GO(xcb_icccm_set_wm_class_checked, 
+//GO(xcb_icccm_set_wm_client_machine, 
+//GO(xcb_icccm_set_wm_client_machine_checked, 
+//GO(xcb_icccm_set_wm_colormap_windows, 
+//GO(xcb_icccm_set_wm_colormap_windows_checked, 
+GO(xcb_icccm_set_wm_hints, pFppup)
+GO(xcb_icccm_set_wm_hints_checked, pFppup)
+//GO(xcb_icccm_set_wm_icon_name, 
+//GO(xcb_icccm_set_wm_icon_name_checked, 
+//GO(xcb_icccm_set_wm_name, 
+//GO(xcb_icccm_set_wm_name_checked, 
+GO(xcb_icccm_set_wm_normal_hints, pFppup)
+GO(xcb_icccm_set_wm_normal_hints_checked, pFppup)
+//GO(xcb_icccm_set_wm_protocols, 
+//GO(xcb_icccm_set_wm_protocols_checked, 
+//GO(xcb_icccm_set_wm_size_hints, 
+//GO(xcb_icccm_set_wm_size_hints_checked, 
+//GO(xcb_icccm_set_wm_transient_for, 
+//GO(xcb_icccm_set_wm_transient_for_checked, 
+//GO(xcb_icccm_size_hints_set_aspect, 
+GO(xcb_icccm_size_hints_set_base_size, vFpii)
+GO(xcb_icccm_size_hints_set_max_size, vFpii)
+GO(xcb_icccm_size_hints_set_min_size, vFpii)
+GO(xcb_icccm_size_hints_set_position, vFpiii)
+GO(xcb_icccm_size_hints_set_resize_inc, vFpii)
+GO(xcb_icccm_size_hints_set_size, vFpiii)
+GO(xcb_icccm_size_hints_set_win_gravity, vFpi)
+//GO(xcb_icccm_wm_hints_get_urgency, 
+GO(xcb_icccm_wm_hints_set_iconic, vFp)
+//GO(xcb_icccm_wm_hints_set_icon_mask, 
+//GO(xcb_icccm_wm_hints_set_icon_pixmap, 
+//GO(xcb_icccm_wm_hints_set_icon_window, 
+GO(xcb_icccm_wm_hints_set_input, vFpC)
+//GO(xcb_icccm_wm_hints_set_none, 
+GO(xcb_icccm_wm_hints_set_normal, vFp)
+//GO(xcb_icccm_wm_hints_set_urgency, 
+//GO(xcb_icccm_wm_hints_set_window_group, 
+//GO(xcb_icccm_wm_hints_set_withdrawn,