%install
mkdir -p %{buildroot}/usr/lib
+mkdir -p %{buildroot}/usr/lib/driver
mkdir -p %{buildroot}/usr/include/EGL
mkdir -p %{buildroot}/usr/include/GLES2
-cp %{_builddir}/%{name}-%{version}/libCOREGL.so.3.0 %{buildroot}%{_libdir}/libCOREGL.so.3.0
-cp %{_builddir}/%{name}-%{version}/libEGL.so.1.4 %{buildroot}%{_libdir}/libEGL.so.1.4
-cp %{_builddir}/%{name}-%{version}/libGLESv2.so.2.0 %{buildroot}%{_libdir}/libGLESv2.so.2.0
+cp %{_builddir}/%{name}-%{version}/libCOREGL.so.3.0 %{buildroot}%{_libdir}/driver/libCOREGL.so.3.0
+cp %{_builddir}/%{name}-%{version}/libEGL.so.1.4 %{buildroot}%{_libdir}/driver/libEGL.so.1.4
+cp %{_builddir}/%{name}-%{version}/libGLESv2.so.2.0 %{buildroot}%{_libdir}/driver/libGLESv2.so.2.0
%clean
rm -rf %{buildroot}
init_coregl()
{
- cd /usr/lib/
+ cd /usr/lib/driver
rm -f ./libEGL.so
rm -f ./libEGL.so.1
%files
%defattr(-,root,root,-)
-%{_libdir}/libCOREGL.so*
-%{_libdir}/libEGL.so*
-%{_libdir}/libGLESv2.so*
+%{_libdir}/driver/libCOREGL.so*
+%{_libdir}/driver/libEGL.so*
+%{_libdir}/driver/libGLESv2.so*
static int
_gl_lib_init(void)
{
+ void *gsl_lib_handle = dlopen("/usr/lib/libgsl.so", RTLD_NOW|RTLD_GLOBAL);
+ if (!gsl_lib_handle)
+ {
+ COREGL_ERR("\E[40;31;1m%s\E[0m\n\n", dlerror());
+ COREGL_ERR("\E[40;31;1mInvalid library link! (Check linkage of libCOREGL -> /usr/lib/libgsl.so)\E[0m\n");
+ }
+
+ void *gl_adreno_lib_handle = dlopen("/usr/lib/libadreno_utils.so", RTLD_NOW|RTLD_GLOBAL);
+ if (!gl_adreno_lib_handle)
+ {
+ COREGL_ERR("\E[40;31;1m%s\E[0m\n\n", dlerror());
+ COREGL_ERR("\E[40;31;1mInvalid library link! (Check linkage of libCOREGL -> /usr/lib/libadreno_utils.so)\E[0m\n");
+ }
//------------------------------------------------//
// Open EGL Library as EGL is separate
- egl_lib_handle = dlopen("/usr/lib/driver/libEGL.so.1.4", RTLD_NOW);
+ egl_lib_handle = dlopen("/usr/lib/libEGL.so.1.4", RTLD_NOW|RTLD_GLOBAL);
if (!egl_lib_handle)
{
COREGL_ERR("\E[40;31;1m%s\E[0m\n\n", dlerror());
- COREGL_ERR("\E[40;31;1mInvalid library link! (Check linkage of libCOREGL -> /usr/lib/driver/libEGL.so.1.4)\E[0m\n");
+ COREGL_ERR("\E[40;31;1mInvalid library link! (Check linkage of libCOREGL -> /usr/lib/libEGL.so.1.4)\E[0m\n");
return 0;
}
// test for invalid linking egl
if (dlsym(egl_lib_handle, "coregl_symbol_exported"))
{
- COREGL_ERR("\E[40;31;1mInvalid library link! (Check linkage of libCOREGL -> /usr/lib/driver/libEGL.so.1.4)\E[0m\n");
+ COREGL_ERR("\E[40;31;1mInvalid library link! (Check linkage of libCOREGL -> /usr/lib/libEGL.so.1.4)\E[0m\n");
return 0;
}
// use gl_lib handle for GL symbols
- gl_lib_handle = dlopen("/usr/lib/driver/libGLESv2.so.2.0", RTLD_NOW);
+ gl_lib_handle = dlopen("/usr/lib/libGLESv2.so.2.0", RTLD_NOW|RTLD_GLOBAL);
if (!gl_lib_handle)
{
COREGL_ERR("\E[40;31;1m%s\E[0m\n\n", dlerror());
- COREGL_ERR("\E[40;31;1mInvalid library link! (Check linkage of libCOREGL -> /usr/lib/driver/libGLESv2.so.2.0)\E[0m\n");
+ COREGL_ERR("\E[40;31;1mInvalid library link! (Check linkage of libCOREGL -> /usr/lib/libGLESv2.so.2.0)\E[0m\n");
return 0;
}
// test for invalid linking gl
if (dlsym(gl_lib_handle, "coregl_symbol_exported"))
{
- COREGL_ERR("\E[40;31;1mInvalid library link! (Check linkage of libCOREGL -> /usr/lib/driver/libGLESv2.so.2.0)\E[0m\n");
+ COREGL_ERR("\E[40;31;1mInvalid library link! (Check linkage of libCOREGL -> /usr/lib/libGLESv2.so.2.0)\E[0m\n");
return 0;
}
//------------------------------------------------//