diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 0204c1e3529..f427fcab32f 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -7259,6 +7259,12 @@ githubId = 844343; name = "Thiago K. Okada"; }; + thmzlt = { + email = "git@thomazleite.com"; + github = "thmzlt"; + githubId = 7709; + name = "Thomaz Leite"; + }; ThomasMader = { email = "thomas.mader@gmail.com"; github = "ThomasMader"; diff --git a/pkgs/development/tools/hobbes/default.nix b/pkgs/development/tools/hobbes/default.nix new file mode 100644 index 00000000000..b56afc0a435 --- /dev/null +++ b/pkgs/development/tools/hobbes/default.nix @@ -0,0 +1,40 @@ +{ stdenv, fetchFromGitHub, cmake, llvm_6, ncurses, readline, zlib }: + +stdenv.mkDerivation { + name = "hobbes"; + version = "unstable-2020-03-10"; + + src = fetchFromGitHub { + owner = "morgan-stanley"; + repo = "hobbes"; + rev = "ae956df9da3f3b24630bc1757dfaa2a8952db07a"; + sha256 = "1a0lb87vb0qcp5wy6swk4jcc88l7vhy6iflsk7zplw547mbjhjsy"; + }; + + nativeBuildInputs = [ + cmake + ]; + + buildInputs = [ + llvm_6 # LLVM 6 is latest currently supported. See https://git.io/JvK6w. + ncurses + readline + zlib + ]; + + doCheck = false; # Running tests in NixOS hangs. See https://git.io/JvK7R. + checkTarget = "test"; + + meta = with stdenv.lib; { + description = "A language and an embedded JIT compiler"; + longDescription = '' + Hobbes is a a language, embedded compiler, and runtime for efficient + dynamic expression evaluation, data storage and analysis. + ''; + homepage = "https://github.com/Morgan-Stanley/hobbes"; + license = licenses.asl20; + maintainers = [ maintainers.thmzlt ]; + platforms = [ "x86_64-linux" "x86_64-darwin" ]; + broken = stdenv.isDarwin; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 190be007f4f..5cf06d016c0 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -173,6 +173,8 @@ in deadcode = callPackage ../development/tools/deadcode { }; + hobbes = callPackage ../development/tools/hobbes { stdenv = gcc6Stdenv; }; # GCC 6 is latest currently supported. See https://git.io/JvK6M. + proto-contrib = callPackage ../development/tools/proto-contrib {}; protoc-gen-doc = callPackage ../development/tools/protoc-gen-doc {};