Files
nixpkgs/pkgs/development/libraries/freenect/default.nix
T
Emily fbda1dbfd6 treewide: replace freeglut with libglut
Allow the macOS GLUT framework to be used automatically in many
cases. Packages that specifically search for freeglut or require its
additional APIs should still explicitly depend on it.

Deliberately skip the Haskell package set, which is mostly
automatically generated, and mupdf, which has its own fork of freeglut.
2024-06-22 18:06:51 +01:00

34 lines
1.1 KiB
Nix

{ stdenv, lib, fetchFromGitHub, cmake, libusb1, pkg-config, libglut, libGLU, libGL, libXi, libXmu
, GLUT, Cocoa
}:
stdenv.mkDerivation rec {
pname = "freenect";
version = "0.7.0";
src = fetchFromGitHub {
owner = "OpenKinect";
repo = "libfreenect";
rev = "v${version}";
sha256 = "sha256-Lb5mrl9jiI1Z9UOAlP+bBPNoKNxm5VSrFZRvifEfhoU=";
};
buildInputs = [ libusb1 libglut libGLU libGL libXi libXmu ]
++ lib.optionals stdenv.isDarwin [ GLUT Cocoa ];
nativeBuildInputs = [ cmake pkg-config ];
# see https://aur.archlinux.org/cgit/aur.git/commit/PKGBUILD?h=libfreenect&id=0d17db49ba64bcb9e3a4eed61cf55c9a5ceb97f1
patchPhase = lib.concatMapStrings (x: ''
substituteInPlace ${x} --replace "{GLUT_LIBRARY}" "{GLUT_LIBRARIES}"
'') [ "examples/CMakeLists.txt" "wrappers/cpp/CMakeLists.txt" ];
meta = {
description = "Drivers and libraries for the Xbox Kinect device on Windows, Linux, and macOS";
homepage = "http://openkinect.org";
license = with lib.licenses; [ gpl2 asl20 ];
maintainers = with lib.maintainers; [ bennofs ];
platforms = with lib.platforms; linux ++ darwin ;
};
}