Changeset 84479 in vbox for trunk/src/VBox/Additions/x11/VBoxClient
- Timestamp:
- May 25, 2020 7:38:25 AM (5 years ago)
- svn:sync-xref-src-repo-rev:
- 138196
- Location:
- trunk/src/VBox/Additions/x11/VBoxClient
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Additions/x11/VBoxClient/Makefile.kmk
r83234 r84479 26 26 # 27 27 PROGRAMS += VBoxClient 28 PROGRAMS += VBoxWaylandClient 28 29 29 30 VBoxClient_TEMPLATE = NewVBoxGuestR3Exe … … 40 41 VBoxClient_INCS += ../x11include/randrproto-1.6.0 41 42 VBoxClient_SOURCES = \ 42 main.cpp \ 43 display-svga.cpp \ 44 display-svga-x11.cpp \ 45 seamless.cpp \ 46 seamless-x11.cpp \ 47 hostversion.cpp 43 main.cpp \ 44 display-svga.cpp \ 45 display-svga-x11.cpp \ 46 seamless.cpp \ 47 seamless-x11.cpp \ 48 hostversion.cpp 49 50 VBoxWaylandClient_SOURCES = \ 51 display-wayland.cpp 48 52 49 53 VBoxClient_SOURCES.linux = \ 50 54 chk_stubs.c 51 55 VBoxClient_LIBPATH = \ 52 56 $(VBOX_LIBPATH32_X11) 53 57 VBoxClient_LIBS.freebsd = \ 54 58 iconv 55 59 VBoxClient_LIBS.linux = \ 56 60 dl 57 61 VBoxClient_LIBS.netbsd = \ 58 62 crypt 59 63 VBoxClient_LIBS.solaris = \ 60 64 dl 61 65 VBoxClient_LIBS = \ 62 66 X11 Xt Xext Xmu 63 67 ifdef VBOX_WITH_DISTRO_XRAND_XINERAMA 64 68 VBoxClient_DEFS += WITH_DISTRO_XRAND_XINERAMA … … 68 72 # XXX: -L comes from the template, but not rpath 69 73 VBoxClient_LDFLAGS.netbsd = \ 70 74 -Wl,-rpath /usr/X11R7/lib 71 75 72 76 ifdef VBOX_WITH_DRAG_AND_DROP … … 74 78 VBoxClient_DEFS += VBOX_DND_WITH_XTEST 75 79 VBoxClient_LIBS += \ 76 80 Xtst 77 81 endif 78 82 endif … … 83 87 ifeq ($(KBUILD_TARGET),linux) 84 88 VBoxClient_LDFLAGS.amd64 += \ 85 89 -Wl,--wrap=memcpy 86 90 endif 87 91 … … 92 96 ifdef VBOX_WITH_DRAG_AND_DROP 93 97 VBoxClient_DEFS += \ 94 95 98 VBOX_WITH_DRAG_AND_DROP \ 99 $(if $(VBOX_WITH_DRAG_AND_DROP_GH),VBOX_WITH_DRAG_AND_DROP_GH,) 96 100 VBoxClient_SOURCES += \ 97 101 draganddrop.cpp 98 102 VBoxClient_LIBS += \ 99 100 103 $(VBOX_LIB_VBGL_R3) \ 104 $(PATH_STAGE_LIB)/additions/VBoxDnDGuestR3Lib$(VBOX_SUFF_LIB) 101 105 endif 102 106 103 107 ifdef VBOX_WITH_SHARED_CLIPBOARD 104 108 VBoxClient_DEFS += \ 105 106 109 VBOX_WITH_SHARED_CLIPBOARD \ 110 $(if $(VBOX_WITH_SHARED_CLIPBOARD_TRANSFERS),VBOX_WITH_SHARED_CLIPBOARD_TRANSFERS,) 107 111 VBoxClient_SOURCES += \ 108 109 110 112 $(PATH_ROOT)/src/VBox/GuestHost/SharedClipboard/clipboard-common.cpp \ 113 $(PATH_ROOT)/src/VBox/GuestHost/SharedClipboard/clipboard-x11.cpp \ 114 clipboard.cpp 111 115 ifdef VBOX_WITH_SHARED_CLIPBOARD_TRANSFERS 112 116 VBoxClient_DEFS += VBOX_WITH_SHARED_CLIPBOARD_GUEST 113 117 VBoxClient_SOURCES += \ 114 115 118 $(PATH_ROOT)/src/VBox/GuestHost/SharedClipboard/clipboard-transfers.cpp \ 119 $(PATH_ROOT)/src/VBox/GuestHost/SharedClipboard/ClipboardPath.cpp 116 120 ifdef VBOX_WITH_SHARED_CLIPBOARD_FUSE 117 121 VBoxClient_DEFS += VBOX_WITH_SHARED_CLIPBOARD_FUSE 118 122 # @todo Make this dynamic loading more generic. 119 123 VBoxClient_SOURCES += \ 120 121 124 $(PATH_ROOT)/src/VBox/ImageMounter/vboximg-mount/fuse.cpp \ 125 clipboard-fuse.cpp 122 126 # @todo Ditto. 123 127 VBoxClient_INCS += \ 124 128 $(PATH_ROOT)/src/VBox/ImageMounter/vboximg-mount 125 129 endif 126 130 endif … … 146 150 $$(tstSeamlessX11-auto_0_OUTDIR)/tstSeamlessX11-auto.run: \ 147 151 $$(tstSeamlessX11-auto_1_STAGE_TARGET) 148 149 152 export VBOX_LOG_DEST=nofile; $(tstSeamlessX11-auto_1_STAGE_TARGET) quiet 153 $(QUIET)$(APPEND) -t "$@" "done" 150 154 151 155 # -
trunk/src/VBox/Additions/x11/VBoxClient/display-svga-x11.cpp
r84369 r84479 191 191 static int determineOutputCount(); 192 192 193 #define checkFunctionPtr (pFunction)\193 #define checkFunctionPtrReturn(pFunction) \ 194 194 do{ \ 195 195 if (!pFunction) \ … … 199 199 x11Context.pRandLibraryHandle = NULL; \ 200 200 return VERR_NOT_FOUND; \ 201 } \ 202 }while(0) 203 204 #define checkFunctionPtr(pFunction) \ 205 do{ \ 206 if (!pFunction) \ 207 { \ 208 VBClLogFatalError("Could not find symbol address\n"); \ 201 209 } \ 202 210 }while(0) … … 733 741 734 742 *(void **)(&x11Context.pXRRSelectInput) = dlsym(x11Context.pRandLibraryHandle, "XRRSelectInput"); 735 checkFunctionPtr (x11Context.pXRRSelectInput);743 checkFunctionPtrReturn(x11Context.pXRRSelectInput); 736 744 737 745 *(void **)(&x11Context.pXRRQueryExtension) = dlsym(x11Context.pRandLibraryHandle, "XRRQueryExtension"); 738 checkFunctionPtr (x11Context.pXRRQueryExtension);746 checkFunctionPtrReturn(x11Context.pXRRQueryExtension); 739 747 740 748 *(void **)(&x11Context.pXRRQueryVersion) = dlsym(x11Context.pRandLibraryHandle, "XRRQueryVersion"); 741 checkFunctionPtr(x11Context.pXRRQueryVersion); 742 749 checkFunctionPtrReturn(x11Context.pXRRQueryVersion); 750 751 /* Don't bail out when XRRGetMonitors XRRFreeMonitors are missing as in Oracle Solaris 10. It is not crucial esp. for single monitor. */ 743 752 *(void **)(&x11Context.pXRRGetMonitors) = dlsym(x11Context.pRandLibraryHandle, "XRRGetMonitors"); 744 753 checkFunctionPtr(x11Context.pXRRGetMonitors); 745 754 746 *(void **)(&x11Context.pXRRGetScreenResources) = dlsym(x11Context.pRandLibraryHandle, "XRRGetScreenResources");747 checkFunctionPtr(x11Context.pXRRGetScreenResources);748 749 *(void **)(&x11Context.pXRRSetCrtcConfig) = dlsym(x11Context.pRandLibraryHandle, "XRRSetCrtcConfig");750 checkFunctionPtr(x11Context.pXRRSetCrtcConfig);751 752 755 *(void **)(&x11Context.pXRRFreeMonitors) = dlsym(x11Context.pRandLibraryHandle, "XRRFreeMonitors"); 753 756 checkFunctionPtr(x11Context.pXRRFreeMonitors); 754 757 758 *(void **)(&x11Context.pXRRGetScreenResources) = dlsym(x11Context.pRandLibraryHandle, "XRRGetScreenResources"); 759 checkFunctionPtrReturn(x11Context.pXRRGetScreenResources); 760 761 *(void **)(&x11Context.pXRRSetCrtcConfig) = dlsym(x11Context.pRandLibraryHandle, "XRRSetCrtcConfig"); 762 checkFunctionPtrReturn(x11Context.pXRRSetCrtcConfig); 763 755 764 *(void **)(&x11Context.pXRRFreeScreenResources) = dlsym(x11Context.pRandLibraryHandle, "XRRFreeScreenResources"); 756 checkFunctionPtr (x11Context.pXRRFreeMonitors);765 checkFunctionPtrReturn(x11Context.pXRRFreeScreenResources); 757 766 758 767 *(void **)(&x11Context.pXRRFreeModeInfo) = dlsym(x11Context.pRandLibraryHandle, "XRRFreeModeInfo"); 759 checkFunctionPtr (x11Context.pXRRFreeModeInfo);768 checkFunctionPtrReturn(x11Context.pXRRFreeModeInfo); 760 769 761 770 *(void **)(&x11Context.pXRRFreeOutputInfo) = dlsym(x11Context.pRandLibraryHandle, "XRRFreeOutputInfo"); 762 checkFunctionPtr (x11Context.pXRRFreeOutputInfo);771 checkFunctionPtrReturn(x11Context.pXRRFreeOutputInfo); 763 772 764 773 *(void **)(&x11Context.pXRRSetScreenSize) = dlsym(x11Context.pRandLibraryHandle, "XRRSetScreenSize"); 765 checkFunctionPtr (x11Context.pXRRSetScreenSize);774 checkFunctionPtrReturn(x11Context.pXRRSetScreenSize); 766 775 767 776 *(void **)(&x11Context.pXRRUpdateConfiguration) = dlsym(x11Context.pRandLibraryHandle, "XRRUpdateConfiguration"); 768 checkFunctionPtr (x11Context.pXRRUpdateConfiguration);777 checkFunctionPtrReturn(x11Context.pXRRUpdateConfiguration); 769 778 770 779 *(void **)(&x11Context.pXRRAllocModeInfo) = dlsym(x11Context.pRandLibraryHandle, "XRRAllocModeInfo"); 771 checkFunctionPtr (x11Context.pXRRAllocModeInfo);780 checkFunctionPtrReturn(x11Context.pXRRAllocModeInfo); 772 781 773 782 *(void **)(&x11Context.pXRRCreateMode) = dlsym(x11Context.pRandLibraryHandle, "XRRCreateMode"); 774 checkFunctionPtr (x11Context.pXRRCreateMode);783 checkFunctionPtrReturn(x11Context.pXRRCreateMode); 775 784 776 785 *(void **)(&x11Context.pXRRGetOutputInfo) = dlsym(x11Context.pRandLibraryHandle, "XRRGetOutputInfo"); 777 checkFunctionPtr (x11Context.pXRRGetOutputInfo);786 checkFunctionPtrReturn(x11Context.pXRRGetOutputInfo); 778 787 779 788 *(void **)(&x11Context.pXRRGetCrtcInfo) = dlsym(x11Context.pRandLibraryHandle, "XRRGetCrtcInfo"); 780 checkFunctionPtr (x11Context.pXRRGetCrtcInfo);789 checkFunctionPtrReturn(x11Context.pXRRGetCrtcInfo); 781 790 782 791 *(void **)(&x11Context.pXRRAddOutputMode) = dlsym(x11Context.pRandLibraryHandle, "XRRAddOutputMode"); 783 checkFunctionPtr (x11Context.pXRRAddOutputMode);792 checkFunctionPtrReturn(x11Context.pXRRAddOutputMode); 784 793 785 794 return VINF_SUCCESS;
Note:
See TracChangeset
for help on using the changeset viewer.