{"id":27940523,"url":"https://github.com/khronosgroup/vk-gl-cts","last_synced_at":"2025-05-14T19:06:01.082Z","repository":{"id":4061570,"uuid":"50466830","full_name":"KhronosGroup/VK-GL-CTS","owner":"KhronosGroup","description":"Khronos Vulkan, OpenGL, and OpenGL ES Conformance Tests","archived":false,"fork":false,"pushed_at":"2025-04-30T14:03:19.000Z","size":1623622,"stargazers_count":551,"open_issues_count":129,"forks_count":311,"subscribers_count":61,"default_branch":"main","last_synced_at":"2025-05-07T10:17:24.541Z","etag":null,"topics":["opengl","opengl-cts","opengl-es","opengl-es-cts","vulkan","vulkan-cts","vulkan-sc"],"latest_commit_sha":null,"homepage":"https://www.khronos.org/","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/KhronosGroup.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2016-01-26T23:29:28.000Z","updated_at":"2025-05-04T20:51:48.000Z","dependencies_parsed_at":"2023-09-23T11:29:23.100Z","dependency_job_id":"c41e83c4-2fe6-4934-909d-4ceb2ec29635","html_url":"https://github.com/KhronosGroup/VK-GL-CTS","commit_stats":{"total_commits":8575,"total_committers":499,"mean_commits":17.18436873747495,"dds":0.8994752186588921,"last_synced_commit":"20d674342f008624b82e08f26ed5572c176ba7bd"},"previous_names":["khronosgroup/vulkan-cts"],"tags_count":137,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KhronosGroup%2FVK-GL-CTS","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KhronosGroup%2FVK-GL-CTS/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KhronosGroup%2FVK-GL-CTS/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KhronosGroup%2FVK-GL-CTS/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/KhronosGroup","download_url":"https://codeload.github.com/KhronosGroup/VK-GL-CTS/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252856567,"owners_count":21814858,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["opengl","opengl-cts","opengl-es","opengl-es-cts","vulkan","vulkan-cts","vulkan-sc"],"created_at":"2025-05-07T10:17:52.539Z","updated_at":"2025-05-07T10:17:53.136Z","avatar_url":"https://github.com/KhronosGroup.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"VK-GL-CTS README\n===========\n\nThis repository contains Khronos Conformance Testing Suite called VK-GL-CTS\nwhich originated from dEQP (drawElements Quality Program).\nVK-GL-CTS contains tests for several graphics APIs, including\nOpenGL, OpenGL ES, EGL, Vulkan, and Vulkan SC.\n\nDocumentation\n-------------\n\nUp-to-date documentation for VK-GL-CTS is available at:\n\n* [The VK-GL-CTS wiki for Khronos members](https://gitlab.khronos.org/Tracker/vk-gl-cts/wikis/home)\n* [The VK-GL-CTS wiki for non-Khronos members](https://github.com/KhronosGroup/VK-GL-CTS/wiki)\n\nThe .qpa logs generated by the conformance tests may contain embedded PNG images of the results.\nThese can be viewed with `scripts/qpa_image_viewer.html`, by opening the file\nwith a web browser and following its instructions, or using the\n[Cherry](https://android.googlesource.com/platform/external/cherry/)\ntool.\n\nKhronos Vulkan Conformance Tests\n--------------------------------\n\nThis repository includes Khronos Vulkan CTS under `external/vulkancts` directory.\nFor more information see [Vulkan CTS README](external/vulkancts/README.md).\n\nKhronos OpenGL / OpenGL ES Conformance Tests\n--------------------------------\n\nThis repository includes Khronos OpenGL / OpenGL ES CTS under `external/openglcts` directory.\nFor more information see [OpenGL / OpenGL ES CTS README](external/openglcts/README.md).\n\nSelecting a subset of targets to build by default\n--------------------------------\n\nWhen configuring the source code of VK-GL-CTS for running either Vulkan\nConformance Tests or OpenGL(ES) Conformance Tests as described above, CMake will\ngenerate build files that, by default on desktop platforms, will build every\npossible project binary. This may be undesirable due the amount of time and disk\nspace needed to perform the build.\n\nOne way of selecting only a subset of the targets to be built is using CMake's\ntarget selection mechanism. For example, the following command will only build\n`deqp-vk`, the main Vulkan Conformance Tests binary:\n\n```\ncmake --build BUILD_DIRECTORY --target deqp-vk\n```\n\nWhen building only a subset of targets is the preferred default behavior for a\ngiven working copy or build directory, there's a second target selection\nmechanism that can be used to avoid passing the `--target` option every time:\nthe `SELECTED_BUILD_TARGETS` CMake option. If set to a non-empty value, only the\ntargets listed in that configuration option, separated by spaces, will be built.\n\nFor example, passing `-DSELECTED_BUILD_TARGETS=\"deqp-vk deqp-vksc\"` when\nconfiguring the project will make `cmake --build BUILD_DIRECTORY` act as if it\nhad been passed `--target deqp-vk --target deqp-vksc` as additional arguments.\n\n**IMPORTANT**: Target subset selection may not have been thoroughly tested in\nall enviroments and situations, and it does not replace the instructions given\nfor the purposes of creating a conformance submission.\n\nANGLE for Android\n--------------------------------\n\nANGLE can be built for Android by following the instructions\n[here](https://chromium.googlesource.com/angle/angle.git/+/HEAD/doc/DevSetup.md#building-angle-for-android).\n\nThe resulting ANGLE shared object libraries can be linked against and embedded into `dEQP.apk` with\nthe `--angle-path` option.   This will cause `dEQP.apk` to use the ANGLE libraries for OpenGL ES\ncalls, rather than the native drivers.\n\nAn ABI must be specified and the directory structure containing the ANGLE shared objects must match\nit so the build system can find the correct `*.so` files.\n\nAssuming ANGLE shared objects are generated into `~/chromium/src/out/Release/` and `dEQP.apk` will\nbe generated with `--abis arm64-v8a`, issue the following commands:\n\n\tcd ~/chromium/src/out/Release/\n\tmkdir arm64-v8a \u0026\u0026 cd arm64-v8a\n\tcp ../lib*_angle.so .\n\nThe `--angle-path ~/chromium/src/out/Release/` option can then be used to link against and embed the\nANGLE shared object files.   The full command would be:\n\n\tpython scripts/android/build_apk.py --sdk \u003cpath to Android SDK\u003e --ndk \u003cpath to Android NDK\u003e --abis arm64-v8a --angle-path ~/chromium/src/out/Release/\n\nVulkan Video Samples\n--------------------------------\n\nIn order to run the vulkan video *decode* test suite, you'll need to run the script `external/fetch_video_decode_samples.py`\nprior running any test suite such as `dEQP-VK.video.decode.*`. It will download the video clips  in `external/vulkancts/data/vulkan/video`.\n\nTo run the vulkan video *encode* test suite, you'll need to run the script `external/fetch_video_encode_samples.py`\nprior running any test suite such as `dEQP-VK.video.encode.*`. It will download the video clips  in `external/vulkancts/data/vulkan/video`.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkhronosgroup%2Fvk-gl-cts","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkhronosgroup%2Fvk-gl-cts","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkhronosgroup%2Fvk-gl-cts/lists"}