• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1dEQP README
2===========
3
4This repository contains a GPU testing suite called dEQP (drawElements Quality Program).
5dEQP contains tests for several graphics APIs, including OpenGL ES, EGL, and Vulkan.
6
7Documentation
8-------------
9
10Up-to-date documentation for the dEQP is available at
11[Android Open Source Project site](http://source.android.com/devices/graphics/testing.html).
12
13The .qpa logs generated by the conformance tests may contain embedded PNG images of the results.
14These can be viewed with `scripts/qpa_image_viewer.html`, by opening the file
15with a web browser and following its instructions, or using the
16[Cherry](https://android.googlesource.com/platform/external/cherry/+/master)
17tool.
18
19Khronos Vulkan Conformance Tests
20--------------------------------
21
22This repository includes Khronos Vulkan CTS under `external/vulkancts` directory.
23For more information see [Vulkan CTS README](external/vulkancts/README.md).
24
25Khronos OpenGL / OpenGL ES Conformance Tests
26--------------------------------
27
28This repository includes Khronos OpenGL / OpenGL ES CTS under `external/openglcts` directory.
29For more information see [OpenGL / OpenGL ES CTS README](external/openglcts/README.md).
30
31ANGLE for Android
32--------------------------------
33
34ANGLE can be built for Android by following the instructions
35[here](https://chromium.googlesource.com/angle/angle.git/+/HEAD/doc/DevSetup.md#building-angle-for-android).
36
37The resulting ANGLE shared object libraries can be linked against and embedded into `dEQP.apk` with
38the `--angle-path` option.   This will cause `dEQP.apk` to use the ANGLE libraries for OpenGL ES
39calls, rather than the native drivers.
40
41An ABI must be specified and the directory structure containing the ANGLE shared objects must match
42it so the build system can find the correct `*.so` files.
43
44Assuming ANGLE shared objects are generated into `~/chromium/src/out/Release/` and `dEQP.apk` will
45be generated with `--abis arm64-v8a`, issue the following commands:
46
47	cd ~/chromium/src/out/Release/
48	mkdir arm64-v8a && cd arm64-v8a
49	cp ../lib*_angle.so .
50
51The `--angle-path ~/chromium/src/out/Release/` option can then be used to link against and embed the
52ANGLE shared object files.   The full command would be:
53
54	python scripts/android/build_apk.py --sdk <path to Android SDK> --ndk <path to Android NDK> --abis arm64-v8a --angle-path ~/chromium/src/out/Release/
55