// This file is generated. Do not edit! // see https://github.com/hpvb/dynload-wrapper for details // generated by generate-wrapper.py 0.3 on 2023-01-23 15:11:35 // flags: generate-wrapper.py --include ./thirdparty/linuxbsd_headers/X11/extensions/Xinerama.h --sys-include "thirdparty/linuxbsd_headers/X11/extensions/Xinerama.h" --soname libXinerama.so.1 --init-name xinerama --output-header ./platform/linuxbsd/x11/dynwrappers/xinerama-so_wrap.h --output-implementation ./platform/linuxbsd/x11/dynwrappers/xinerama-so_wrap.c // // NOTE: Generated from Xinerama 1.1.4. // This has been handpatched to workaround some issues with the generator that // will be eventually fixed. In this case, non-existent symbols inherited from // libX11, but absent in libXinerama.so.1, were removed. #include <stdint.h> #define XineramaQueryExtension XineramaQueryExtension_dylibloader_orig_xinerama #define XineramaQueryVersion XineramaQueryVersion_dylibloader_orig_xinerama #define XineramaIsActive XineramaIsActive_dylibloader_orig_xinerama #define XineramaQueryScreens XineramaQueryScreens_dylibloader_orig_xinerama #include "thirdparty/linuxbsd_headers/X11/extensions/Xinerama.h" #undef XineramaQueryExtension #undef XineramaQueryVersion #undef XineramaIsActive #undef XineramaQueryScreens #include <dlfcn.h> #include <stdio.h> int (*XineramaQueryExtension_dylibloader_wrapper_xinerama)( Display*, int*, int*); int (*XineramaQueryVersion_dylibloader_wrapper_xinerama)( Display*, int*, int*); int (*XineramaIsActive_dylibloader_wrapper_xinerama)( Display*); XineramaScreenInfo* (*XineramaQueryScreens_dylibloader_wrapper_xinerama)( Display*, int*); int initialize_xinerama(int verbose) { void *handle; char *error; handle = dlopen("libXinerama.so.1", RTLD_LAZY); if (!handle) { if (verbose) { fprintf(stderr, "%s\n", dlerror()); } return(1); } dlerror(); // XineramaQueryExtension *(void **) (&XineramaQueryExtension_dylibloader_wrapper_xinerama) = dlsym(handle, "XineramaQueryExtension"); if (verbose) { error = dlerror(); if (error != NULL) { fprintf(stderr, "%s\n", error); } } // XineramaQueryVersion *(void **) (&XineramaQueryVersion_dylibloader_wrapper_xinerama) = dlsym(handle, "XineramaQueryVersion"); if (verbose) { error = dlerror(); if (error != NULL) { fprintf(stderr, "%s\n", error); } } // XineramaIsActive *(void **) (&XineramaIsActive_dylibloader_wrapper_xinerama) = dlsym(handle, "XineramaIsActive"); if (verbose) { error = dlerror(); if (error != NULL) { fprintf(stderr, "%s\n", error); } } // XineramaQueryScreens *(void **) (&XineramaQueryScreens_dylibloader_wrapper_xinerama) = dlsym(handle, "XineramaQueryScreens"); if (verbose) { error = dlerror(); if (error != NULL) { fprintf(stderr, "%s\n", error); } } return 0; }