Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at 20.03 76 lines 2.6 kB view raw
1{ stdenv, lib, fetchFromGitHub, cmake, pkgconfig, doxygen, 2 libX11, libXinerama, libXrandr, libGLU, libGL, 3 glib, ilmbase, libxml2, pcre, zlib, 4 jpegSupport ? true, libjpeg, 5 jasperSupport ? false, jasper, # disable jasper by default (many CVE) 6 exrSupport ? false, openexr, 7 gifSupport ? true, giflib, 8 pngSupport ? true, libpng, 9 tiffSupport ? true, libtiff, 10 gdalSupport ? false, gdal, 11 curlSupport ? true, curl, 12 colladaSupport ? false, opencollada, 13 opencascadeSupport ? false, opencascade, 14 ffmpegSupport ? false, ffmpeg, 15 nvttSupport ? false, nvidia-texture-tools, 16 freetypeSupport ? true, freetype, 17 svgSupport ? false, librsvg, 18 pdfSupport ? false, poppler, 19 vncSupport ? false, libvncserver, 20 lasSupport ? false, libLAS, 21 luaSupport ? false, lua, 22 sdlSupport ? false, SDL2, 23 restSupport ? false, asio, boost, 24 withApps ? false, 25 withExamples ? false, fltk, wxGTK, 26}: 27 28stdenv.mkDerivation rec { 29 pname = "openscenegraph"; 30 version = "3.6.4"; 31 32 src = fetchFromGitHub { 33 owner = "openscenegraph"; 34 repo = "OpenSceneGraph"; 35 rev = "OpenSceneGraph-${version}"; 36 sha256 = "0x8hdbzw0b71j91fzp9cwmy9a7ava8v8wwyj8nxijq942vdx1785"; 37 }; 38 39 nativeBuildInputs = [ pkgconfig cmake doxygen ]; 40 41 buildInputs = [ 42 libX11 libXinerama libXrandr libGLU libGL 43 glib ilmbase libxml2 pcre zlib 44 ] ++ lib.optional jpegSupport libjpeg 45 ++ lib.optional jasperSupport jasper 46 ++ lib.optional exrSupport openexr 47 ++ lib.optional gifSupport giflib 48 ++ lib.optional pngSupport libpng 49 ++ lib.optional tiffSupport libtiff 50 ++ lib.optional gdalSupport gdal 51 ++ lib.optional curlSupport curl 52 ++ lib.optional colladaSupport opencollada 53 ++ lib.optional opencascadeSupport opencascade 54 ++ lib.optional ffmpegSupport ffmpeg 55 ++ lib.optional nvttSupport nvidia-texture-tools 56 ++ lib.optional freetypeSupport freetype 57 ++ lib.optional svgSupport librsvg 58 ++ lib.optional pdfSupport poppler 59 ++ lib.optional vncSupport libvncserver 60 ++ lib.optional lasSupport libLAS 61 ++ lib.optional luaSupport lua 62 ++ lib.optional sdlSupport SDL2 63 ++ lib.optionals restSupport [ asio boost ] 64 ++ lib.optionals withExamples [ fltk wxGTK ] 65 ; 66 67 cmakeFlags = lib.optional (!withApps) "-DBUILD_OSG_APPLICATIONS=OFF" ++ lib.optional withExamples "-DBUILD_OSG_EXAMPLES=ON"; 68 69 meta = with stdenv.lib; { 70 description = "A 3D graphics toolkit"; 71 homepage = http://www.openscenegraph.org/; 72 maintainers = with maintainers; [ aanderse raskin ]; 73 platforms = platforms.linux; 74 license = "OpenSceneGraph Public License - free LGPL-based license"; 75 }; 76}