[waffle] [RFC v2] wflinfo: add GLSL version information to wflinfo

Emil Velikov emil.l.velikov at gmail.com
Sat Nov 15 12:47:05 PST 2014


Hi Dylan,
On 14/11/14 17:39, Dylan Baker wrote:
> v2: - Don't print for gles1, since gles1 doesn't have a shading language
>       and will always return FLINFO_GL_ERROR
> 
> Signed-off-by: Dylan Baker <dylanx.c.baker at intel.com>
> ---
> 
> This addresses Jordan's comments, but from the point of view of having a
> parsable output not printing the string 'OpenGL shading language...'
> seems suboptimal. Would it be better to add an additional block to the
> assignment if and look for fixed-functions versions and set the value of
> shading langauge to 'Fixed Function' or 'None' instead?
> 
I'm not sure how Chad and Jordan feel about it but making gles1's shader
langugage version return "None" sounds good imho. I was looking at your
request at github and I was saying to myself, let me sort remove the
libgbm/libudev & friends linking and I'll get to it.
Seems like you've beaten be to it :]

-Emil

>  src/utils/wflinfo.c | 10 ++++++++++
>  1 file changed, 10 insertions(+)
> 
> diff --git a/src/utils/wflinfo.c b/src/utils/wflinfo.c
> index c2af4dc..ed1e6f3 100644
> --- a/src/utils/wflinfo.c
> +++ b/src/utils/wflinfo.c
> @@ -207,6 +207,7 @@ enum {
>      GL_VENDOR                              = 0x1F00,
>      GL_RENDERER                            = 0x1F01,
>      GL_VERSION                             = 0x1F02,
> +    GL_SHADING_LANGUAGE_VERSION            = 0x8B8C,
>      GL_EXTENSIONS                          = 0x1F03,
>      GL_NUM_EXTENSIONS                      = 0x821D,
>  };
> @@ -550,6 +551,11 @@ print_wflinfo(const struct options *opts)
>          version_str = "WFLINFO_GL_ERROR";
>      }
>  
> +    const char *language_str = (const char *) glGetString(GL_SHADING_LANGUAGE_VERSION);
> +    if (glGetError() != GL_NO_ERROR || language_str == NULL) {
> +        language_str = "WFLINFO_GL_ERROR";
> +    }
> +
>      const char *platform = enum_map_to_str(platform_map, opts->platform);
>      assert(platform != NULL);
>      printf("Waffle platform: %s\n", platform);
> @@ -561,6 +567,10 @@ print_wflinfo(const struct options *opts)
>      printf("OpenGL vendor string: %s\n", vendor);
>      printf("OpenGL renderer string: %s\n", renderer);
>      printf("OpenGL version string: %s\n", version_str);
> +	// Do not print WFLINFO_GL_ERROR for gles1, there is not GLSL for GL ES 1.x
> +	if (strcmp(api, "gles1") != 0) {
> +		printf("OpenGL shading language version string: %s\n", language_str);
> +	}
>  
>      int version = parse_version(version_str);
>  
> 



More information about the waffle mailing list