diff -ur orig/Oy_Fl_Shader_Box.h oyranos-0.9.6/src/examples/image_display/Oy_Fl_Shader_Box.h --- orig/Oy_Fl_Shader_Box.h 2016-12-09 10:36:53.000000000 +0000 +++ oyranos-0.9.6/src/examples/image_display/Oy_Fl_Shader_Box.h 2018-12-20 09:55:19.283287029 +0000 @@ -8,6 +8,7 @@ #else # include # include +# include #endif #include @@ -15,6 +16,7 @@ #include #include "Oy_Fl_Image_Widget.h" +#include "oyranos_devices.h" #ifndef _DBG_FORMAT_ #define _DBG_FORMAT_ "%s:%d %s() " @@ -57,22 +59,22 @@ GLfloat clut_scale; GLfloat clut_offset; - GLhandleARB cmm_prog; - GLhandleARB cmm_shader; + GLuint cmm_prog; + GLuint cmm_shader; static const char * cmm_shader_source; - void print_log (GLhandleARB obj) + void print_log (GLuint obj) { int len = 0; int nwritten = 0; char *log; - glGetObjectParameterivARB (obj, GL_OBJECT_INFO_LOG_LENGTH_ARB, &len); + glGetShaderiv (obj, GL_INFO_LOG_LENGTH, &len); if (len > 0) { log = (char*) malloc (len); - glGetInfoLogARB (obj, len, &nwritten, log); + glGetShaderInfoLog (obj, len, &nwritten, log); fprintf (stderr, "%s\n", log); free (log); } @@ -99,36 +101,36 @@ /* compile shader program */ - cmm_shader = glCreateShaderObjectARB (GL_FRAGMENT_SHADER_ARB); - glShaderSourceARB (cmm_shader, 1, &cmm_shader_source, NULL); - glCompileShaderARB (cmm_shader); + cmm_shader = glCreateShader (GL_FRAGMENT_SHADER); + glShaderSource (cmm_shader, 1, &cmm_shader_source, NULL); + glCompileShader (cmm_shader); print_log (cmm_shader); - cmm_prog = glCreateProgramObjectARB (); - glAttachObjectARB (cmm_prog, cmm_shader); - glLinkProgramARB (cmm_prog); + cmm_prog = glCreateProgram (); + glAttachShader (cmm_prog, cmm_shader); + glLinkProgram (cmm_prog); print_log (cmm_prog); - glUseProgramObjectARB (cmm_prog); + glUseProgram (cmm_prog); loc = glGetUniformLocation ((GLintptr)cmm_prog, "scale"); - glUniform1fARB (loc, clut_scale); + glUniform1f (loc, clut_scale); loc = glGetUniformLocation ((GLintptr)cmm_prog, "offset"); - glUniform1fARB (loc, clut_offset); + glUniform1f (loc, clut_offset); loc = glGetUniformLocation ((GLintptr)cmm_prog, "image"); - glUniform1iARB (loc, 0); + glUniform1i (loc, 0); /* texture 1 = clut */ - glActiveTextureARB (GL_TEXTURE0_ARB + 1); + glActiveTexture (GL_TEXTURE0 + 1); glBindTexture (GL_TEXTURE_3D, clut_texture); loc = glGetUniformLocation ((GLintptr)cmm_prog, "clut"); - glUniform1iARB (loc, 1); + glUniform1i (loc, 1); /* back to texture 0 (image) */ - glActiveTextureARB (GL_TEXTURE0_ARB); + glActiveTexture (GL_TEXTURE0); glBindTexture (GL_TEXTURE_2D, img_texture); } @@ -302,7 +304,7 @@ { glGenTextures (1, &clut_texture); /* texture 1 = clut */ - glActiveTextureARB (GL_TEXTURE0_ARB + 1); + glActiveTexture (GL_TEXTURE0 + 1); glBindTexture (GL_TEXTURE_3D, clut_texture); glTexParameteri (GL_TEXTURE_3D, GL_TEXTURE_WRAP_S, GL_CLAMP); @@ -320,7 +322,7 @@ 0, GL_RGB, GL_UNSIGNED_SHORT, clut); /* back to texture 0 (image) */ - glActiveTextureARB (GL_TEXTURE0_ARB); + glActiveTexture (GL_TEXTURE0); } int need_redraw; @@ -358,8 +360,8 @@ setupShaderTexture(); - if(GLEE_ARB_fragment_shader && GLEE_ARB_shading_language_100) - init_shaders (); +/* if(GLEE_ARB_fragment_shader && GLEE_ARB_shading_language_100) */ +/* init_shaders (); */ } oyImage_s * draw_image = 0; diff -ur orig/image_display.cpp oyranos-0.9.6/src/examples/image_display/image_display.cpp --- orig/image_display.cpp 2016-12-09 10:36:53.000000000 +0000 +++ oyranos-0.9.6/src/examples/image_display/image_display.cpp 2018-12-20 09:54:26.396621977 +0000 @@ -36,7 +36,7 @@ #define DEBUG 1 extern "C" { -#include "GLee.h" +#include } #include "../../oyranos_logo.h"