glfw: patch linkage with X11

This commit is contained in:
Nguyễn Gia Phong 2021-11-27 22:12:34 +07:00
parent 56391a5c57
commit 95d7a591ea
No known key found for this signature in database
GPG key ID: 27148B2C06A2224B
2 changed files with 21 additions and 1 deletions

View file

@ -16,7 +16,9 @@ stdenv.mkDerivation rec {
sha256 = "sha256-1KkzYclOLGqiV1/8BsJ3e+pXMQ6a+sjLwZ7mjSuxxbA=";
};
patches = lib.optional waylandSupport ./wayland.patch;
# Fix freezing on Wayland (https://github.com/glfw/glfw/pull/1711)
# and linkage issues on X11 (https://github.com/NixOS/nixpkgs/issues/142583)
patches = if waylandSupport then ./wayland.patch else ./x11.patch;
propagatedBuildInputs = [ libGL ];

View file

@ -0,0 +1,18 @@
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index a0be580e..ba143851 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -219,6 +219,13 @@ if (GLFW_BUILD_X11)
if (NOT X11_Xshape_INCLUDE_PATH)
message(FATAL_ERROR "X Shape headers not found; install libxext development package")
endif()
+
+ target_link_libraries(glfw PRIVATE ${X11_Xrandr_LIB}
+ ${X11_Xinerama_LIB}
+ ${X11_Xkb_LIB}
+ ${X11_Xcursor_LIB}
+ ${X11_Xi_LIB}
+ ${X11_Xshape_LIB})
endif()
if (UNIX AND NOT APPLE)