Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ 2 stdenv, 3 lib, 4 fetchFromGitHub, 5 autoreconfHook, 6 gaucheBootstrap, 7 pkg-config, 8 texinfo, 9 libiconv, 10 gdbm, 11 openssl, 12 zlib, 13 mbedtls, 14 cacert, 15}: 16 17stdenv.mkDerivation rec { 18 pname = "gauche"; 19 version = "0.9.15"; 20 21 src = fetchFromGitHub { 22 owner = "shirok"; 23 repo = pname; 24 rev = "release${lib.replaceStrings [ "." ] [ "_" ] version}"; 25 hash = "sha256-M2vZqTMkob+WxUnCo4NDxS4pCVNleVBqkiiRp9nG/KA="; 26 }; 27 28 nativeBuildInputs = [ 29 gaucheBootstrap 30 pkg-config 31 texinfo 32 autoreconfHook 33 ]; 34 35 buildInputs = [ 36 libiconv 37 gdbm 38 openssl 39 zlib 40 mbedtls 41 cacert 42 ]; 43 44 autoreconfPhase = '' 45 ./DIST gen 46 ''; 47 48 postPatch = '' 49 substituteInPlace ext/package-templates/configure \ 50 --replace "#!/usr/bin/env gosh" "#!$out/bin/gosh" 51 patchShebangs . 52 ''; 53 54 configureFlags = [ 55 "--with-iconv=${libiconv}" 56 "--with-dbm=gdbm" 57 "--with-zlib=${zlib}" 58 "--with-ca-bundle=${cacert}/etc/ssl/certs/ca-bundle.crt" 59 # TODO: Enable slib 60 # Current slib in nixpkgs is specialized to Guile 61 # "--with-slib=${slibGuile}/lib/slib" 62 ]; 63 64 enableParallelBuilding = true; 65 66 # TODO: Fix tests that fail in sandbox build 67 doCheck = false; 68 69 meta = with lib; { 70 description = "R7RS Scheme scripting engine"; 71 homepage = "https://practical-scheme.net/gauche/"; 72 mainProgram = "gosh"; 73 maintainers = with maintainers; [ mnacamura ]; 74 license = licenses.bsd3; 75 platforms = platforms.unix; 76 }; 77}