about summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorAustin Seipp <aseipp@pobox.com>2014-06-10 06:12:12 -0500
committerAustin Seipp <aseipp@pobox.com>2014-06-10 13:28:35 -0500
commit509beb1f68ae0641470ccccf730bc4183ad645b9 (patch)
treed0358048e8d45fd007a3971f01841e204df28109 /pkgs
parentd176729427a4a3ed9df235f3baaa8e3c2321ec83 (diff)
downloadnixlib-509beb1f68ae0641470ccccf730bc4183ad645b9.tar
nixlib-509beb1f68ae0641470ccccf730bc4183ad645b9.tar.gz
nixlib-509beb1f68ae0641470ccccf730bc4183ad645b9.tar.bz2
nixlib-509beb1f68ae0641470ccccf730bc4183ad645b9.tar.lz
nixlib-509beb1f68ae0641470ccccf730bc4183ad645b9.tar.xz
nixlib-509beb1f68ae0641470ccccf730bc4183ad645b9.tar.zst
nixlib-509beb1f68ae0641470ccccf730bc4183ad645b9.zip
Add HHVM packages, replacing old hiphop-php expr
Signed-off-by: Austin Seipp <aseipp@pobox.com>
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/development/compilers/hhvm/default.nix59
-rw-r--r--pkgs/top-level/all-packages.nix2
2 files changed, 61 insertions, 0 deletions
diff --git a/pkgs/development/compilers/hhvm/default.nix b/pkgs/development/compilers/hhvm/default.nix
new file mode 100644
index 000000000000..918b75156c32
--- /dev/null
+++ b/pkgs/development/compilers/hhvm/default.nix
@@ -0,0 +1,59 @@
+{ stdenv, fetchgit, cmake, boost, libunwind, mariadb, libmemcached, pcre
+, libevent, gd, curl, libxml2, icu, flex, bison, openssl, zlib, php, re2c
+, expat, libcap, oniguruma, libdwarf, libmcrypt, tbb, gperftools, glog
+, bzip2, openldap, readline, libelf, uwimap, binutils, cyrus_sasl, pam, libpng
+, libxslt, ocaml
+}:
+
+stdenv.mkDerivation rec {
+  name    = "hhvm-${version}";
+  version = "3.1.0";
+
+  src = fetchgit {
+    url    = "https://github.com/facebook/hhvm.git";
+    rev    = "71ecbd8fb5e94b2a008387a2b5e9a8df5c6f5c7b";
+    sha256 = "1zv3k3bxahwyna2jgicwxm9lxs11jddpc9v41488rmzvfhdmzzkn";
+    fetchSubmodules = true;
+  };
+
+  buildInputs =
+    [ cmake boost libunwind mariadb libmemcached pcre libevent gd curl
+      libxml2 icu flex bison openssl zlib php expat libcap oniguruma
+      libdwarf libmcrypt tbb gperftools bzip2 openldap readline
+      libelf uwimap binutils cyrus_sasl pam glog libpng libxslt ocaml
+    ];
+
+  enableParallelBuilding = true;
+  dontUseCmakeBuildDir = true;
+  dontUseCmakeConfigure = true;
+  NIX_LDFLAGS = "-lpam -L${pam}/lib";
+  USE_HHVM=1;
+  MYSQL_INCLUDE_DIR="${mariadb}/include/mysql";
+  MYSQL_DIR=mariadb;
+
+  patchPhase = ''
+    substituteInPlace hphp/util/generate-buildinfo.sh \
+      --replace /bin/bash ${stdenv.shell}
+  '';
+  installPhase = ''
+    mkdir -p $out/bin $out/lib
+    mv hphp/hhvm/hhvm          $out/bin
+    mv hphp/hack/bin/hh_server $out/bin
+    mv hphp/hack/bin/hh_client $out/bin
+    mv hphp/hack/hhi           $out/lib/hack-hhi
+
+    cat > $out/bin/hhvm-hhi-copy <<EOF
+    #!${stdenv.shell}
+    cp -R $out/lib/hack-hhi \$1
+    EOF
+    chmod +x $out/bin/hhvm-hhi-copy
+  '';
+
+  meta = {
+    description = "High-performance JIT compiler for PHP/Hack";
+    homepage    = "http://hhvm.com";
+    license     = "PHP/Zend";
+    platforms   = [ "x86_64-linux" ];
+    maintainers = [ stdenv.lib.maintainers.thoughtpolice ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 32c60e534ab3..c0b358c5c649 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -2939,6 +2939,8 @@ let
 
   haxe = callPackage ../development/compilers/haxe { };
 
+  hhvm = callPackage ../development/compilers/hhvm { };
+
   hiphopvm = callPackage ../development/interpreters/hiphopvm {
     libevent = libevent14;
     boost = boost149;