summary refs log tree commit diff
path: root/pkgs/development/tools/guile
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2008-04-09 07:56:52 +0000
committerLudovic Courtès <ludo@gnu.org>2008-04-09 07:56:52 +0000
commit4126f26c7e60df4711f18989cc6d06f6dfbfc425 (patch)
tree478f5aee0716bd3219649cb97c656114d382d863 /pkgs/development/tools/guile
parent48f590e95cd102a5ac981e1bce84596f35288215 (diff)
downloadnixpkgs-4126f26c7e60df4711f18989cc6d06f6dfbfc425.tar
nixpkgs-4126f26c7e60df4711f18989cc6d06f6dfbfc425.tar.gz
nixpkgs-4126f26c7e60df4711f18989cc6d06f6dfbfc425.tar.bz2
nixpkgs-4126f26c7e60df4711f18989cc6d06f6dfbfc425.tar.lz
nixpkgs-4126f26c7e60df4711f18989cc6d06f6dfbfc425.tar.xz
nixpkgs-4126f26c7e60df4711f18989cc6d06f6dfbfc425.tar.zst
nixpkgs-4126f26c7e60df4711f18989cc6d06f6dfbfc425.zip
Add G-Wrap, a binding generator for Guile.
svn path=/nixpkgs/trunk/; revision=11506
Diffstat (limited to 'pkgs/development/tools/guile')
-rw-r--r--pkgs/development/tools/guile/g-wrap/default.nix36
1 files changed, 36 insertions, 0 deletions
diff --git a/pkgs/development/tools/guile/g-wrap/default.nix b/pkgs/development/tools/guile/g-wrap/default.nix
new file mode 100644
index 00000000000..01a1dbe72eb
--- /dev/null
+++ b/pkgs/development/tools/guile/g-wrap/default.nix
@@ -0,0 +1,36 @@
+{ fetchurl, stdenv, guile, libffi, pkgconfig, glib
+, guileLib }:
+
+stdenv.mkDerivation rec {
+  name = "g-wrap-1.9.11";
+  src = fetchurl {
+    url = "mirror://savannah/g-wrap/${name}.tar.gz";
+    sha256 = "1j8zchilsr0dziyr21az4x3xxyr4d3jc8nybag9rp6pjj8k49adn";
+  };
+
+  # Note: Glib support is optional, but it's quite useful (e.g., it's
+  # used by Guile-GNOME).  Guile-Library is needed by the test suite.
+  buildInputs = [ guile libffi pkgconfig glib guileLib ];
+
+  # GMP 4.2.2 uses GNU "extern inline".  With GCC 4.2 in C99 mode,
+  # this yields warnings such as:
+  #
+  #  gmp.h:1606: warning: C99 inline functions are not supported; using GNU89
+  #
+  # Since G-Wrap builds in C99 mode and with `-Werror', we need to
+  # pass it `-fgnu89-inline'.
+  CFLAGS = "-fgnu89-inline";
+
+  doCheck = true;
+
+  meta = {
+    description = "G-Wrap, a wrapper generator for Guile";
+    longDescription = ''
+      G-Wrap is a tool (and Guile library) for generating function
+      wrappers for inter-language calls.  It currently only supports
+      generating Guile wrappers for C functions.
+    '';
+    homepage = http://www.nongnu.org/g-wrap/;
+    license = "LGPLv2+";
+  };
+}