Evas GL: Print GLSL version with EVAS_GL_INFO
authorJean-Philippe Andre <jp.andre@samsung.com>
Thu, 27 Nov 2014 08:09:22 +0000 (17:09 +0900)
committerJean-Philippe Andre <jp.andre@samsung.com>
Thu, 27 Nov 2014 11:50:40 +0000 (20:50 +0900)
src/modules/evas/engines/gl_drm/evas_drm_main.c
src/modules/evas/engines/gl_x11/evas_x_main.c

index e2fd783..67b1648 100644 (file)
@@ -45,7 +45,7 @@ eng_window_new(Evas_Engine_Info_GL_Drm *info, Evas *e, struct gbm_device *gbm, s
    int config_attrs[40];
    int major_version, minor_version;
    int num_config, n = 0;
-   const GLubyte *vendor, *renderer, *version;
+   const GLubyte *vendor, *renderer, *version, *glslversion;
    Eina_Bool blacklist = EINA_FALSE;
    char *num;
 
@@ -182,14 +182,17 @@ eng_window_new(Evas_Engine_Info_GL_Drm *info, Evas *e, struct gbm_device *gbm, s
    vendor = glGetString(GL_VENDOR);
    renderer = glGetString(GL_RENDERER);
    version = glGetString(GL_VERSION);
-   if (!vendor) vendor   = (unsigned char *)"-UNKNOWN-";
+   glslversion = glGetString(GL_SHADING_LANGUAGE_VERSION);
+   if (!vendor)   vendor   = (unsigned char *)"-UNKNOWN-";
    if (!renderer) renderer = (unsigned char *)"-UNKNOWN-";
-   if (!version) version  = (unsigned char *)"-UNKNOWN-";
+   if (!version)  version  = (unsigned char *)"-UNKNOWN-";
+   if (!glslversion) glslversion = (unsigned char *)"-UNKNOWN-";
    if (getenv("EVAS_GL_INFO"))
      {
-        fprintf(stderr, "vendor: %s\n", vendor);
+        fprintf(stderr, "vendor  : %s\n", vendor);
         fprintf(stderr, "renderer: %s\n", renderer);
-        fprintf(stderr, "version: %s\n", version);
+        fprintf(stderr, "version : %s\n", version);
+        fprintf(stderr, "glsl ver: %s\n", glslversion);
      }
 
    if (strstr((const char *)vendor, "Mesa Project"))
index 0cf01f9..0c96f55 100644 (file)
@@ -127,7 +127,7 @@ eng_window_new(Evas_Engine_Info_GL_X11 *info,
 #else
    GLXContext rgbactx;
 #endif
-   const GLubyte *vendor, *renderer, *version;
+   const GLubyte *vendor, *renderer, *version, *glslversion;
    int blacklist = 0;
 
    if (!fbconf) eng_best_visual_get(info);
@@ -223,14 +223,17 @@ eng_window_new(Evas_Engine_Info_GL_X11 *info,
    vendor = glGetString(GL_VENDOR);
    renderer = glGetString(GL_RENDERER);
    version = glGetString(GL_VERSION);
+   glslversion = glGetString(GL_SHADING_LANGUAGE_VERSION);
    if (!vendor)   vendor   = (unsigned char *)"-UNKNOWN-";
    if (!renderer) renderer = (unsigned char *)"-UNKNOWN-";
    if (!version)  version  = (unsigned char *)"-UNKNOWN-";
+   if (!glslversion) glslversion = (unsigned char *)"-UNKNOWN-";
    if (getenv("EVAS_GL_INFO"))
      {
-        fprintf(stderr, "vendor: %s\n", vendor);
+        fprintf(stderr, "vendor  : %s\n", vendor);
         fprintf(stderr, "renderer: %s\n", renderer);
-        fprintf(stderr, "version: %s\n", version);
+        fprintf(stderr, "version : %s\n", version);
+        fprintf(stderr, "glsl ver: %s\n", glslversion);
      }
 
    if (strstr((const char *)vendor, "Mesa Project"))
@@ -310,12 +313,19 @@ eng_window_new(Evas_Engine_Info_GL_X11 *info,
    vendor = glGetString(GL_VENDOR);
    renderer = glGetString(GL_RENDERER);
    version = glGetString(GL_VERSION);
+   glslversion = glGetString(GL_SHADING_LANGUAGE_VERSION);
+   if (!vendor)   vendor   = (unsigned char *)"-UNKNOWN-";
+   if (!renderer) renderer = (unsigned char *)"-UNKNOWN-";
+   if (!version)  version  = (unsigned char *)"-UNKNOWN-";
+   if (!glslversion) glslversion = (unsigned char *)"-UNKNOWN-";
    if (getenv("EVAS_GL_INFO"))
      {
-        fprintf(stderr, "vendor: %s\n", vendor);
+        fprintf(stderr, "vendor  : %s\n", vendor);
         fprintf(stderr, "renderer: %s\n", renderer);
-        fprintf(stderr, "version: %s\n", version);
+        fprintf(stderr, "version : %s\n", version);
+        fprintf(stderr, "glsl ver: %s\n", glslversion);
      }
+
    //   examples:
    // vendor: NVIDIA Corporation
    // renderer: NVIDIA Tegra