Browse Source

FindOpenGL: Drop explicit dependency on X11 (#15268)

In commit 079e8469ab (... OpenGL always needs X11 on Unix, 2002-09-05)
the FindOpenGL module was taught to search for X11 as a dependency of
the OpenGL library.  This was done without a detailed explanation, and
the dependency should not be explicitly needed because OpenGL headers
should not expose applications to X11 APIs directly.

Unfortunately the only way to know if anything legitimately depends on
this behavior (perhaps in static library cases) is to simply remove it
and wait for issues to be reported.  If so, then we can add some kind of
compatibility setting for this later.  Add a release note to draw
attention to this change.

Reported-by: Dainius "GreatEmerald" Masiliūnas <[email protected]>
Brad King 11 years ago
parent
commit
d051cbda5d
2 changed files with 8 additions and 13 deletions
  1. 8 0
      Help/release/dev/FindOpenGL-no-X11.rst
  2. 0 13
      Modules/FindOpenGL.cmake

+ 8 - 0
Help/release/dev/FindOpenGL-no-X11.rst

@@ -0,0 +1,8 @@
+FindOpenGL-no-X11
+-----------------
+
+* The :module:`FindOpenGL` module no longer explicitly searches
+  for any dependency on X11 libraries with the :module:`FindX11`
+  module.  Such dependencies should not need to be explicit.
+  Applications using X11 APIs themselves should find and link
+  to X11 libraries explicitly.

+ 0 - 13
Modules/FindOpenGL.cmake

@@ -138,19 +138,6 @@ else()
   unset(_OPENGL_INCLUDE_PATH)
   unset(_OPENGL_LIB_PATH)
 
-  # On Unix OpenGL most certainly always requires X11.
-  # Feel free to tighten up these conditions if you don't
-  # think this is always true.
-
-  if (OPENGL_gl_LIBRARY)
-    if(NOT X11_FOUND)
-      include(${CMAKE_CURRENT_LIST_DIR}/FindX11.cmake)
-    endif()
-    if (X11_FOUND)
-      set (OPENGL_LIBRARIES ${X11_LIBRARIES})
-    endif ()
-  endif ()
-
   find_library(OPENGL_glu_LIBRARY
     NAMES GLU MesaGLU
     PATHS ${OPENGL_gl_LIBRARY}