From da9a147b7bf851644f8809fea99ae9b2f6b3cdeb Mon Sep 17 00:00:00 2001 From: Andrew Miloradovsky Date: Sat, 15 Apr 2017 08:02:28 +0000 Subject: [PATCH] dale: init at 20170416 Lisp-flavoured C. Dale is a system (no GC) programming language that uses S-expressions for syntax and supports syntactic macros. --- pkgs/development/compilers/dale/default.nix | 35 +++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 37 insertions(+) create mode 100644 pkgs/development/compilers/dale/default.nix diff --git a/pkgs/development/compilers/dale/default.nix b/pkgs/development/compilers/dale/default.nix new file mode 100644 index 00000000000000..d1fb9b2124315a --- /dev/null +++ b/pkgs/development/compilers/dale/default.nix @@ -0,0 +1,35 @@ +{ stdenv, fetchFromGitHub, cmake, libffi, llvm_35, perl }: + +let version = "20170416"; + doCheck = false; +in stdenv.mkDerivation { + name = "dale-${version}"; + + src = fetchFromGitHub { + owner = "tomhrr"; + repo = "dale"; + rev = "ecc5ea91efef8a263c7dddd6925983df5b5258b2"; + sha256 = "0naly7jsfriiqf68q210ay9ppcvidbwwcxksy5zwy1m17aq5kxaw"; + }; + + buildInputs = [ cmake libffi llvm_35 ] ++ + stdenv.lib.optional doCheck perl; + + inherit doCheck; + + checkTarget = "tests"; + + enableParallelBuilding = true; + + meta = with stdenv.lib; { + description = "Lisp-flavoured C"; + longDescription = '' + Dale is a system (no GC) programming language that uses + S-expressions for syntax and supports syntactic macros. + ''; + homepage = "https://github.com/tomhrr/dale"; + license = licenses.mit; + maintainers = with maintainers; [ amiloradovsky ]; + platforms = platforms.linux; # fails on Darwin, linking vs. FFI + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index ffc1b066d8440d..c4c58e019c94bf 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -826,6 +826,8 @@ with pkgs; daemontools = callPackage ../tools/admin/daemontools { }; + dale = callPackage ../development/compilers/dale { }; + dante = callPackage ../servers/dante { }; datamash = callPackage ../tools/misc/datamash { };