Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ stdenv, lib, fetchFromGitHub, cmake, pkg-config, doxygen, 2 libX11, libXinerama, libXrandr, libGLU, libGL, 3 glib, ilmbase, libxml2, pcre, zlib, 4 AGL, Accelerate, Carbon, Cocoa, Foundation, 5 boost, 6 jpegSupport ? true, libjpeg, 7 exrSupport ? false, openexr, 8 gifSupport ? true, giflib, 9 pngSupport ? true, libpng, 10 tiffSupport ? true, libtiff, 11 gdalSupport ? false, gdal, 12 curlSupport ? true, curl, 13 colladaSupport ? false, collada-dom, 14 opencascadeSupport ? false, opencascade, 15 ffmpegSupport ? false, ffmpeg, 16 nvttSupport ? false, nvidia-texture-tools, 17 freetypeSupport ? true, freetype, 18 svgSupport ? false, librsvg, 19 pdfSupport ? false, poppler, 20 vncSupport ? false, libvncserver, 21 lasSupport ? false, libLAS, 22 luaSupport ? false, lua, 23 sdlSupport ? false, SDL2, 24 restSupport ? false, asio, 25 withApps ? false, 26 withExamples ? false, fltk, 27}: 28 29stdenv.mkDerivation rec { 30 pname = "openscenegraph"; 31 version = "3.6.5"; 32 33 src = fetchFromGitHub { 34 owner = "openscenegraph"; 35 repo = "OpenSceneGraph"; 36 rev = "OpenSceneGraph-${version}"; 37 sha256 = "00i14h82qg3xzcyd8p02wrarnmby3aiwmz0z43l50byc9f8i05n1"; 38 }; 39 40 nativeBuildInputs = [ pkg-config cmake doxygen ]; 41 42 buildInputs = [ 43 libX11 libXinerama libXrandr libGLU libGL 44 glib ilmbase libxml2 pcre zlib 45 ] ++ lib.optional jpegSupport libjpeg 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 collada-dom 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.optional restSupport asio 64 ++ lib.optionals withExamples [ fltk ] 65 ++ lib.optionals stdenv.isDarwin [ AGL Accelerate Carbon Cocoa Foundation ] 66 ++ lib.optional (restSupport || colladaSupport) boost 67 ; 68 69 cmakeFlags = lib.optional (!withApps) "-DBUILD_OSG_APPLICATIONS=OFF" ++ lib.optional withExamples "-DBUILD_OSG_EXAMPLES=ON"; 70 71 meta = with lib; { 72 description = "A 3D graphics toolkit"; 73 homepage = "http://www.openscenegraph.org/"; 74 maintainers = with maintainers; [ aanderse raskin ]; 75 platforms = with platforms; linux ++ darwin; 76 license = "OpenSceneGraph Public License - free LGPL-based license"; 77 }; 78}