Changeset 59180 in vbox
- Timestamp:
- Dec 18, 2015 11:17:06 AM (9 years ago)
- svn:sync-xref-src-repo-rev:
- 104797
- Location:
- trunk/src/VBox/Additions
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Additions/common/crOpenGL/load.c
r59165 r59180 1123 1123 return bRc; 1124 1124 } 1125 1126 #if defined(Linux) && !defined(VBOXOGL_FAKEDRI) 1127 # include <dlfcn.h> 1128 /* We only support being used by GLX clients. If the X server GLX extension 1129 * tries to use our OpenGL library it will fail, as it is written specifically 1130 * against Mesa. So we detect this with the assumption that the server will 1131 * not have the DISPLAY variable set, and a client will do or we can't do much 1132 * with it anyway. This is only needed on Linux, as Solaris lets us replace 1133 * the client library only. To avoid complications with iprt initialisation 1134 * we use native system/C library APIs. 1135 * We do this in a very naive way, not even checking for failure (not much we 1136 * can do, better for GLX to fail than the whole X server). To keep things as 1137 * simple and fail-safe as possible, we use a fixed path to the system GL 1138 * library. */ 1139 void __attribute__ ((constructor)) checkServerGLX(void) 1140 { 1141 char *pszDisplay = getenv("DISPLAY"); 1142 1143 if (!pszDisplay || !*pszDisplay) 1144 { 1145 dlopen("/tmp/VBoxOGL/system/libGL.so.1", RTLD_LAZY | RTLD_GLOBAL | RTLD_DEEPBIND); 1146 } 1147 } 1148 #endif 1125 1149 1126 1150 /* Sigh -- we can't do initialization at load time, since Windows forbids -
trunk/src/VBox/Additions/linux/Makefile.kmk
r57969 r59180 134 134 VBoxOGLpackspu.so \ 135 135 VBoxOGLpassthroughspu.so \ 136 VBoxOGL.so 136 VBoxOGL.so \ 137 VBoxEGL.so 137 138 endif 138 139 -
trunk/src/VBox/Additions/linux/installer/vboxadd.sh
r58838 r59180 45 45 i[3456789]86|x86) 46 46 cpu="x86" 47 ldconfig_arch="(libc6)" 47 48 lib_candidates="/usr/lib/i386-linux-gnu /usr/lib /lib" 48 49 ;; 49 50 x86_64|amd64) 50 51 cpu="amd64" 52 ldconfig_arch="(libc6,x86-64)" 51 53 lib_candidates="/usr/lib/x86_64-linux-gnu /usr/lib64 /usr/lib /lib64 /lib" 52 54 ;; … … 209 211 # This is needed as X.Org Server 1.13 does not auto-load the module. 210 212 running_vboxvideo || $MODPROBE vboxvideo > /dev/null 2>&1 213 rm -rf /etc/ld.so.conf.d/00vboxvideo.conf 214 ldconfig 215 if /usr/bin/VBoxClient --check3d; then 216 rm -r /tmp/VBoxOGL 217 mkdir -m 0755 /tmp/VBoxOGL 218 mkdir -m 0755 /tmp/VBoxOGL/system 219 ldconfig -p | while read -r line; do 220 case "${line}" in "libGL.so.1 ${ldconfig_arch} => "*) 221 ln -s "${line#libGL.so.1 ${ldconfig_arch} => }" /tmp/VBoxOGL/system/libGL.so.1 222 break 223 esac 224 done 225 echo "/tmp/VBoxOGL" > /etc/ld.so.conf.d/00vboxvideo.conf 226 ln -s "${INSTALL_DIR}/lib/VBoxOGL.so" /tmp/VBoxOGL/libGL.so.1 227 ln -s "${INSTALL_DIR}/lib/VBoxEGL.so" /tmp/VBoxOGL/libEGL.so.1 228 ldconfig 229 fi 211 230 212 231 # Mount all shared folders from /etc/fstab. Normally this is done by some … … 222 241 { 223 242 begin "Stopping VirtualBox Additions" console; 243 if test -r /etc/ld.so.conf.d/00vboxvideo.conf; then 244 rm /etc/ld.so.conf.d/00vboxvideo.conf 245 ldconfig 246 fi 224 247 if ! umount -a -t vboxsf 2>/dev/null; then 225 248 fail "Cannot unmount vboxsf folders"
Note:
See TracChangeset
for help on using the changeset viewer.