about summary refs log tree commit diff
path: root/pkgs/top-level/emacs-packages.nix
diff options
context:
space:
mode:
authorDamien Cassou <damien@cassou.me>2015-11-13 10:25:50 -0300
committerDamien Cassou <damien@cassou.me>2015-11-13 10:25:50 -0300
commit5c6725b7e3dd77ce858b97d6beb1dd56ea6afb9e (patch)
treef04a3bc57365c7c14c4bbf3c48374e5a55a99bc8 /pkgs/top-level/emacs-packages.nix
parentf4ec8c9dc71d43e303e265b37d672a1b25baf391 (diff)
parent965fbcc419f4ffa49f96481e8e15c849c1643472 (diff)
downloadnixlib-5c6725b7e3dd77ce858b97d6beb1dd56ea6afb9e.tar
nixlib-5c6725b7e3dd77ce858b97d6beb1dd56ea6afb9e.tar.gz
nixlib-5c6725b7e3dd77ce858b97d6beb1dd56ea6afb9e.tar.bz2
nixlib-5c6725b7e3dd77ce858b97d6beb1dd56ea6afb9e.tar.lz
nixlib-5c6725b7e3dd77ce858b97d6beb1dd56ea6afb9e.tar.xz
nixlib-5c6725b7e3dd77ce858b97d6beb1dd56ea6afb9e.tar.zst
nixlib-5c6725b7e3dd77ce858b97d6beb1dd56ea6afb9e.zip
Merge pull request #10984 from DamienCassou/elisp-ffi
elisp-ffi: init at git 2014-11-03
Diffstat (limited to 'pkgs/top-level/emacs-packages.nix')
-rw-r--r--pkgs/top-level/emacs-packages.nix24
1 files changed, 24 insertions, 0 deletions
diff --git a/pkgs/top-level/emacs-packages.nix b/pkgs/top-level/emacs-packages.nix
index b89cabd4d311..4d052677a4cf 100644
--- a/pkgs/top-level/emacs-packages.nix
+++ b/pkgs/top-level/emacs-packages.nix
@@ -99,6 +99,30 @@ let self = _self // overrides;
     };
   };
 
+  elisp-ffi = melpaBuild rec {
+    pname = "elisp-ffi-git";
+    version = "20141103";
+    src = fetchFromGitHub {
+        owner = "skeeto";
+        repo = "elisp-ffi";
+        rev = "eb3d826d68ace9f9a41515ab3820376c0d141634";
+        sha256 = "0w7r56qf2h8wgfs81fc9k8w8949kf2djyhsh8p12dk365nm11n2s";
+    };
+    buildInputs = [ external.libffi ];
+    preBuild = "make";
+    files = [ "ffi-glue" "ffi.el" ];
+    meta = {
+      description = "Emacs Lisp Foreign Function Interface";
+      longDescription = ''
+      This library provides an FFI for Emacs Lisp so that Emacs
+      programs can invoke functions in native libraries. It works by
+      driving a subprocess to do the heavy lifting, passing result
+      values on to Emacs.
+      '';
+      license = publicDomain;
+    };
+  };
+
   agda2-mode = with external; trivialBuild {
     pname = "agda-mode";
     version = Agda.version;