Make it work under the raspi

This commit is contained in:
Pierre Krieger 2015-05-07 13:49:33 +02:00
parent 2414f87ceb
commit 7ee416ab88
2 changed files with 6 additions and 1 deletions

View file

@ -66,6 +66,7 @@ features = ["dynamic"]
[target.arm-unknown-linux-gnueabihf.dependencies] [target.arm-unknown-linux-gnueabihf.dependencies]
osmesa-sys = "0.0.5" osmesa-sys = "0.0.5"
wayland-client = "*"
[target.arm-unknown-linux-gnueabihf.dependencies.x11] [target.arm-unknown-linux-gnueabihf.dependencies.x11]
version = "*" version = "*"

View file

@ -315,10 +315,14 @@ impl Window {
let xf86vmode = ffi::Xf86vmode::open().unwrap(); // FIXME: gracious handling let xf86vmode = ffi::Xf86vmode::open().unwrap(); // FIXME: gracious handling
let glx = { let glx = {
let libglx = unsafe { dlopen::dlopen(b"libGL.so\0".as_ptr() as *const _, dlopen::RTLD_NOW) }; let mut libglx = unsafe { dlopen::dlopen(b"libGL.so.1\0".as_ptr() as *const _, dlopen::RTLD_NOW) };
if libglx.is_null() {
libglx = unsafe { dlopen::dlopen(b"libGL.so\0".as_ptr() as *const _, dlopen::RTLD_NOW) };
}
if libglx.is_null() { if libglx.is_null() {
return Err(CreationError::NotSupported); return Err(CreationError::NotSupported);
} }
ffi::glx::Glx::load_with(|sym| { ffi::glx::Glx::load_with(|sym| {
let sym = CString::new(sym).unwrap(); let sym = CString::new(sym).unwrap();
unsafe { dlopen::dlsym(libglx, sym.as_ptr()) } unsafe { dlopen::dlsym(libglx, sym.as_ptr()) }