[Title] Refactored a rule describing library path
authorHaegeun Park <haegeun.park@samsung.com>
Wed, 13 Nov 2013 06:56:46 +0000 (22:56 -0800)
committerHaegeun Park <haegeun.park@samsung.com>
Wed, 13 Nov 2013 07:30:27 +0000 (23:30 -0800)
[Issue#]
[Problem]
[Cause]
[Solution]
- Remove vendor dependencies in code section (MALI or ADRENO)

CMakeLists.txt
Makefile
packaging/coregl.spec
src/coregl.c

index ba8e02f..bb9623f 100644 (file)
@@ -22,9 +22,10 @@ ADD_DEFINITIONS("-DPREFIX=\"${PREFIX}\"")
 EXEC_PROGRAM(date OUTPUT_VARIABLE COMPILE_DATE)
 ADD_DEFINITIONS("-D_COREGL_COMPILE_DATE=\"${COMPILE_DATE}\"")
 
-IF(USE_MALI)
-ADD_DEFINITIONS(-DUSE_MALI)
-ENDIF(USE_MALI)
+IF(USE_ADRENO)
+ADD_DEFINITIONS("-D_COREGL_VENDOR_EGL_LIB_PATH=\"/usr/lib/egl/libEGL.so\"")
+ADD_DEFINITIONS("-D_COREGL_VENDOR_GL_LIB_PATH=\"/usr/lib/egl/libGLESv2.so\"")
+ENDIF(USE_ADRENO)
 
 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fvisibility=hidden")
 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -g -O2 -fPIC -Wall -std=c99 -D_COREGL_EMBEDDED_GL")
index 1b0f66b..c70fa48 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -2,7 +2,12 @@ CC = gcc
 
 COMPILE_DATE = "\"`git log -1 --pretty=format:%ci`\""
 
+VENDOR_EGL_LIB_PATH = "\"/usr/lib/egl/libEGL.so\""
+VENDOR_GL_LIB_PATH = "\"/usr/lib/egl/libGLESv2.so\""
+
 CFLAGS = -g -O2 -fvisibility=hidden -fPIC -Wall -std=c99 -D_COREGL_COMPILE_DATE=$(COMPILE_DATE)
+CFLAGS += -D_COREGL_VENDOR_EGL_LIB_PATH=$(VENDOR_EGL_LIB_PATH)
+CFLAGS += -D_COREGL_VENDOR_GL_LIB_PATH=$(VENDOR_GL_LIB_PATH)
 CFLAGS += `pkg-config --cflags dlog`
 
 LDFLAGS = -g -O2 -fvisibility=hidden -Wall -std=c99 -ldl -lpthread
index 72f6866..8061a83 100755 (executable)
@@ -32,8 +32,7 @@ This package contains the GLESv2.0/EGL
 %build
 
 %if 0%{?sec_product_feature_graphics_adreno}
-%else
-%global extra_option -DUSE_MALI=TRUE
+%global extra_option -DUSE_ADRENO=TRUE
 %endif
 
 cmake . -DCMAKE_INSTALL_PREFIX=/usr %{?extra_option}
index c375749..fe51db1 100755 (executable)
 void               *egl_lib_handle;
 void               *gl_lib_handle;
 
-#if USE_MALI
-#define DRIVER_PATH "/usr/lib/driver"
-#else
-#define DRIVER_PATH "/usr/lib/egl"
+#ifndef _COREGL_VENDOR_EGL_LIB_PATH
+#define _COREGL_VENDOR_EGL_LIB_PATH "/usr/lib/driver/libEGL.so" /* DEFAULT EGL PATH */
+#endif
+
+#ifndef _COREGL_VENDOR_GL_LIB_PATH
+#define _COREGL_VENDOR_GL_LIB_PATH "/usr/lib/driver/libGLESv2.so" /* DEFAULT GL PATH */
 #endif
 
 // Symbol definition for real
@@ -135,34 +137,34 @@ _gl_lib_init(void)
 {
        //------------------------------------------------//
        // Open EGL Library as EGL is separate
-       egl_lib_handle = dlopen(DRIVER_PATH "/libEGL.so", RTLD_LAZY | RTLD_LOCAL);
+       egl_lib_handle = dlopen(_COREGL_VENDOR_EGL_LIB_PATH, RTLD_LAZY | RTLD_LOCAL);
        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 -> %s/libEGL.so)\E[0m\n", DRIVER_PATH);
+               COREGL_ERR("\E[40;31;1mInvalid library link! (Check linkage of libCOREGL -> %s)\E[0m\n", _COREGL_VENDOR_EGL_LIB_PATH);
                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 -> %s/libEGL.so)\E[0m\n", DRIVER_PATH);
+               COREGL_ERR("\E[40;31;1mInvalid library link! (Check linkage of libCOREGL -> %s)\E[0m\n", _COREGL_VENDOR_EGL_LIB_PATH);
                return 0;
        }
 
        // use gl_lib handle for GL symbols
-       gl_lib_handle = dlopen(DRIVER_PATH "/libGLESv2.so", RTLD_LAZY | RTLD_LOCAL);
+       gl_lib_handle = dlopen(_COREGL_VENDOR_GL_LIB_PATH, RTLD_LAZY | RTLD_LOCAL);
        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 -> %s/libGLESv2.so)\E[0m\n", DRIVER_PATH);
+               COREGL_ERR("\E[40;31;1mInvalid library link! (Check linkage of libCOREGL -> %s)\E[0m\n", _COREGL_VENDOR_GL_LIB_PATH);
                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 -> %s/libGLESv2.so)\E[0m\n", DRIVER_PATH);
+               COREGL_ERR("\E[40;31;1mInvalid library link! (Check linkage of libCOREGL -> %s)\E[0m\n", _COREGL_VENDOR_GL_LIB_PATH);
                return 0;
        }
        //------------------------------------------------//