diff options
Diffstat (limited to 'pkgs/development/libraries/glfw/3.x.nix')
-rw-r--r-- | pkgs/development/libraries/glfw/3.x.nix | 31 |
1 files changed, 19 insertions, 12 deletions
diff --git a/pkgs/development/libraries/glfw/3.x.nix b/pkgs/development/libraries/glfw/3.x.nix index 014e5f7e9f0e5..5e0b6adbb2267 100644 --- a/pkgs/development/libraries/glfw/3.x.nix +++ b/pkgs/development/libraries/glfw/3.x.nix @@ -1,47 +1,54 @@ { stdenv, lib, fetchFromGitHub, cmake , libGL, libXrandr, libXinerama, libXcursor, libX11, libXi, libXext , Carbon, Cocoa, Kernel, OpenGL, fixDarwinDylibNames -, waylandSupport ? false, extra-cmake-modules, wayland -, wayland-protocols, libxkbcommon +, extra-cmake-modules, wayland +, wayland-scanner, wayland-protocols, libxkbcommon }: stdenv.mkDerivation rec { - version = "3.3.10"; + version = "3.4"; pname = "glfw"; src = fetchFromGitHub { owner = "glfw"; repo = "GLFW"; rev = version; - sha256 = "sha256-kTRXsfQ+9PFurG3ffz0lwnITAYAXtNl3h/3O6FSny5o="; + sha256 = "sha256-FcnQPDeNHgov1Z07gjFze0VMz2diOrpbKZCsI96ngz0="; }; # Fix linkage issues on X11 (https://github.com/NixOS/nixpkgs/issues/142583) - patches = lib.optional (!waylandSupport) ./x11.patch; + patches = ./x11.patch; propagatedBuildInputs = lib.optionals stdenv.isDarwin [ OpenGL ] ++ lib.optionals stdenv.isLinux [ libGL ]; - nativeBuildInputs = [ cmake ] + nativeBuildInputs = [ cmake extra-cmake-modules ] ++ lib.optional stdenv.isDarwin fixDarwinDylibNames - ++ lib.optional waylandSupport extra-cmake-modules; + ++ lib.optionals stdenv.isLinux [ wayland-scanner ]; buildInputs = lib.optionals stdenv.isDarwin [ Carbon Cocoa Kernel ] - ++ lib.optionals (stdenv.isLinux && waylandSupport) [ wayland wayland-protocols libxkbcommon ] - ++ lib.optionals (stdenv.isLinux && !waylandSupport) [ libX11 libXrandr libXinerama libXcursor libXi libXext ]; + ++ lib.optionals stdenv.isLinux [ + wayland + wayland-protocols + libxkbcommon + libX11 + libXrandr + libXinerama + libXcursor + libXi + libXext + ]; cmakeFlags = [ "-DBUILD_SHARED_LIBS=ON" ] ++ lib.optionals (!stdenv.isDarwin && !stdenv.hostPlatform.isWindows) [ "-DCMAKE_C_FLAGS=-D_GLFW_GLX_LIBRARY='\"${lib.getLib libGL}/lib/libGL.so.1\"'" - ] ++ lib.optionals waylandSupport [ - "-DGLFW_USE_WAYLAND=ON" "-DCMAKE_C_FLAGS=-D_GLFW_EGL_LIBRARY='\"${lib.getLib libGL}/lib/libEGL.so.1\"'" ]; - postPatch = lib.optionalString waylandSupport '' + postPatch = lib.optionalString stdenv.isLinux '' substituteInPlace src/wl_init.c \ --replace "libxkbcommon.so.0" "${lib.getLib libxkbcommon}/lib/libxkbcommon.so.0" ''; |