nixpkgs/pkgs/development/libraries/forge/default.nix

52 lines
1.4 KiB
Nix
Raw Normal View History

{ lib, stdenv, fetchFromGitHub, cmake, pkg-config
2019-10-21 02:46:17 +01:00
, arrayfire, expat, fontconfig, freeimage, freetype, boost
2019-11-10 16:44:34 +00:00
, mesa, libGLU, libGL, glfw3, SDL2, cudatoolkit
2019-10-21 02:46:17 +01:00
}:
stdenv.mkDerivation rec {
pname = "forge";
version = "1.0.4";
src = fetchFromGitHub {
owner = "arrayfire";
repo = "forge";
rev = "v${version}";
sha256 = "00pmky6kccd7pwi8sma79qpmzr2f9pbn6gym3gyqm64yckw6m484";
fetchSubmodules = true;
};
nativeBuildInputs = [
cmake
pkg-config
2019-10-21 02:46:17 +01:00
];
buildInputs = [
expat
fontconfig
freetype
boost.out
boost.dev
freeimage
mesa
2019-11-10 16:44:34 +00:00
libGLU libGL
2019-10-21 02:46:17 +01:00
glfw3
SDL2
cudatoolkit
arrayfire
];
meta = with lib; {
2019-10-21 02:46:17 +01:00
description = "An OpenGL interop library that can be used with ArrayFire or any other application using CUDA or OpenCL compute backend";
longDescription = ''
An OpenGL interop library that can be used with ArrayFire or any other application using CUDA or OpenCL compute backend.
The goal of Forge is to provide high performance OpenGL visualizations for C/C++ applications that use CUDA/OpenCL.
Forge uses OpenGL >=3.3 forward compatible contexts, so please make sure you have capable hardware before trying it out.
'';
license = licenses.bsd3;
homepage = "https://arrayfire.com/";
platforms = platforms.linux;
maintainers = with maintainers; [ chessai ];
};
}