diff --git a/pkgs/development/libraries/pangolin/default.nix b/pkgs/development/libraries/pangolin/default.nix new file mode 100644 index 00000000000..09cbd86eb92 --- /dev/null +++ b/pkgs/development/libraries/pangolin/default.nix @@ -0,0 +1,57 @@ +{ stdenv, lib, fetchFromGitHub, cmake, pkgconfig, doxygen, mesa_noglu, glew +, xorg , ffmpeg, python3 , libjpeg, libpng, libtiff, eigen +, Carbon ? null, Cocoa ? null +}: + +stdenv.mkDerivation rec { + name = "pangolin-${version}"; + + version = "2017-08-02"; + + src = fetchFromGitHub { + owner = "stevenlovegrove"; + repo = "Pangolin"; + rev = "f05a8cdc4f0e32cc1664a430f1f85e60e233c407"; + sha256 = "0pfbaarlsw7f7cmsppm7m13nz0k530wwwyczy2l9k448p3v7x9j0"; + }; + + nativeBuildInputs = [ cmake pkgconfig doxygen ]; + + buildInputs = [ + mesa_noglu + glew + xorg.libX11 + ffmpeg + python3 + libjpeg + libpng + libtiff + eigen + ] + ++ lib.optionals stdenv.isDarwin [ Carbon Cocoa ]; + + enableParallelBuilding = true; + + # The tests use cmake's findPackage to find the installed version of + # pangolin, which isn't what we want (or available). + doCheck = false; + cmakeFlags = [ "-DBUILD_TESTS=OFF" ]; + + meta = { + description = "A lightweight portable rapid development library for managing OpenGL display / interaction and abstracting video input"; + longDescription = '' + Pangolin is a lightweight portable rapid development library for managing + OpenGL display / interaction and abstracting video input. At its heart is + a simple OpenGl viewport manager which can help to modularise 3D + visualisation without adding to its complexity, and offers an advanced + but intuitive 3D navigation handler. Pangolin also provides a mechanism + for manipulating program variables through config files and ui + integration, and has a flexible real-time plotter for visualising + graphical data. + ''; + homepage = https://github.com/stevenlovegrove/Pangolin; + license = stdenv.lib.licenses.mit; + maintainers = [ stdenv.lib.maintainers.expipiplus1 ]; + platforms = stdenv.lib.platforms.all; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 33add0fca07..72682f2170c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8197,6 +8197,11 @@ with pkgs; cairomm = callPackage ../development/libraries/cairomm { }; pango = callPackage ../development/libraries/pango { }; + + pangolin = callPackage ../development/libraries/pangolin { + inherit (darwin.apple_sdk.frameworks) Carbon Cocoa; + }; + pangomm = callPackage ../development/libraries/pangomm { inherit (darwin.apple_sdk.frameworks) ApplicationServices; };