gnu: Add perl-ev.

* gnu/packages/libevent.scm (perl-ev): New variable.
This commit is contained in:
Marius Bakke 2016-12-09 18:13:58 +01:00
parent 647b6d3847
commit ad8f8e7595
No known key found for this signature in database
GPG Key ID: A2A06DF2A33A54FA
1 changed files with 43 additions and 0 deletions

View File

@ -26,9 +26,11 @@
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (guix build-system perl)
#:use-module (gnu packages base) #:use-module (gnu packages base)
#:use-module (gnu packages python) #:use-module (gnu packages python)
#:use-module (gnu packages autotools) #:use-module (gnu packages autotools)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)) #:use-module (gnu packages pkg-config))
(define-public libevent (define-public libevent
@ -149,3 +151,44 @@ resolution, asynchronous file system operations, and threading primitives.")
;; A few files fall under other non-copyleft licenses; see 'LICENSE' for ;; A few files fall under other non-copyleft licenses; see 'LICENSE' for
;; details. ;; details.
(license x11))) (license x11)))
(define-public perl-ev
(package
(name "perl-ev")
(version "4.22")
(source (origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/M/ML/MLEHMANN/EV-"
version ".tar.gz"))
(sha256
(base32
"14d9115q8f2ca2q3vbcalm55zqsbx8xjq5aj098laj9f9rrzirra"))
(modules '((guix build utils)))
(snippet
'(begin
;; Drop bundled libev.
(delete-file-recursively "libev")
#t))))
(build-system perl-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'unpack-libev
;; This package requires the libev *sources* in order
;; to build. Unpack system libev here...
(lambda* (#:key inputs #:allow-other-keys)
(mkdir "./libev")
(zero? (system* "tar" "-xf" (assoc-ref inputs "libev-source")
"-C" "./libev" "--strip-components=1")))))))
(native-inputs
`(("libev-source" ,(package-source libev))
("perl-canary-stability" ,perl-canary-stability)))
(propagated-inputs
`(("perl-common-sense" ,perl-common-sense)))
(home-page "http://search.cpan.org/dist/EV")
(synopsis "Perl interface to libev")
(description
"This module provides an interface to @code{libev}, a high performance
full-featured event loop. It can be used through the @code{AnyEvent} module
and still be faster than other event loops currently supported in Perl.")
(license (package-license perl))))