Add support for testing with Mesa + Zink.

To run a trace test with zink, use --use-gl=zink.

Bug: angleproject:7689
Change-Id: I70073756f903db1c224fe6175d55be4cad637aca
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3899382
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
This commit is contained in:
Jamie Madill
2022-09-15 17:29:04 -04:00
committed by Angle LUCI CQ
parent d19f872529
commit a986811024
12 changed files with 147 additions and 6 deletions

View File

@@ -152,6 +152,19 @@ bool EGLWindow::initializeDisplay(OSWindow *osWindow,
angle::GLESDriverType driverType,
const EGLPlatformParameters &params)
{
if (driverType == angle::GLESDriverType::ZinkEGL)
{
std::stringstream driDirStream;
char s = angle::GetPathSeparator();
driDirStream << angle::GetModuleDirectory() << "mesa" << s << "src" << s << "gallium" << s
<< "targets" << s << "dri";
std::string driDir = driDirStream.str();
angle::SetEnvironmentVar("MESA_LOADER_DRIVER_OVERRIDE", "zink");
angle::SetEnvironmentVar("LIBGL_DRIVERS_PATH", driDir.c_str());
}
#if defined(ANGLE_USE_UTIL_LOADER)
PFNEGLGETPROCADDRESSPROC getProcAddress;
glWindowingLibrary->getAs("eglGetProcAddress", &getProcAddress);