
include_directories(
	${GLEXT_INCLUDE_DIR}
	${OPENGL_INCLUDE_PATH}
	${piglit_SOURCE_DIR}/tests/mesa/util
)

link_libraries (
	piglitutil_${piglit_target_api}
	${OPENGL_gl_LIBRARY}
)

add_custom_command(
	OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/glsl-fs-raytrace-bug27060.h
	COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/bin2h.py ${CMAKE_CURRENT_SOURCE_DIR}/glsl-fs-raytrace-bug27060.bin pixel_data > ${CMAKE_CURRENT_BINARY_DIR}/glsl-fs-raytrace-bug27060.h
	DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/bin2h.py ${CMAKE_CURRENT_SOURCE_DIR}/glsl-fs-raytrace-bug27060.bin
	VERBATIM)

add_custom_command(
	OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/glsl-vs-raytrace-bug26691.h
	COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/bin2h.py ${CMAKE_CURRENT_SOURCE_DIR}/glsl-vs-raytrace-bug26691.bin pixel_data > ${CMAKE_CURRENT_BINARY_DIR}/glsl-vs-raytrace-bug26691.h
	DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/bin2h.py ${CMAKE_CURRENT_SOURCE_DIR}/glsl-vs-raytrace-bug26691.bin
	VERBATIM)

piglit_add_executable (glsl-max-vertex-attrib glsl-max-vertex-attrib.c)
piglit_add_executable (activeprogram-bad-program activeprogram-bad-program.c)
piglit_add_executable (activeprogram-get activeprogram-get.c)
piglit_add_executable (attribute0 attribute0.c)
piglit_add_executable (built-in-constants built-in-constants.c parser_utils.c)
piglit_add_executable (createshaderprogram-bad-type createshaderprogram-bad-type.c)
piglit_add_executable (createshaderprogram-attached-shaders createshaderprogram-attached-shaders.c)
piglit_add_executable (trinity-fp1 trinity-fp1.c)
piglit_add_executable (fp-abs-01 fp-abs-01.c)
piglit_add_executable (fp-abs-02 fp-abs-02.c)
piglit_add_executable (fp-condition_codes-01 fp-condition_codes-01.c)
piglit_add_executable (fp-lit-mask fp-lit-mask.c)
piglit_add_executable (fp-lit-src-equals-dst fp-lit-src-equals-dst.c)
piglit_add_executable (fp-fog fp-fog.c)
piglit_add_executable (fp-formats fp-formats.c)
piglit_add_executable (fp-fragment-position fp-fragment-position.c)
piglit_add_executable (fp-kil fp-kil.c)
piglit_add_executable (fp-incomplete-tex fp-incomplete-tex.c)
piglit_add_executable (fp-indirections fp-indirections.c)
piglit_add_executable (fp-indirections2 fp-indirections2.c)
piglit_add_executable (fp-long-alu fp-long-alu.c)
piglit_add_executable (fp-rfl fp-rfl.c)
IF (UNIX)
	target_link_libraries(fp-rfl m)
ENDIF (UNIX)
piglit_add_executable (fp-set-01 fp-set-01.c)
piglit_add_executable (fp-set-02 fp-set-02.c)
piglit_add_executable (fp-unpack-01 fp-unpack-01.c)
IF (UNIX)
	target_link_libraries(fp-unpack-01 m)
ENDIF (UNIX)
piglit_add_executable (glsl-arb-fragment-coord-conventions glsl-arb-fragment-coord-conventions.c)
piglit_add_executable (glsl-bindattriblocation glsl-bindattriblocation.c)
piglit_add_executable (glsl-bug-22603 glsl-bug-22603.c)
piglit_add_executable (glsl-dlist-getattriblocation glsl-dlist-getattriblocation.c)
piglit_add_executable (glsl-explicit-location-01 glsl-explicit-location-01.c)
piglit_add_executable (glsl-explicit-location-02 glsl-explicit-location-02.c)
piglit_add_executable (glsl-explicit-location-03 glsl-explicit-location-03.c)
piglit_add_executable (glsl-explicit-location-04 glsl-explicit-location-04.c)
piglit_add_executable (glsl-explicit-location-05 glsl-explicit-location-05.c)
piglit_add_executable (glsl-getattriblocation glsl-getattriblocation.c)
piglit_add_executable (glsl-getactiveuniform-array-size glsl-getactiveuniform-array-size.c)
piglit_add_executable (glsl-getactiveuniform-count glsl-getactiveuniform-count.c)
piglit_add_executable (glsl-getactiveuniform-length glsl-getactiveuniform-length.c)
piglit_add_executable (getuniform-01 getuniform-01.c)
piglit_add_executable (getuniform-02 getuniform-02.c)
piglit_add_executable (getuniform-03 getuniform-03.c)
piglit_add_executable (glsl-invalid-asm-01 glsl-invalid-asm-01.c)
piglit_add_executable (glsl-invalid-asm-02 glsl-invalid-asm-02.c)
piglit_add_executable (glsl-novertexdata glsl-novertexdata.c)
piglit_add_executable (glsl-orangebook-ch06-bump glsl-orangebook-ch06-bump.c)
piglit_add_executable (glsl-reload-source glsl-reload-source.c)
piglit_add_executable (glsl-cache-fallback-shader-source glsl-cache-fallback-shader-source.c)
piglit_add_executable (glsl-unused-varying glsl-unused-varying.c)
piglit_add_executable (glsl-uniform-interstage-limits glsl-uniform-interstage-limits.c)
piglit_add_executable (glsl-uniform-update glsl-uniform-update.c)
piglit_add_executable (glsl-uniform-out-of-bounds glsl-uniform-out-of-bounds.c)
piglit_add_executable (glsl-uniform-out-of-bounds-2 glsl-uniform-out-of-bounds-2.c)
piglit_add_executable (glsl-fs-bug25902 glsl-fs-bug25902.c)
piglit_add_executable (glsl-fs-color-matrix glsl-fs-color-matrix.c)
piglit_add_executable (glsl-fs-exp2 glsl-fs-exp2.c)
piglit_add_executable (glsl-fs-flat-color glsl-fs-flat-color.c)
piglit_add_executable (glsl-fs-fogcolor-statechange glsl-fs-fogcolor-statechange.c)
piglit_add_executable (glsl-fs-fogscale glsl-fs-fogscale.c)
piglit_add_executable (glsl-fs-fragcoord glsl-fs-fragcoord.c)
piglit_add_executable (glsl-fs-fragcoord-zw-ortho glsl-fs-fragcoord-zw-ortho.c)
piglit_add_executable (glsl-fs-fragcoord-zw-perspective glsl-fs-fragcoord-zw-perspective.c)
piglit_add_executable (glsl-fs-loop glsl-fs-loop.c)
piglit_add_executable (glsl-fs-loop-nested glsl-fs-loop-nested.c)

piglit_add_executable (glsl-fs-raytrace-bug27060 glsl-fs-raytrace-bug27060.c ${CMAKE_CURRENT_BINARY_DIR}/glsl-fs-raytrace-bug27060.h)
target_include_directories(glsl-fs-raytrace-bug27060  PUBLIC ${CMAKE_CURRENT_BINARY_DIR})

piglit_add_executable (glsl-fs-sampler-numbering glsl-fs-sampler-numbering.c)
piglit_add_executable (glsl-fs-shader-stencil-export glsl-fs-shader-stencil-export.c)
piglit_add_executable (glsl-fs-sqrt-branch glsl-fs-sqrt-branch.c)
piglit_add_executable (glsl-fs-texturecube glsl-fs-texturecube.c)
piglit_add_executable (glsl-fs-texturecube-2 glsl-fs-texturecube-2.c)
piglit_add_executable (glsl-fs-textureenvcolor-statechange glsl-fs-textureenvcolor-statechange.c)
piglit_add_executable (glsl-fs-texture2drect glsl-fs-texture2drect.c)
piglit_add_executable (glsl-fs-user-varying-ff glsl-fs-user-varying-ff.c)
piglit_add_executable (glsl-vs-arrays glsl-vs-arrays.c)
piglit_add_executable (glsl-vs-mov-after-deref glsl-vs-mov-after-deref.c)
piglit_add_executable (glsl-vs-mvp-statechange glsl-vs-mvp-statechange.c)
piglit_add_executable (glsl-vs-normalscale glsl-vs-normalscale.c)
piglit_add_executable (glsl-vs-functions glsl-vs-functions.c)
piglit_add_executable (glsl-vs-texturematrix-1 glsl-vs-texturematrix-1.c)
piglit_add_executable (glsl-vs-texturematrix-2 glsl-vs-texturematrix-2.c)
piglit_add_executable (glsl-fs-pointcoord glsl-fs-pointcoord.c)
piglit_add_executable (glsl-vs-if-bool glsl-vs-if-bool.c)
piglit_add_executable (glsl-vs-loop glsl-vs-loop.c)
piglit_add_executable (glsl-vs-loop-nested glsl-vs-loop-nested.c)

piglit_add_executable (glsl-vs-raytrace-bug26691 glsl-vs-raytrace-bug26691.c ${CMAKE_CURRENT_BINARY_DIR}/glsl-vs-raytrace-bug26691.h)
target_include_directories(glsl-vs-raytrace-bug26691 PUBLIC ${CMAKE_CURRENT_BINARY_DIR})

piglit_add_executable (glsl-vs-statechange-1 glsl-vs-statechange-1.c)
piglit_add_executable (glsl-vs-user-varying-ff glsl-vs-user-varying-ff.c)
piglit_add_executable (glsl-light-model glsl-light-model.c)
piglit_add_executable (glsl-link-bug30552 glsl-link-bug30552.c)
piglit_add_executable (glsl-link-bug38015 glsl-link-bug38015.c)
piglit_add_executable (glsl-link-initializer-03 glsl-link-initializer-03.c)
piglit_add_executable (gpu_shader4_attribs gpu_shader4_attribs.c)
piglit_add_executable (vp-address-01 vp-address-01.c)
piglit_add_executable (vp-address-02 vp-address-02.c)
piglit_add_executable (vp-address-03 vp-address-03.c)
piglit_add_executable (vp-address-04 vp-address-04.c)
piglit_add_executable (vp-address-05 vp-address-05.c)
piglit_add_executable (vp-address-06 vp-address-06.c)
piglit_add_executable (vp-bad-program vp-bad-program.c)
piglit_add_executable (vp-combined-image-units vp-combined-image-units.c)
piglit_add_executable (vp-clipdistance-01 vp-clipdistance-01.c)
piglit_add_executable (vp-clipdistance-02 vp-clipdistance-02.c)
piglit_add_executable (vp-clipdistance-03 vp-clipdistance-03.c)
piglit_add_executable (vp-clipdistance-04 vp-clipdistance-04.c)
piglit_add_executable (vp-max-array vp-max-array.c)
piglit_add_executable (glsl-fwidth glsl-fwidth.c)
piglit_add_executable (glsl-lod-bias glsl-lod-bias.c)
piglit_add_executable (glsl-preprocessor-comments glsl-preprocessor-comments.c)
piglit_add_executable (vp-ignore-input vp-ignore-input.c)
piglit_add_executable (glsl-empty-vs-no-fs glsl-empty-vs-no-fs.c)
piglit_add_executable (glsl-mat-attribute glsl-mat-attribute.c)
piglit_add_executable (glsl-max-varyings glsl-max-varyings.c)
piglit_add_executable (glsl-useprogram-displaylist glsl-useprogram-displaylist.c)
piglit_add_executable (glsl-routing glsl-routing.c)

piglit_add_executable (shader_runner shader_runner.c parser_utils.c)
IF (MINGW)
	set_target_properties(shader_runner PROPERTIES LINK_FLAGS  "-Wl,--stack,2097152")
ENDIF ()

piglit_add_executable (glsl-vs-point-size glsl-vs-point-size.c)
piglit_add_executable (glsl-sin glsl-sin.c)
IF (UNIX)
	target_link_libraries(glsl-sin m)
ENDIF (UNIX)
piglit_add_executable (glsl-cos glsl-cos.c)
IF (UNIX)
	target_link_libraries(glsl-cos m)
ENDIF (UNIX)
piglit_add_executable (glsl-kwin-blur-1 glsl-kwin-blur-1.c)
piglit_add_executable (glsl-kwin-blur-2 glsl-kwin-blur-2.c)
piglit_add_executable (link-unresolved-function link-unresolved-function.c)
piglit_add_executable (shadersource-no-compile shadersource-no-compile.c)
piglit_add_executable (sso-simple sso-simple.c)
piglit_add_executable (sso-uniforms-01 sso-uniforms-01.c)
piglit_add_executable (sso-uniforms-02 sso-uniforms-02.c)
piglit_add_executable (sso-user-varying-01 sso-user-varying-01.c)
piglit_add_executable (sso-user-varying-02 sso-user-varying-02.c)
piglit_add_executable (useprogram-flushverts-1 useprogram-flushverts-1.c)
piglit_add_executable (useprogram-flushverts-2 useprogram-flushverts-2.c)
piglit_add_executable (useprogram-inside-begin useprogram-inside-begin.c)
piglit_add_executable (useprogram-refcount-1 useprogram-refcount-1.c)
piglit_add_executable (useshaderprogram-bad-type useshaderprogram-bad-type.c)
piglit_add_executable (useshaderprogram-bad-program useshaderprogram-bad-program.c)
piglit_add_executable (useshaderprogram-flushverts-1 useshaderprogram-flushverts-1.c)
piglit_add_executable (version-mixing version-mixing.c)
piglit_add_executable (glsl-vs-int-attrib glsl-vs-int-attrib.c)
piglit_add_executable (unsuccessful-relink unsuccessful-relink.c)

# vim: ft=cmake:
