summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Heidelberg <david.heidelberg@collabora.com>2024-03-31 19:50:53 +0200
committerMarge Bot <emma+marge@anholt.net>2024-04-12 12:05:54 +0000
commitd958b70d1fc5c2ee039363d862b14ca498a50e82 (patch)
treec212a8b9c0cf2d61e2d54b0d2119dec251e55886
parent4319b9fc84d3f98f73e7dedb51fbe12945058a57 (diff)
cmake: implement X11 option (required for GLX)
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/piglit/-/merge_requests/898>
-rw-r--r--CMakeLists.txt21
1 files changed, 14 insertions, 7 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index ff6846fcd..5991962db 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -54,6 +54,8 @@ option(PIGLIT_SSE2 "Build with SSE2 support on 32-bit x86 architecture" ON)
option(PIGLIT_USE_WAFFLE "Use Waffle in place of GLUT" ${DEFAULT_WAFFLE})
+option(PIGLIT_USE_X11 "Use X11" ${DEFAULT_X11})
+
option(PIGLIT_BUILD_GLX_TESTS "Build tests that require GLX" ${DEFAULT_GLX})
option(PIGLIT_BUILD_WGL_TESTS "Build tests that require WGL" ${DEFAULT_WGL})
@@ -69,8 +71,13 @@ find_package(PNG)
if(PNG_FOUND)
add_definitions(-DPIGLIT_HAS_PNG)
endif(PNG_FOUND)
-find_package(X11)
-if(X11_FOUND)
+
+if(PIGLIT_BUILD_GLX_TESTS AND NOT PIGLIT_USE_X11)
+ message(FATAL_ERROR "X11 has to be enabled for GLX to build")
+endif()
+
+if(PIGLIT_USE_X11)
+ find_package(X11 REQUIRED)
set(PIGLIT_HAS_X11 True)
add_definitions(-DPIGLIT_HAS_X11)
endif()
@@ -152,12 +159,12 @@ if(PIGLIT_BUILD_CL_TESTS)
find_package(OpenCL 1.2 REQUIRED)
endif(PIGLIT_BUILD_CL_TESTS)
-IF(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
- if(X11_FOUND AND OPENGL_gl_LIBRARY AND PIGLIT_BUILD_GLX_TESTS)
- set(PIGLIT_HAS_GLX True)
- add_definitions(-DPIGLIT_HAS_GLX)
- endif()
+if(PIGLIT_USE_X11 AND OPENGL_gl_LIBRARY AND PIGLIT_BUILD_GLX_TESTS)
+ set(PIGLIT_HAS_GLX True)
+ add_definitions(-DPIGLIT_HAS_GLX)
+endif()
+IF(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
pkg_check_modules(GBM QUIET gbm>=17.1)
if(GBM_FOUND)
set(PIGLIT_HAS_GBM True)