diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2022-12-06 17:30:49 +0100 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2022-12-06 17:30:49 +0100 |
| commit | 5cf4226c1318e0a4bed74428bab3e2af47da4d8b (patch) | |
| tree | 8c2ff259184eeaf961e698d717cdef3150c075b9 /src | |
| parent | 5bb3d8a24ddcff28a418a5fa9c7eda43ef3b690d (diff) | |
| download | box64-5cf4226c1318e0a4bed74428bab3e2af47da4d8b.tar.gz box64-5cf4226c1318e0a4bed74428bab3e2af47da4d8b.zip | |
Added wrapped libxcb-icccm.so (helps #468)
Diffstat (limited to 'src')
| -rwxr-xr-x | src/library_list.h | 1 | ||||
| -rw-r--r-- | src/wrapped/generated/functions_list.txt | 2 | ||||
| -rw-r--r-- | src/wrapped/generated/wrappedlibxcbicccmdefs.h | 8 | ||||
| -rw-r--r-- | src/wrapped/generated/wrappedlibxcbicccmtypes.h | 17 | ||||
| -rw-r--r-- | src/wrapped/generated/wrappedlibxcbicccmundefs.h | 8 | ||||
| -rw-r--r-- | src/wrapped/generated/wrapper.c | 3 | ||||
| -rw-r--r-- | src/wrapped/generated/wrapper.h | 1 | ||||
| -rw-r--r-- | src/wrapped/wrappedlibxcbicccm.c | 23 | ||||
| -rw-r--r-- | src/wrapped/wrappedlibxcbicccm_private.h | 86 |
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, |