[Piglit] [PATCH 1/2] util: Add piglit_build_simple_program_unlinked().

Anuj Phogat anuj.phogat at gmail.com
Tue Aug 20 11:14:04 PDT 2013


On Tue, Aug 20, 2013 at 7:20 AM, Paul Berry <stereotype441 at gmail.com> wrote:
>
> ---
>  tests/util/piglit-shader.c | 29 +++++++++++++++++++++++++++++
>  tests/util/piglit-shader.h |  2 ++
>  2 files changed, 31 insertions(+)
>
> diff --git a/tests/util/piglit-shader.c b/tests/util/piglit-shader.c
> index 8172dfb..f7bd06f 100644
> --- a/tests/util/piglit-shader.c
> +++ b/tests/util/piglit-shader.c
> @@ -265,6 +265,35 @@ GLint piglit_link_simple_program(GLint vs, GLint fs)
>         return prog;
>  }
>
> +
> +/**
> + * Builds a program from optional VS and FS sources, but does not link
> + * it.  If there is a compile failure, the test is terminated.
> + */
> +GLuint
> +piglit_build_simple_program_unlinked(const char *vs_source,
> +                                    const char *fs_source)
> +{
> +       GLuint prog;
> +
> +       piglit_require_GLSL();
> +       prog = glCreateProgram();
> +       if (vs_source) {
> +               GLuint vs = piglit_compile_shader_text(GL_VERTEX_SHADER,
> +                                                      vs_source);
> +               glAttachShader(prog, vs);
> +               glDeleteShader(vs);
> +       }
> +       if (fs_source) {
> +               GLuint fs = piglit_compile_shader_text(GL_FRAGMENT_SHADER,
> +                                                      fs_source);
> +               glAttachShader(prog, fs);
> +               glDeleteShader(fs);
> +       }
> +       return prog;
> +}
> +
> +
>  /**
>   * Builds and links a program from optional VS and FS sources,
>   * throwing PIGLIT_FAIL on error.
> diff --git a/tests/util/piglit-shader.h b/tests/util/piglit-shader.h
> index 3e6b8fd..8f18f0a 100644
> --- a/tests/util/piglit-shader.h
> +++ b/tests/util/piglit-shader.h
> @@ -36,6 +36,8 @@ GLboolean piglit_link_check_status(GLint prog);
>  GLboolean piglit_link_check_status_quiet(GLint prog);
>  GLint piglit_link_simple_program(GLint vs, GLint fs);
>  GLint piglit_build_simple_program(const char *vs_source, const char *fs_source);
> +GLuint piglit_build_simple_program_unlinked(const char *vs_source,
> +                                           const char *fs_source);
>
>  #if defined(PIGLIT_USE_OPENGL_ES1)
>  #define glAttachShader assert(!"glAttachShader does not exist in ES1")
> --
> 1.8.3.4
>
> _______________________________________________
> Piglit mailing list
> Piglit at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/piglit

Both patches are:
Reviewed-by: Anuj Phogat <anuj.phogat at gmail.com>


More information about the Piglit mailing list