summaryrefslogtreecommitdiff
path: root/distro
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2012-09-26 23:17:39 +0200
committerLudovic Courtès <ludo@gnu.org>2012-09-26 23:17:39 +0200
commit75668d79164985022500f4656b23e04c97dbf717 (patch)
tree66da9f23d6ddb29dc5cf88ad52d48303d68cad52 /distro
parentcb0d69ed160e5599e4a028597e6f6c2587bbd500 (diff)
distro: Add libgc.
* distro/packages/base.scm (libgc): New variable. (guile-2.0): Use it.
Diffstat (limited to 'distro')
-rw-r--r--distro/packages/base.scm38
1 files changed, 37 insertions, 1 deletions
diff --git a/distro/packages/base.scm b/distro/packages/base.scm
index 49cc2d49dd..d16d9800f7 100644
--- a/distro/packages/base.scm
+++ b/distro/packages/base.scm
@@ -1174,6 +1174,42 @@ on where to find glib (or other libraries). It is language-agnostic, so
it can be used for defining the location of documentation tools, for
instance.")))
+(define-public libgc
+ (package
+ (name "libgc")
+ (version "7.2alpha6")
+ (source (origin
+ (method http-fetch)
+ (uri (string-append
+ "http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/gc-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "05jwadjbrv8pr7z9cb4miskicxqpxm0pca4h2rg5cgbpajr2bx7b"))))
+ (build-system gnu-build-system)
+ (description "The Boehm-Demers-Weiser conservative garbage collector
+for C and C++")
+ (long-description
+ "The Boehm-Demers-Weiser conservative garbage collector can be used
+as a garbage collecting replacement for C malloc or C++ new. It allows
+you to allocate memory basically as you normally would, without
+explicitly deallocating memory that is no longer useful. The collector
+automatically recycles memory when it determines that it can no longer
+be otherwise accessed.
+
+The collector is also used by a number of programming language
+implementations that either use C as intermediate code, want to
+facilitate easier interoperation with C libraries, or just prefer the
+simple collector interface.
+
+Alternatively, the garbage collector may be used as a leak detector for
+C or C++ programs, though that is not its primary goal.")
+ (home-page "http://www.hpl.hp.com/personal/Hans_Boehm/gc/")
+
+ ;; permissive X11-style license:
+ ;; http://www.hpl.hp.com/personal/Hans_Boehm/gc/license.txt
+ (license "X11")))
+
(define-public guile-2.0
(package
(name "guile")
@@ -1200,7 +1236,7 @@ instance.")))
;; The headers and/or `guile-2.0.pc' refer to these packages, so they
;; must be propagated.
- ("bdw-gc" ,(nixpkgs-derivation* "boehmgc"))
+ ("bdw-gc" ,libgc)
("gmp" ,gmp)))
(self-native-input? #t)