summary refs log tree commit diff
path: root/pkgs/development/compilers/cone/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/compilers/cone/default.nix')
-rw-r--r--pkgs/development/compilers/cone/default.nix42
1 files changed, 42 insertions, 0 deletions
diff --git a/pkgs/development/compilers/cone/default.nix b/pkgs/development/compilers/cone/default.nix
new file mode 100644
index 00000000000..9344160ad76
--- /dev/null
+++ b/pkgs/development/compilers/cone/default.nix
@@ -0,0 +1,42 @@
+{ llvmPackages
+, lib
+, fetchFromGitHub
+, cmake
+}:
+
+llvmPackages.stdenv.mkDerivation rec {
+  pname = "cone";
+  version = "unstable-2021-07-25";
+
+  src = fetchFromGitHub {
+    owner = "jondgoodwin";
+    repo = pname;
+    rev = "5feaabc342bcff3755f638a7e25155cd12127592";
+    sha256 = "CTDS83AWtuDY5g6NDn7O2awrYsKFf3Kp35FkMEjfbVw=";
+  };
+
+  nativeBuildInputs = [ cmake ];
+
+  buildInputs = [
+    llvmPackages.llvm
+  ];
+
+  postPatch = ''
+    sed -i CMakeLists.txt \
+        -e 's/LLVM 7/LLVM/' \
+        -e '/AVR/d'
+  '';
+
+  installPhase = ''
+    install -Dm755 conec $out/bin/conec
+    install -Dm644 libconestd.a $out/lib/libconestd.a
+  '';
+
+  meta = with lib; {
+    description = "Cone Programming Language";
+    homepage = "https://cone.jondgoodwin.com";
+    license = licenses.mit;
+    maintainers = with maintainers; [ luc65r ];
+    platforms = platforms.all;
+  };
+}