aboutsummaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2014-05-16 15:40:19 +0200
committerLudovic Courtès <ludo@gnu.org>2014-05-16 15:45:25 +0200
commit90f69c2ec598b7a94b7d35e4ce61bda245369b6d (patch)
treec419f4278a98c1ca96963687e958aef718c35cc0 /gnu
parent4cca91832b3fceed35eb46439fac7c12466d229d (diff)
downloadguix-90f69c2ec598b7a94b7d35e4ce61bda245369b6d.tar.gz
guix-90f69c2ec598b7a94b7d35e4ce61bda245369b6d.zip
gnu: Add libuv.
* gnu/packages/libevent.scm (libuv): New variable.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/libevent.scm47
1 files changed, 45 insertions, 2 deletions
diff --git a/gnu/packages/libevent.scm b/gnu/packages/libevent.scm
index dce1ac1a69..7b8adbace4 100644
--- a/gnu/packages/libevent.scm
+++ b/gnu/packages/libevent.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -23,7 +23,9 @@
#:use-module (guix download)
#:use-module (guix build-system gnu)
#:use-module (gnu packages which)
- #:use-module (gnu packages python))
+ #:use-module (gnu packages python)
+ #:use-module (gnu packages autotools)
+ #:use-module (gnu packages pkg-config))
(define-public libevent
(package
@@ -58,3 +60,44 @@ network servers. An application just needs to call event_dispatch() and
then add or remove events dynamically without having to change the event
loop.")
(license bsd-3)))
+
+(define-public libuv
+ (package
+ (name "libuv")
+ (version "0.11.25")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/joyent/libuv/archive/v"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "1ys2wlypdbv59yywn91d5vl329z50mi7ivi3fj5rjm4mr9g3wnmr"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:phases (alist-cons-before
+ 'configure 'autogen
+ (lambda _
+ ;; Fashionable people don't run 'make dist' these days, so
+ ;; we need to do that ourselves.
+ (zero? (system* "./autogen.sh")))
+ %standard-phases)
+
+ ;; XXX: Some tests want /dev/tty, attempt to make connections, etc.
+ #:tests? #f))
+ (native-inputs `(("autoconf" ,(autoconf-wrapper))
+ ("automake" ,automake)
+ ("libtool" ,libtool "bin")
+
+ ;; libuv.pc is installed only when pkg-config is found.
+ ("pkg-config" ,pkg-config)))
+ (home-page "https://github.com/joyent/libuv")
+ (synopsis "Library for asynchronous I/O")
+ (description
+ "libuv is a multi-platform support library with a focus on asynchronous
+I/O. Among other things, it supports event loops via epoll, kqueue, and
+similar IOCP, and event ports, asynchronous TCP/UDP sockets, asynchronous DNS
+resolution, asynchronous file system operations, and threading primitives.")
+
+ ;; A few files fall under other non-copyleft licenses; see 'LICENSE' for
+ ;; details.
+ (license x11)))