diff options
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/glfw')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/glfw/2.x.nix | 31 | ||||
-rw-r--r-- | nixpkgs/pkgs/development/libraries/glfw/3.x.nix | 39 |
2 files changed, 70 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/glfw/2.x.nix b/nixpkgs/pkgs/development/libraries/glfw/2.x.nix new file mode 100644 index 000000000000..b1118b473b6f --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/glfw/2.x.nix @@ -0,0 +1,31 @@ +{ stdenv, fetchurl, libGLU, libGL, libX11, libXext }: + +stdenv.mkDerivation rec { + name = "glfw-2.7.9"; + + src = fetchurl { + url = "mirror://sourceforge/glfw/${name}.tar.bz2"; + sha256 = "17c2msdcb7pn3p8f83805h1c216bmdqnbn9hgzr1j8wnwjcpxx6i"; + }; + + buildInputs = [ libGLU libGL libX11 libXext ]; + + buildPhase = '' + make x11 + ''; + + installPhase = '' + mkdir -p $out + make x11-dist-install PREFIX=$out + mv $out/lib/libglfw.so $out/lib/libglfw.so.2 + ln -s libglfw.so.2 $out/lib/libglfw.so + ''; + + meta = with stdenv.lib; { + description = "Multi-platform library for creating OpenGL contexts and managing input, including keyboard, mouse, joystick and time"; + homepage = http://glfw.sourceforge.net/; + license = licenses.zlib; + maintainers = [ stdenv.lib.maintainers.marcweber ]; + platforms = platforms.linux; + }; +} diff --git a/nixpkgs/pkgs/development/libraries/glfw/3.x.nix b/nixpkgs/pkgs/development/libraries/glfw/3.x.nix new file mode 100644 index 000000000000..0dfe3cbea2e4 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/glfw/3.x.nix @@ -0,0 +1,39 @@ +{ stdenv, lib, fetchFromGitHub, cmake +, libGL, libXrandr, libXinerama, libXcursor, libX11, libXi, libXext +, Cocoa, Kernel, fixDarwinDylibNames +}: + +stdenv.mkDerivation rec { + version = "3.3.2"; + pname = "glfw"; + + src = fetchFromGitHub { + owner = "glfw"; + repo = "GLFW"; + rev = version; + sha256 = "0b5lsxz1xkzip7fvbicjkxvg5ig8gbhx1zrlhandqc0rpk56bvyw"; + }; + + enableParallelBuilding = true; + + propagatedBuildInputs = [ libGL ]; + + nativeBuildInputs = [ cmake ]; + + buildInputs = [ libX11 libXrandr libXinerama libXcursor libXi libXext ] + ++ lib.optionals stdenv.isDarwin [ Cocoa Kernel fixDarwinDylibNames ]; + + cmakeFlags = [ "-DBUILD_SHARED_LIBS=ON" ]; + + preConfigure = lib.optional (!stdenv.isDarwin) '' + substituteInPlace src/glx_context.c --replace "libGL.so.1" "${lib.getLib libGL}/lib/libGL.so.1" + ''; + + meta = with stdenv.lib; { + description = "Multi-platform library for creating OpenGL contexts and managing input, including keyboard, mouse, joystick and time"; + homepage = https://www.glfw.org/; + license = licenses.zlib; + maintainers = with maintainers; [ marcweber twey ]; + platforms = platforms.unix; + }; +} |