diff options
author | Robin Gloster <mail@glob.in> | 2016-06-10 09:27:04 +0000 |
---|---|---|
committer | Robin Gloster <mail@glob.in> | 2016-06-10 09:27:04 +0000 |
commit | 8031cba2ab3146977141fc504bea2a1e03b5c126 (patch) | |
tree | 0cd68c0007851dfed7d7f8247754b5c4b356704e /pkgs/development/compilers | |
parent | 2a5e64b69c83592caf900cb0b7213235e96368de (diff) | |
parent | 656c48f141be5886c515a1a874a47472cbbac6bd (diff) | |
download | nixlib-8031cba2ab3146977141fc504bea2a1e03b5c126.tar nixlib-8031cba2ab3146977141fc504bea2a1e03b5c126.tar.gz nixlib-8031cba2ab3146977141fc504bea2a1e03b5c126.tar.bz2 nixlib-8031cba2ab3146977141fc504bea2a1e03b5c126.tar.lz nixlib-8031cba2ab3146977141fc504bea2a1e03b5c126.tar.xz nixlib-8031cba2ab3146977141fc504bea2a1e03b5c126.tar.zst nixlib-8031cba2ab3146977141fc504bea2a1e03b5c126.zip |
Merge remote-tracking branch 'upstream/master' into hardened-stdenv
Diffstat (limited to 'pkgs/development/compilers')
37 files changed, 395 insertions, 190 deletions
diff --git a/pkgs/development/compilers/aldor/default.nix b/pkgs/development/compilers/aldor/default.nix index bcdeb2f19e81..352dde6d9e19 100644 --- a/pkgs/development/compilers/aldor/default.nix +++ b/pkgs/development/compilers/aldor/default.nix @@ -6,7 +6,7 @@ stdenv.mkDerivation { src = fetchgit { url = "https://github.com/pippijn/aldor"; - sha256 = "1l9fc2cgwabifwbijcp293abc8hcv40nzx2w31jkxh8n0plbiczn"; + sha256 = "19v07ffq4r1gjnmg7a8ifgjkwan9a3rwbj0qjz8fycwy221844m6"; rev = "15471e75f3d65b93150f414ebcaf59a03054b68d"; }; diff --git a/pkgs/development/compilers/aliceml/default.nix b/pkgs/development/compilers/aliceml/default.nix index 01a8a337fc0a..a5900f2ce25a 100644 --- a/pkgs/development/compilers/aliceml/default.nix +++ b/pkgs/development/compilers/aliceml/default.nix @@ -6,7 +6,7 @@ stdenv.mkDerivation { src = fetchgit { url = "https://github.com/aliceml/aliceml"; rev = "7d44dc8e4097c6f85888bbf4ff86d51fe05b0a08"; - sha256 = "ab2d5bf05c40905b02cb1ec975d4980ae4437757856eeb1f587ede2c45a1917f"; + sha256 = "1xpvia00cpig0i7qvz29sx7xjic6kd472ng722x4rapz8mjnf8bk"; fetchSubmodules = true; }; diff --git a/pkgs/development/compilers/chez/default.nix b/pkgs/development/compilers/chez/default.nix index 65200dce71ef..e4ceb40cad6e 100644 --- a/pkgs/development/compilers/chez/default.nix +++ b/pkgs/development/compilers/chez/default.nix @@ -8,7 +8,7 @@ stdenv.mkDerivation rec { src = fetchgit { url = "https://github.com/cisco/chezscheme.git"; rev = "65df1d1f7c37f5b5a93cd7e5b475dda9dbafe03c"; - sha256 = "024x79xcdqp665xjyccpn02w6dmdvnhw0h0vdc42g9s5wv5ry92m"; + sha256 = "1b273il3njnn04z55w1hnygvcqllc6p5qg9mcwh10w39fwsd8fbs"; fetchSubmodules = true; }; diff --git a/pkgs/development/compilers/dtc/default.nix b/pkgs/development/compilers/dtc/default.nix index 6daf7a6115a3..4adcb995bde4 100644 --- a/pkgs/development/compilers/dtc/default.nix +++ b/pkgs/development/compilers/dtc/default.nix @@ -7,7 +7,7 @@ stdenv.mkDerivation rec { src = fetchgit { url = "git://git.kernel.org/pub/scm/utils/dtc/dtc.git"; rev = "refs/tags/v${version}"; - sha256 = "0z7yrv0sdhsh5wwy7yd1fvs4pqaq0n9m5i8w65lyibg77ahkasdg"; + sha256 = "0wcn9x2vynwlfxk5c6jrf8lz7qvm1sbb9gh27drk1mx8msdh5hd5"; }; nativeBuildInputs = [ flex bison ]; diff --git a/pkgs/development/compilers/ecl/default.nix b/pkgs/development/compilers/ecl/default.nix index 4edfaa715123..61737004e6fb 100644 --- a/pkgs/development/compilers/ecl/default.nix +++ b/pkgs/development/compilers/ecl/default.nix @@ -10,7 +10,7 @@ let version="16.1.2"; name="${baseName}-${version}"; hash="16ab8qs3awvdxy8xs8jy82v8r04x4wr70l9l2j45vgag18d2nj1d"; - url="https://common-lisp.net/project/ecl/files/release/16.1.2/ecl-16.1.2.tgz"; + url="https://common-lisp.net/project/ecl/static/files/release/ecl-16.1.2.tgz"; sha256="16ab8qs3awvdxy8xs8jy82v8r04x4wr70l9l2j45vgag18d2nj1d"; }; buildInputs = [ diff --git a/pkgs/development/compilers/edk2/default.nix b/pkgs/development/compilers/edk2/default.nix index da178e80a1a4..4ddf580fae5d 100644 --- a/pkgs/development/compilers/edk2/default.nix +++ b/pkgs/development/compilers/edk2/default.nix @@ -15,7 +15,7 @@ edk2 = stdenv.mkDerivation { src = fetchgit { url = git://github.com/tianocore/edk2; rev = "684a565a04"; - sha256 = "1l46396f48v91z5b8lh3b0f0lcd7z5f86i1nrpc7l5gf7gx3117j"; + sha256 = "0s9ywb8w7xzlnmm4kwzykxkrdaw53b7pky121cc9wjkllzqwyxrb"; }; buildInputs = [ libuuid pythonFull ]; diff --git a/pkgs/development/compilers/elm/packages/elm-compiler.nix b/pkgs/development/compilers/elm/packages/elm-compiler.nix index ac0e2c236322..8bebdf4315a3 100644 --- a/pkgs/development/compilers/elm/packages/elm-compiler.nix +++ b/pkgs/development/compilers/elm/packages/elm-compiler.nix @@ -10,7 +10,7 @@ mkDerivation { version = "0.17"; src = fetchgit { url = "https://github.com/elm-lang/elm-compiler"; - sha256 = "185mh53yyxh9m0z8808fxpds3vqyrbhahf587nnw6qzyzv63m7px"; + sha256 = "1vx4jp20nj4s41zsqnwyh80dvg7b7kd9fh6agl99v1xx9d3i6ws1"; rev = "c9c7e72c424a13255f8ee84c719f7ef48b689c1a"; }; isLibrary = true; diff --git a/pkgs/development/compilers/elm/packages/elm-make.nix b/pkgs/development/compilers/elm/packages/elm-make.nix index 862adb460e3e..1fe4acc9e3b9 100644 --- a/pkgs/development/compilers/elm/packages/elm-make.nix +++ b/pkgs/development/compilers/elm/packages/elm-make.nix @@ -8,7 +8,7 @@ mkDerivation { version = "0.17"; src = fetchgit { url = "https://github.com/elm-lang/elm-make"; - sha256 = "0y8a67y8jhnhbcqzgjymyf1ffs75vyfpyb8as2bi0mkhb7fvzi6q"; + sha256 = "0ywi6iq2a3rb8a68ryqpq9y22536aa9k71wy7fcmrd5nwkmpwd2r"; rev = "5f7b74567c43eff341048c7caceb247b51cdb8bb"; }; isLibrary = false; diff --git a/pkgs/development/compilers/elm/packages/elm-package.nix b/pkgs/development/compilers/elm/packages/elm-package.nix index 5d2b4f8baba9..7df5516b27ad 100644 --- a/pkgs/development/compilers/elm/packages/elm-package.nix +++ b/pkgs/development/compilers/elm/packages/elm-package.nix @@ -9,7 +9,7 @@ mkDerivation { version = "0.17"; src = fetchgit { url = "https://github.com/elm-lang/elm-package"; - sha256 = "1x9jczby38ax3rbjq6hbyr593dhxazm39gy9jv00k6508dzvfg2l"; + sha256 = "0z86560a2f7w3ywqvzqghgz100z0yn8zsiixkw4lp5168krp4axg"; rev = "fc0924210fe5a7c0af543769b1353dbb2ddf2f0c"; }; isLibrary = true; diff --git a/pkgs/development/compilers/elm/packages/elm-reactor.nix b/pkgs/development/compilers/elm/packages/elm-reactor.nix index 18bb428a7a6a..55b6b9ae416c 100644 --- a/pkgs/development/compilers/elm/packages/elm-reactor.nix +++ b/pkgs/development/compilers/elm/packages/elm-reactor.nix @@ -8,7 +8,7 @@ mkDerivation { version = "0.17"; src = fetchgit { url = "https://github.com/elm-lang/elm-reactor"; - sha256 = "14hb16qwx1f4bfngh87pwjavgz6njbwdxlsy218rw3xydy3s1cn3"; + sha256 = "03lb6fcc5d02gflarxc54l71hbwdb73v423ffjz5hvlha6ixglv7"; rev = "4781ad2fbb6cbcde0d659dec293bbed9c847ba71"; }; isLibrary = false; diff --git a/pkgs/development/compilers/elm/packages/elm-repl.nix b/pkgs/development/compilers/elm/packages/elm-repl.nix index 4be7b023fa0f..030378e1811b 100644 --- a/pkgs/development/compilers/elm/packages/elm-repl.nix +++ b/pkgs/development/compilers/elm/packages/elm-repl.nix @@ -8,7 +8,7 @@ mkDerivation { version = "0.17"; src = fetchgit { url = "https://github.com/elm-lang/elm-repl"; - sha256 = "1mxg99w36b8i43kl1nxp7fd86igi5wyj08m9mraiq58vpcgyqnzq"; + sha256 = "0bpmkm7q3a0h4hwlbwcnzaqgf6n5p1qw65z8kw84f52s5bndc0wc"; rev = "95b4555cff6b6e2a55a4ea3dab00bfb39dfebf0d"; }; isLibrary = false; diff --git a/pkgs/development/compilers/eql/default.nix b/pkgs/development/compilers/eql/default.nix index de531e901d98..1128fbe64ec3 100644 --- a/pkgs/development/compilers/eql/default.nix +++ b/pkgs/development/compilers/eql/default.nix @@ -6,7 +6,7 @@ stdenv.mkDerivation rec { src = fetchgit { rev = "9097bf98446ee33c07bb155d800395775ce0d9b2"; url = "https://gitlab.com/eql/eql.git"; - sha256 = "1fp88xmmk1sa0iqxahfiv818bp2sbf66vqrd4xq9jb731ybdvsb8"; + sha256 = "17h23qr7fyr9hvjgiq0yhacmjs43x06vh8978aq42ymcgipxdcww"; }; buildInputs = [ ecl qt4 xorgserver xkbcomp xkeyboard_config ]; diff --git a/pkgs/development/compilers/factor-lang/default.nix b/pkgs/development/compilers/factor-lang/default.nix new file mode 100644 index 000000000000..ca3e9c6956d8 --- /dev/null +++ b/pkgs/development/compilers/factor-lang/default.nix @@ -0,0 +1,94 @@ +{ stdenv, fetchurl, fetchFromGitHub, glib, glibc, git, + rlwrap, curl, pkgconfig, perl, makeWrapper, tzdata, ncurses, + libX11, pango, cairo, gtk2, gdk_pixbuf, gtkglext, + mesa, libXmu, libXt, libICE, libSM }: + +stdenv.mkDerivation rec { + name = "factor-lang-${version}"; + version = "0.97"; + rev = "eb3ca179740e6cfba696b55a999caa13369e6182"; + + src = fetchFromGitHub { + owner = "factor"; + repo = "factor"; + rev = rev; + sha256 = "16zlbxbad3d19jq01nk824i19bypqzn8l3yfxys40z06vjjncapd"; + }; + + factorimage = fetchurl { + url = http://downloads.factorcode.org/releases/0.97/factor-linux-x86-64-0.97.tar.gz; + sha256 = "06y125c8vbng54my5fxdr3crpxkvhhcng2n35cxddd3wcg6vhxhp"; + name = "factorimage"; + }; + + buildInputs = [ git rlwrap curl pkgconfig perl makeWrapper + libX11 pango cairo gtk2 gdk_pixbuf gtkglext + mesa libXmu libXt libICE libSM ]; + + buildPhase = '' + make $(bash ./build-support/factor.sh make-target) GIT_LABEL=heads/master-${rev} + ''; + + installPhase = '' + mkdir -p $out/bin $out/lib/factor + # First, get a workable image. Unfortunately, no boot-image + # is available with release info. So fetch a released image. + # The released image has library path info embedded, so we + # have to first recreate the boot image with Nix paths, and + # then use it to build the Nix release image. + zcat ${factorimage} | (cd $out/lib && tar -xvpf - factor/factor.image ) + + cp -r basis core extra unmaintained $out/lib/factor + + # Factor uses the home directory for cache during compilation. + # We cant have that. So set it to $TMPDIR/.home + export HOME=$TMPDIR/.home && mkdir -p $HOME + + # there is no ld.so.cache in NixOS so we construct one + # out of known libraries. The side effect is that find-lib + # will work only on the known libraries. There does not seem + # to be a generic solution here. + find $(echo ${stdenv.lib.makeLibraryPath [ + glib libX11 pango cairo gtk2 gdk_pixbuf gtkglext + mesa libXmu libXt libICE libSM ]} | sed -e 's#:# #g') -name \*.so.\* > $TMPDIR/so.lst + + (echo $(cat $TMPDIR/so.lst | wc -l) "libs found in cache \`/etc/ld.so.cache'"; + for l in $(<$TMPDIR/so.lst); + do + echo " $(basename $l) (libc6,x86-64) => $l"; + done)> $out/lib/factor/ld.so.cache + + sed -ie "s#/sbin/ldconfig -p#cat $out/lib/factor/ld.so.cache#g" \ + $out/lib/factor/basis/alien/libraries/finder/linux/linux.factor + + sed -ie 's#/usr/share/zoneinfo/#${tzdata}/share/zoneinfo/#g' \ + $out/lib/factor/extra/tzinfo/tzinfo.factor + + sed -ie 's#/usr/share/terminfo#${ncurses}/share/terminfo#g' \ + $out/lib/factor/extra/terminfo/terminfo.factor + + cp ./factor $out/bin + wrapProgram $out/bin/factor --prefix LD_LIBRARY_PATH : \ + "${stdenv.lib.makeLibraryPath [ glib + libX11 pango cairo gtk2 gdk_pixbuf gtkglext + mesa libXmu libXt libICE libSM ]}" + + sed -ie 's#/bin/.factor-wrapped#/lib/factor/factor#g' $out/bin/factor + mv $out/bin/.factor-wrapped $out/lib/factor/factor + + # make a new bootstrap image + (cd $out/bin && ./factor -script -e='"unix-x86.64" USING: system bootstrap.image memory ; make-image save 0 exit' ) + mv $out/lib/factor/boot.unix-x86.64.image $out/lib/factor/factor.image + # now make the full system image, it overwrites $out/lib/factor/factor.image + $out/bin/factor -i=$out/lib/factor/factor.image + ''; + + meta = with stdenv.lib; { + homepage = http://factorcode.org; + license = licenses.bsd2; + description = "A concatenative, stack-based programming language"; + + maintainers = [ maintainers.vrthra ]; + platforms = [ "x86_64-linux" ]; + }; +} diff --git a/pkgs/development/compilers/go/1.5.nix b/pkgs/development/compilers/go/1.5.nix index 7f7abd8a6e75..e6060f3ecec6 100644 --- a/pkgs/development/compilers/go/1.5.nix +++ b/pkgs/development/compilers/go/1.5.nix @@ -1,4 +1,4 @@ -{ stdenv, lib, fetchurl, tzdata, iana_etc, go_1_4, runCommand +{ stdenv, lib, fetchFromGitHub, tzdata, iana_etc, go_1_4, runCommand , perl, which, pkgconfig, patch , pcre , Security, Foundation }: @@ -15,11 +15,13 @@ in stdenv.mkDerivation rec { name = "go-${version}"; - version = "1.5.3"; + version = "1.5.4"; - src = fetchurl { - url = "https://github.com/golang/go/archive/go${version}.tar.gz"; - sha256 = "1n2niq0147pqflqh8j1s5wv8aq3vlh58ni3bp9add261z5q1g50k"; + src = fetchFromGitHub { + owner = "golang"; + repo = "go"; + rev = "go${version}"; + sha256 = "1lvk9awmkjbz5z4snv3q3b3r7ijfz97kig2wkqz6jmr7b0lp1fcy"; }; # perl is used for testing go vet diff --git a/pkgs/development/compilers/haxe/default.nix b/pkgs/development/compilers/haxe/default.nix index 41c7a476b27b..f70fbcf583c2 100644 --- a/pkgs/development/compilers/haxe/default.nix +++ b/pkgs/development/compilers/haxe/default.nix @@ -7,7 +7,7 @@ stdenv.mkDerivation { src = fetchgit { url = "https://github.com/HaxeFoundation/haxe.git"; - sha256 = "1p4yja6flv2r04q9lcrjxia3f3fsmhi3d88s0lz0nf0r4m61bjz0"; + sha256 = "0d8s9yqsqcbr2lfw4xnmg7vzgb6k1jq6hlwwaf1kmn9wxpvcc6x9"; fetchSubmodules = true; # Tag 3.1.3 diff --git a/pkgs/development/compilers/hhvm/default.nix b/pkgs/development/compilers/hhvm/default.nix index eb9e5f7d3627..59fb90d78cdf 100644 --- a/pkgs/development/compilers/hhvm/default.nix +++ b/pkgs/development/compilers/hhvm/default.nix @@ -14,7 +14,7 @@ stdenv.mkDerivation rec { src = fetchgit { url = "https://github.com/facebook/hhvm.git"; rev = "f516f1bb9046218f89885a220354c19dda6d8f4d"; - sha256 = "1jdw6j394z7ksg4wdcnm7lkcs7iam5myx6k18w8hr595s1dfk3sj"; + sha256 = "0sv856ran15rvnrj4dk0a5jirip5w4336a0aycv9wh77wm4s8xdb"; fetchSubmodules = true; }; diff --git a/pkgs/development/compilers/julia/git.nix b/pkgs/development/compilers/julia/git.nix index 00c4730cf85f..60e71b353e82 100644 --- a/pkgs/development/compilers/julia/git.nix +++ b/pkgs/development/compilers/julia/git.nix @@ -55,7 +55,7 @@ stdenv.mkDerivation rec { src = fetchgit { url = "https://github.com/JuliaLang/${pname}"; rev = "cb93e6b70b4b1313b4de8c54e55e85c8eb43daa3"; - sha256 = "11dmbjqiidlbh8sj5s09zsbfslm3zs0kw7iq40281hl5dfsr7zm6"; + sha256 = "1xihq66il4wlxfm5fsgcirh76dq936fm887v2ynqkm3kz7ahhssw"; }; prePatch = '' diff --git a/pkgs/development/compilers/lessc/default.nix b/pkgs/development/compilers/lessc/default.nix index 82052b3d3ca9..3d7947dae7b6 100644 --- a/pkgs/development/compilers/lessc/default.nix +++ b/pkgs/development/compilers/lessc/default.nix @@ -7,7 +7,7 @@ stdenv.mkDerivation rec { src = fetchgit { url = https://github.com/less/less.js.git; rev = "refs/tags/v${version}"; - sha256 = "0r8bcad247v5fyh543a7dppmfbf49ai4my3vcizk42fsbnjs8q2x"; + sha256 = "1af1xbh1pjpfsx0jp69syji6w9750nigk652yk46jrja3z1scb4s"; }; phases = [ "installPhase" ]; diff --git a/pkgs/development/compilers/llvm/3.6/llvm.nix b/pkgs/development/compilers/llvm/3.6/llvm.nix index 5941d7883565..54de4b200f30 100644 --- a/pkgs/development/compilers/llvm/3.6/llvm.nix +++ b/pkgs/development/compilers/llvm/3.6/llvm.nix @@ -57,10 +57,6 @@ in stdenv.mkDerivation rec { rm -fR $out paxmark m bin/{lli,llvm-rtdyld} - - paxmark m unittests/ExecutionEngine/JIT/JITTests - paxmark m unittests/ExecutionEngine/MCJIT/MCJITTests - paxmark m unittests/Support/SupportTests ''; enableParallelBuilding = true; diff --git a/pkgs/development/compilers/llvm/3.7/llvm.nix b/pkgs/development/compilers/llvm/3.7/llvm.nix index 3a7829eca6df..cc65c69927c5 100644 --- a/pkgs/development/compilers/llvm/3.7/llvm.nix +++ b/pkgs/development/compilers/llvm/3.7/llvm.nix @@ -62,10 +62,6 @@ in stdenv.mkDerivation rec { rm -fR $out paxmark m bin/{lli,llvm-rtdyld} - - paxmark m unittests/ExecutionEngine/JIT/JITTests - paxmark m unittests/ExecutionEngine/MCJIT/MCJITTests - paxmark m unittests/Support/SupportTests ''; enableParallelBuilding = true; diff --git a/pkgs/development/compilers/llvm/3.8/llvm.nix b/pkgs/development/compilers/llvm/3.8/llvm.nix index ef929dec68ba..fb8266480326 100644 --- a/pkgs/development/compilers/llvm/3.8/llvm.nix +++ b/pkgs/development/compilers/llvm/3.8/llvm.nix @@ -67,10 +67,6 @@ in stdenv.mkDerivation rec { rm -fR $out paxmark m bin/{lli,llvm-rtdyld} - - paxmark m unittests/ExecutionEngine/JIT/JITTests - paxmark m unittests/ExecutionEngine/MCJIT/MCJITTests - paxmark m unittests/Support/SupportTests ''; enableParallelBuilding = true; diff --git a/pkgs/development/compilers/mkcl/default.nix b/pkgs/development/compilers/mkcl/default.nix index 1678a6e50915..daebf3b284ee 100644 --- a/pkgs/development/compilers/mkcl/default.nix +++ b/pkgs/development/compilers/mkcl/default.nix @@ -7,7 +7,7 @@ stdenv.mkDerivation rec { src = fetchgit { url = "https://github.com/jcbeaudoin/mkcl.git"; rev = "86768cc1dfc2cc9caa1fe9696584bb25ea6c1429"; - sha256 = "0ja7vyp5rjidb2a1gah35jqzqn6zjkikz5sd966p0f0wh26l6n03"; + sha256 = "1gsvjp9xlnjccg0idi8x8gzkn6hlrqia95jh3zx7snm894503mf1"; }; buildInputs = [ makeWrapper ]; diff --git a/pkgs/development/compilers/opa/default.nix b/pkgs/development/compilers/opa/default.nix index f0b503bd0be7..40c719262796 100644 --- a/pkgs/development/compilers/opa/default.nix +++ b/pkgs/development/compilers/opa/default.nix @@ -11,7 +11,7 @@ stdenv.mkDerivation rec { src = fetchgit { url = https://github.com/MLstate/opalang.git; rev = "047f58bfd4be35ee30176156b3718c707a6c0f76"; - sha256 = "1jbxfrmpbjjk7qvaxdn47044w5m8wr96q9yx65ib3wlapmjbvdvf"; + sha256 = "1laynwf64713q2vhdkxw679dah6hl3bvmrj8cj836a9k9z7jcc1r"; }; # Paths so the opa compiler code generation will use the same programs as were diff --git a/pkgs/development/compilers/opendylan/default.nix b/pkgs/development/compilers/opendylan/default.nix index 0e26526ba161..9ed85e9c4d40 100644 --- a/pkgs/development/compilers/opendylan/default.nix +++ b/pkgs/development/compilers/opendylan/default.nix @@ -7,7 +7,7 @@ stdenv.mkDerivation { src = fetchgit { url = https://github.com/dylan-lang/opendylan; rev = "ce9b14dab6cb9ffedc69fae8c6df524c0c79abd3"; - sha256 = "cec80980b838ac2581dfb6282e25d208e720d475256b75e24b23dbd30b09d21f"; + sha256 = "17jvhv0y63fj25ma05k70b7phcwgjyna5qkrirk48z3xapb8bknd"; fetchSubmodules = true; }; diff --git a/pkgs/development/compilers/rustc/beta.nix b/pkgs/development/compilers/rustc/beta.nix new file mode 100644 index 000000000000..7dbd8ae7a695 --- /dev/null +++ b/pkgs/development/compilers/rustc/beta.nix @@ -0,0 +1,12 @@ +{ stdenv, callPackage, rustcStable }: + +callPackage ./generic.nix { + shortVersion = "beta-1.10.0"; + forceBundledLLVM = false; + configureFlags = [ "--release-channel=beta" ]; + srcRev = "39f3c16cca889ef3f1719d9177e3315258222a65"; + srcSha = "01bx6616lslp2mbj4h8bb6m042fs0y1z8g0jgpxvbk3fbhzwafrx"; + patches = [ ./patches/disable-lockfile-check.patch ] ++ + stdenv.lib.optional stdenv.needsPax ./patches/grsec.patch; + rustc = rustcStable; +} diff --git a/pkgs/development/compilers/rustc/bootstrap.nix b/pkgs/development/compilers/rustc/bootstrap.nix new file mode 100644 index 000000000000..8bff511459dc --- /dev/null +++ b/pkgs/development/compilers/rustc/bootstrap.nix @@ -0,0 +1,58 @@ +{ stdenv, fetchurl }: + +let + platform = if stdenv.system == "i686-linux" + then "linux-i386" + else if stdenv.system == "x86_64-linux" + then "linux-x86_64" + else if stdenv.system == "i686-darwin" + then "macos-i386" + else if stdenv.system == "x86_64-darwin" + then "macos-x86_64" + else abort "no snapshot to bootstrap for this platform (missing platform url suffix)"; + + /* Rust is bootstrapped from an earlier built version. We need + to fetch these earlier versions, which vary per platform. + The shapshot info you want can be found at + https://github.com/rust-lang/rust/blob/{$shortVersion}/src/snapshots.txt + with the set you want at the top. Make sure this is the latest snapshot + for the tagged release and not a snapshot in the current HEAD. + NOTE: Rust 1.9.0 is the last version that uses snapshots + */ + + snapshotHashLinux686 = "0e0e4448b80d0a12b75485795244bb3857a0a7ef"; + snapshotHashLinux64 = "1273b6b6aed421c9e40c59f366d0df6092ec0397"; + snapshotHashDarwin686 = "9f9c0b4a2db09acbce54b792fb8839a735585565"; + snapshotHashDarwin64 = "52570f6fd915b0210a9be98cfc933148e16a75f8"; + snapshotDate = "2016-03-18"; + snapshotRev = "235d774"; + + snapshotHash = if stdenv.system == "i686-linux" + then snapshotHashLinux686 + else if stdenv.system == "x86_64-linux" + then snapshotHashLinux64 + else if stdenv.system == "i686-darwin" + then snapshotHashDarwin686 + else if stdenv.system == "x86_64-darwin" + then snapshotHashDarwin64 + else abort "no snapshot for platform ${stdenv.system}"; + + snapshotName = "rust-stage0-${snapshotDate}-${snapshotRev}-${platform}-${snapshotHash}.tar.bz2"; +in + +stdenv.mkDerivation { + name = "rust-bootstrap"; + src = fetchurl { + url = "http://static.rust-lang.org/stage0-snapshots/${snapshotName}"; + sha1 = snapshotHash; + }; + dontStrip = true; + installPhase = '' + mkdir -p "$out" + cp -r bin "$out/bin" + '' + stdenv.lib.optionalString stdenv.isLinux '' + patchelf --interpreter "${stdenv.glibc.out}/lib/${stdenv.cc.dynamicLinker}" \ + --set-rpath "${stdenv.cc.cc.lib}/lib/:${stdenv.cc.cc.lib}/lib64/" \ + "$out/bin/rustc" + ''; +} diff --git a/pkgs/development/compilers/rustc/default.nix b/pkgs/development/compilers/rustc/default.nix deleted file mode 100644 index 6c5aa04d7076..000000000000 --- a/pkgs/development/compilers/rustc/default.nix +++ /dev/null @@ -1,27 +0,0 @@ -{ stdenv, callPackage }: - -callPackage ./generic.nix { - shortVersion = "1.9.0"; - isRelease = true; - forceBundledLLVM = false; - configureFlags = [ "--release-channel=stable" ]; - srcSha = "0yg5admbypqld0gmxbhrh2yag5kxjklpjgldrp3pd5vczkl13aml"; - - /* Rust is bootstrapped from an earlier built version. We need - to fetch these earlier versions, which vary per platform. - The shapshot info you want can be found at - https://github.com/rust-lang/rust/blob/{$shortVersion}/src/snapshots.txt - with the set you want at the top. Make sure this is the latest snapshot - for the tagged release and not a snapshot in the current HEAD. - */ - - snapshotHashLinux686 = "0e0e4448b80d0a12b75485795244bb3857a0a7ef"; - snapshotHashLinux64 = "1273b6b6aed421c9e40c59f366d0df6092ec0397"; - snapshotHashDarwin686 = "9f9c0b4a2db09acbce54b792fb8839a735585565"; - snapshotHashDarwin64 = "52570f6fd915b0210a9be98cfc933148e16a75f8"; - snapshotDate = "2016-03-18"; - snapshotRev = "235d774"; - - patches = [ ./patches/remove-uneeded-git.patch ] - ++ stdenv.lib.optional stdenv.needsPax ./patches/grsec.patch; -} diff --git a/pkgs/development/compilers/rustc/generic.nix b/pkgs/development/compilers/rustc/generic.nix index 976c1b932b5a..09d8ad8bf00f 100644 --- a/pkgs/development/compilers/rustc/generic.nix +++ b/pkgs/development/compilers/rustc/generic.nix @@ -1,14 +1,11 @@ { stdenv, fetchurl, fetchgit, fetchzip, file, python2, tzdata, procps -, llvm, jemalloc, ncurses, darwin, binutils +, llvm, jemalloc, ncurses, darwin, binutils, rustc -, shortVersion, isRelease +, isRelease ? false +, shortVersion , forceBundledLLVM ? false -, srcSha, srcRev ? "" -, snapshotHashLinux686, snapshotHashLinux64 -, snapshotHashDarwin686, snapshotHashDarwin64 -, snapshotDate, snapshotRev +, srcSha, srcRev , configureFlags ? [] - , patches } @ args: @@ -26,9 +23,8 @@ sure those derivations still compile. (racer, for example). */ -assert (if isRelease then srcRev == "" else srcRev != ""); - -let version = if isRelease then +let + version = if isRelease then "${shortVersion}" else "${shortVersion}-g${builtins.substring 0 7 srcRev}"; @@ -39,16 +35,6 @@ let version = if isRelease then llvmShared = llvm.override { enableSharedLibraries = true; }; - platform = if stdenv.system == "i686-linux" - then "linux-i386" - else if stdenv.system == "x86_64-linux" - then "linux-x86_64" - else if stdenv.system == "i686-darwin" - then "macos-i386" - else if stdenv.system == "x86_64-darwin" - then "macos-x86_64" - else abort "no snapshot to bootstrap for this platform (missing platform url suffix)"; - target = if stdenv.system == "i686-linux" then "i686-unknown-linux-gnu" else if stdenv.system == "x86_64-linux" @@ -66,20 +52,9 @@ let version = if isRelease then license = [ licenses.mit licenses.asl20 ]; platforms = platforms.linux ++ platforms.darwin; }; - - snapshotHash = if stdenv.system == "i686-linux" - then snapshotHashLinux686 - else if stdenv.system == "x86_64-linux" - then snapshotHashLinux64 - else if stdenv.system == "i686-darwin" - then snapshotHashDarwin686 - else if stdenv.system == "x86_64-darwin" - then snapshotHashDarwin64 - else abort "no snapshot for platform ${stdenv.system}"; - snapshotName = "rust-stage0-${snapshotDate}-${snapshotRev}-${platform}-${snapshotHash}.tar.bz2"; in -with stdenv.lib; stdenv.mkDerivation { +stdenv.mkDerivation { inherit name; inherit version; inherit meta; @@ -88,42 +63,19 @@ with stdenv.lib; stdenv.mkDerivation { NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isDarwin "-rpath ${llvmShared}/lib"; - src = if isRelease then - fetchzip { - url = "http://static.rust-lang.org/dist/rustc-${version}-src.tar.gz"; - sha256 = srcSha; - } - else - fetchgit { - url = https://github.com/rust-lang/rust; - rev = srcRev; - sha256 = srcSha; - }; - - # We need rust to build rust. If we don't provide it, configure will try to download it. - snapshot = stdenv.mkDerivation { - name = "rust-stage0"; - src = fetchurl { - url = "http://static.rust-lang.org/stage0-snapshots/${snapshotName}"; - sha1 = snapshotHash; - }; - dontStrip = true; - installPhase = '' - mkdir -p "$out" - cp -r bin "$out/bin" - '' + optionalString stdenv.isLinux '' - patchelf --interpreter "${stdenv.glibc.out}/lib/${stdenv.cc.dynamicLinker}" \ - --set-rpath "${stdenv.cc.cc.lib}/lib/:${stdenv.cc.cc.lib}/lib64/" \ - "$out/bin/rustc" - ''; + src = fetchgit { + url = https://github.com/rust-lang/rust; + rev = srcRev; + sha256 = srcSha; }; + # We need rust to build rust. If we don't provide it, configure will try to download it. configureFlags = configureFlags - ++ [ "--enable-local-rust" "--local-rust-root=$snapshot" "--enable-rpath" ] + ++ [ "--enable-local-rust" "--local-rust-root=${rustc}" "--enable-rpath" ] # ++ [ "--jemalloc-root=${jemalloc}/lib" ++ [ "--default-linker=${stdenv.cc}/bin/cc" "--default-ar=${binutils.out}/bin/ar" ] - ++ optional (stdenv.cc.cc ? isClang) "--enable-clang" - ++ optional (!forceBundledLLVM) "--llvm-root=${llvmShared}"; + ++ stdenv.lib.optional (stdenv.cc.cc ? isClang) "--enable-clang" + ++ stdenv.lib.optional (!forceBundledLLVM) "--llvm-root=${llvmShared}"; inherit patches; @@ -138,7 +90,7 @@ with stdenv.lib; stdenv.mkDerivation { --replace "\$\$(subst /,//," "\$\$(subst /,/," # Fix dynamic linking against llvm - ${optionalString (!forceBundledLLVM) ''sed -i 's/, kind = \\"static\\"//g' src/etc/mklldeps.py''} + ${stdenv.lib.optionalString (!forceBundledLLVM) ''sed -i 's/, kind = \\"static\\"//g' src/etc/mklldeps.py''} # Fix the configure script to not require curl as we won't use it sed -i configure \ @@ -160,9 +112,9 @@ with stdenv.lib; stdenv.mkDerivation { ''; # ps is needed for one of the test cases - nativeBuildInputs = [ file python2 procps ]; + nativeBuildInputs = [ file python2 procps rustc ]; buildInputs = [ ncurses ] - ++ optional (!forceBundledLLVM) llvmShared; + ++ stdenv.lib.optional (!forceBundledLLVM) llvmShared; # https://github.com/rust-lang/rust/issues/30181 # enableParallelBuilding = false; # missing files during linking, occasionally diff --git a/pkgs/development/compilers/rustc/head.nix b/pkgs/development/compilers/rustc/head.nix index bb67b88c4780..8d9373eb3c3d 100644 --- a/pkgs/development/compilers/rustc/head.nix +++ b/pkgs/development/compilers/rustc/head.nix @@ -1,27 +1,13 @@ # Please make sure to check if rustfmt still builds when updating nightly -{ stdenv, callPackage }: +{ stdenv, callPackage, rustcStable }: callPackage ./generic.nix { - shortVersion = "2016-03-22"; - isRelease = false; - forceBundledLLVM = true; - srcRev = "6cc502c986d42da407e26a49d4f09f21d3072fcb"; - srcSha = "096lsc8irh9a7w494yaji28kzy9frs2myqrfyj0fzbxkvs3yfhzz"; - - /* Rust is bootstrapped from an earlier built version. We need - to fetch these earlier versions, which vary per platform. - The shapshot info you want can be found at - https://github.com/rust-lang/rust/blob/{$shortVersion}/src/snapshots.txt - with the set you want at the top. - */ - - snapshotHashLinux686 = "0e0e4448b80d0a12b75485795244bb3857a0a7ef"; - snapshotHashLinux64 = "1273b6b6aed421c9e40c59f366d0df6092ec0397"; - snapshotHashDarwin686 = "9f9c0b4a2db09acbce54b792fb8839a735585565"; - snapshotHashDarwin64 = "52570f6fd915b0210a9be98cfc933148e16a75f8"; - snapshotDate = "2016-03-18"; - snapshotRev = "235d774"; - - patches = [ ./patches/remove-uneeded-git.patch ] - ++ stdenv.lib.optional stdenv.needsPax ./patches/grsec.patch; + shortVersion = "master-1.11.0"; + forceBundledLLVM = false; + srcRev = "298730e7032cd55809423773da397cd5c7d827d4"; + srcSha = "0hyz5j1z75sjkgsifzgxviv3b1lhgaz8wqwvmq80xx5vd78yd0c1"; + patches = [ ./patches/disable-lockfile-check.patch + ./patches/use-rustc-1.9.0.patch ] ++ + stdenv.lib.optional stdenv.needsPax ./patches/grsec.patch; + rustc = rustcStable; } diff --git a/pkgs/development/compilers/rustc/patches/disable-lockfile-check.patch b/pkgs/development/compilers/rustc/patches/disable-lockfile-check.patch new file mode 100644 index 000000000000..0c01cb1a7f19 --- /dev/null +++ b/pkgs/development/compilers/rustc/patches/disable-lockfile-check.patch @@ -0,0 +1,25 @@ +From e7378e267bba203bd593b49705c24303b0a46cb7 Mon Sep 17 00:00:00 2001 +From: David Craven <david@craven.ch> +Date: Wed, 1 Jun 2016 01:41:35 +0200 +Subject: [PATCH] disable-lockfile-check + +--- + src/tools/tidy/src/main.rs | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/tools/tidy/src/main.rs b/src/tools/tidy/src/main.rs +index 2839bbd..50142ff 100644 +--- a/src/tools/tidy/src/main.rs ++++ b/src/tools/tidy/src/main.rs +@@ -47,7 +47,7 @@ fn main() { + errors::check(&path, &mut bad); + cargo::check(&path, &mut bad); + features::check(&path, &mut bad); +- cargo_lock::check(&path, &mut bad); ++ //cargo_lock::check(&path, &mut bad); + + if bad { + panic!("some tidy checks failed"); +-- +2.8.3 + diff --git a/pkgs/development/compilers/rustc/patches/use-rustc-1.9.0.patch b/pkgs/development/compilers/rustc/patches/use-rustc-1.9.0.patch new file mode 100644 index 000000000000..150306744be6 --- /dev/null +++ b/pkgs/development/compilers/rustc/patches/use-rustc-1.9.0.patch @@ -0,0 +1,25 @@ +From 2710f3c8ae142abe1720b3476cd1ca60cee0c077 Mon Sep 17 00:00:00 2001 +From: David Craven <david@craven.ch> +Date: Wed, 1 Jun 2016 00:12:35 +0200 +Subject: [PATCH] Patch stage0.txt to use rustc 1.9.0 + +--- + src/stage0.txt | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/stage0.txt b/src/stage0.txt +index 58b7f8f..3c84cab 100644 +--- a/src/stage0.txt ++++ b/src/stage0.txt +@@ -12,6 +12,6 @@ + # tarball for a stable release you'll likely see `1.x.0-$date` where `1.x.0` was + # released on `$date` + +-rustc: beta-2016-04-13 +-rustc_key: c2743eb4 ++rustc: 1.9.0-2016-05-24 ++rustc_key: d16b8f0e + cargo: nightly-2016-04-10 +-- +2.8.3 + diff --git a/pkgs/development/compilers/rustc/stable.nix b/pkgs/development/compilers/rustc/stable.nix new file mode 100644 index 000000000000..596ef2d0cb7a --- /dev/null +++ b/pkgs/development/compilers/rustc/stable.nix @@ -0,0 +1,13 @@ +{ stdenv, callPackage }: + +callPackage ./generic.nix { + shortVersion = "1.9.0"; + isRelease = true; + forceBundledLLVM = false; + configureFlags = [ "--release-channel=stable" ]; + srcRev = "e4e8b666850a763fdf1c3c2c142856ab51e32779"; + srcSha = "1pz4qx70mqv78fxm4w1mq7csk5pssq4qmr2vwwb5v8hyx03caff8"; + patches = [ ./patches/remove-uneeded-git.patch ] + ++ stdenv.lib.optional stdenv.needsPax ./patches/grsec.patch; + rustc = callPackage ./bootstrap.nix {}; +} diff --git a/pkgs/development/compilers/sbcl/default.nix b/pkgs/development/compilers/sbcl/default.nix index 893b6efea77a..e9a1624df1d8 100644 --- a/pkgs/development/compilers/sbcl/default.nix +++ b/pkgs/development/compilers/sbcl/default.nix @@ -9,11 +9,11 @@ stdenv.mkDerivation rec { name = "sbcl-${version}"; - version = "1.3.5"; + version = "1.3.6"; src = fetchurl { url = "mirror://sourceforge/project/sbcl/sbcl/${version}/${name}-source.tar.bz2"; - sha256 = "0p3f9bvwdcl84n1l6imww547bdbfsbkvad8iad43jcb2hrpy3wf8"; + sha256 = "1ndha72ji30qkq3rq76sp0yrka0679agg97x9imda2pyv0dsq5zh"; }; patchPhase = '' diff --git a/pkgs/development/compilers/serpent/default.nix b/pkgs/development/compilers/serpent/default.nix new file mode 100644 index 000000000000..5d0b9052dbae --- /dev/null +++ b/pkgs/development/compilers/serpent/default.nix @@ -0,0 +1,37 @@ +{ stdenv, fetchFromGitHub, ... }: + +stdenv.mkDerivation rec { + name = "serpent-${version}"; + + # I can't find any version numbers, so we're just using the date + # of the last commit. + version = "2016-03-05"; + + src = fetchFromGitHub { + owner = "ethereum"; + repo = "serpent"; + rev = "51ee60857fe53c871fa916ef66fc1b4255bb9433"; + sha256 = "1bns9wgn5i1ahj19qx7v1wwdy8ca3q3pigxwznm5nywsw7s7lqxs"; + }; + + installPhase = '' + mkdir -p $out/bin + mv serpent $out/bin + ''; + + meta = with stdenv.lib; { + description = "Compiler for the Serpent language for Ethereum"; + longDescription = '' + Serpent is one of the high-level programming languages used to + write Ethereum contracts. The language, as suggested by its name, + is designed to be very similar to Python; it is intended to be + maximally clean and simple, combining many of the efficiency + benefits of a low-level language with ease-of-use in programming + style, and at the same time adding special domain-specific + features for contract programming. + ''; + homepage = https://github.com/ethereum/wiki/wiki/Serpent; + license = with licenses; [ wtfpl ]; + maintainers = with maintainers; [ chris-martin ]; + }; +} diff --git a/pkgs/development/compilers/tinycc/default.nix b/pkgs/development/compilers/tinycc/default.nix index 40e4d49d51e8..87e09e3231f2 100644 --- a/pkgs/development/compilers/tinycc/default.nix +++ b/pkgs/development/compilers/tinycc/default.nix @@ -1,21 +1,27 @@ -{ stdenv, fetchurl, fetchgit, perl, texinfo }: +{ stdenv, fetchFromRepoOrCz, perl, texinfo }: -assert stdenv ? glibc; +assert (stdenv.isGlibc); + +with stdenv.lib; + +let + date = "20160525"; + version = "0.9.27pre-${date}"; + rev = "1ca685f887310b5cbdc415cdfc3a578dbc8d82d8"; + sha256 = "149s847jkg2zdmk09h0cp0q69m8kxxci441zyw8b08fy9b87ayd8"; +in stdenv.mkDerivation rec { - #name = "tcc-0.9.26"; - name = "tcc-git-0.9.27pre-20160328"; - - #src = fetchurl { - # url = "mirror://savannah/tinycc/${name}.tar.bz2"; - # sha256 = "0wbdbdq6090ayw8bxnbikiv989kykff3m5rzbia05hrnwhd707jj"; - #}; - src = fetchgit { - url = "git://repo.or.cz/tinycc.git"; - rev = "80343ab7d829c21c65f8f9a14dd20158d028549f"; - sha256 = "1bz75aj93ivb2d8hfk2bczsrwa56lv7vprvdi8c1r5phjvawbshy"; + name = "tcc-${version}"; + + src = fetchFromRepoOrCz { + repo = "tinycc"; + inherit rev; + inherit sha256; }; + outputs = [ "dev" "out" "bin" ]; + nativeBuildInputs = [ perl texinfo ]; hardeningDisable = [ "fortify" ]; @@ -35,37 +41,41 @@ stdenv.mkDerivation rec { doCheck = true; checkTarget = "test"; + postFixup = '' + paxmark m $bin/bin/tcc + ''; + meta = { description = "Small, fast, and embeddable C compiler and interpreter"; - longDescription = - '' TinyCC (aka TCC) is a small but hyper fast C compiler. Unlike - other C compilers, it is meant to be self-sufficient: you do not - need an external assembler or linker because TCC does that for - you. + longDescription = '' + TinyCC (aka TCC) is a small but hyper fast C compiler. Unlike + other C compilers, it is meant to be self-sufficient: you do not + need an external assembler or linker because TCC does that for + you. - TCC compiles so fast that even for big projects Makefiles may not - be necessary. + TCC compiles so fast that even for big projects Makefiles may not + be necessary. - TCC not only supports ANSI C, but also most of the new ISO C99 - standard and many GNU C extensions. + TCC not only supports ANSI C, but also most of the new ISO C99 + standard and many GNU C extensions. - TCC can also be used to make C scripts, i.e. pieces of C source - that you run as a Perl or Python script. Compilation is so fast - that your script will be as fast as if it was an executable. + TCC can also be used to make C scripts, i.e. pieces of C source + that you run as a Perl or Python script. Compilation is so fast + that your script will be as fast as if it was an executable. - TCC can also automatically generate memory and bound checks while - allowing all C pointers operations. TCC can do these checks even - if non patched libraries are used. + TCC can also automatically generate memory and bound checks while + allowing all C pointers operations. TCC can do these checks even + if non patched libraries are used. - With libtcc, you can use TCC as a backend for dynamic code - generation. - ''; + With libtcc, you can use TCC as a backend for dynamic code + generation. + ''; homepage = http://www.tinycc.org/; - license = stdenv.lib.licenses.lgpl2Plus; + license = licenses.lgpl2Plus; - platforms = stdenv.lib.platforms.unix; - maintainers = [ ]; + platforms = platforms.unix; + maintainers = [ maintainers.joachifm ]; }; } diff --git a/pkgs/development/compilers/uhc/default.nix b/pkgs/development/compilers/uhc/default.nix index df79b0ba70ee..d20057916805 100644 --- a/pkgs/development/compilers/uhc/default.nix +++ b/pkgs/development/compilers/uhc/default.nix @@ -4,14 +4,14 @@ let wrappedGhc = ghcWithPackages (hpkgs: with hpkgs; [fgl vector syb uulib network binary hashable uhc-util mtl transformers directory containers array process filepath shuffle uuagc] ); in stdenv.mkDerivation rec { - version = "1.1.9.3"; + version = "1.1.9.4"; name = "uhc-${version}"; src = fetchFromGitHub { owner = "UU-ComputerScience"; repo = "uhc"; rev = "v${version}"; - sha256 = "1r3mja77dqj2ncgp1d9nnc7dhp3gzrb1b1qvml3rq2321mn3m2ad"; + sha256 = "1s84csk6zgzj09igxgdza7gb52jdn3jsr8lygl5xplshv8yzl34n"; }; postUnpack = "sourceRoot=\${sourceRoot}/EHC"; diff --git a/pkgs/development/compilers/vala/0.32.nix b/pkgs/development/compilers/vala/0.32.nix new file mode 100644 index 000000000000..8ae76ec1b05d --- /dev/null +++ b/pkgs/development/compilers/vala/0.32.nix @@ -0,0 +1,30 @@ +{ stdenv, fetchurl, pkgconfig, flex, bison, libxslt +, glib, libiconv, libintlOrEmpty +}: + +let + major = "0.32"; + minor = "0"; + sha256 = "0vpvq403vdd25irvgk7zibz3nw4x4i17m0dgnns8j1q4vr7am8h7"; +in +stdenv.mkDerivation rec { + name = "vala-${major}.${minor}"; + + meta = { + description = "Compiler for GObject type system"; + homepage = "http://live.gnome.org/Vala"; + license = stdenv.lib.licenses.lgpl21Plus; + platforms = stdenv.lib.platforms.unix; + maintainers = with stdenv.lib.maintainers; [ antono lethalman ]; + }; + + src = fetchurl { + url = "mirror://gnome/sources/vala/${major}/${name}.tar.xz"; + inherit sha256; + }; + + nativeBuildInputs = [ pkgconfig flex bison libxslt ]; + + buildInputs = [ glib libiconv ] + ++ libintlOrEmpty; +} |