libevent: remove Python dependency

Python is only used for one test, which is optional and is skipped if
Python is not detected. Additionally, Python 2 is required (Python 3
does not work), so remove the dependency to reduce the closure size for
a Python 3 as default Python future.

Additionally, update the meta.homepage and src to point at GitHub, which
is the libevent project home since 2015-10-07.
This commit is contained in:
Aneesh Agrawal 2016-09-02 00:36:44 -04:00 committed by Frederik Rietdijk
parent 6321a1b67c
commit 0f9ece7929

View File

@ -1,36 +1,34 @@
{ stdenv, fetchurl, autoreconfHook, openssl, python, findutils }: { stdenv, fetchurl, autoreconfHook, openssl, findutils }:
let version = "2.0.22"; in let version = "2.0.22"; in
stdenv.mkDerivation { stdenv.mkDerivation {
name = "libevent-${version}"; name = "libevent-${version}";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/levent/libevent-${version}-stable.tar.gz"; url = "https://github.com/libevent/libevent/releases/download/release-${version}-stable/libevent-${version}-stable.tar.gz";
sha256 = "18qz9qfwrkakmazdlwxvjmw8p76g70n3faikwvdwznns1agw9hki"; sha256 = "18qz9qfwrkakmazdlwxvjmw8p76g70n3faikwvdwznns1agw9hki";
}; };
postPatch = "patchShebangs event_rpcgen.py";
outputs = [ "out" "dev" ]; outputs = [ "out" "dev" ];
outputBin = "dev"; outputBin = "dev";
nativeBuildInputs = [ autoreconfHook ]; nativeBuildInputs = [ autoreconfHook ];
buildInputs = [ openssl python ] ++ stdenv.lib.optional stdenv.isCygwin findutils; buildInputs = [ openssl ] ++ stdenv.lib.optional stdenv.isCygwin findutils;
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "Event notification library"; description = "Event notification library";
longDescription = ''
The libevent API provides a mechanism to execute a callback function
when a specific event occurs on a file descriptor or after a timeout
has been reached. Furthermore, libevent also support callbacks due
to signals or regular timeouts.
longDescription = libevent is meant to replace the event loop found in event driven
'' The libevent API provides a mechanism to execute a callback function network servers. An application just needs to call event_dispatch()
when a specific event occurs on a file descriptor or after a timeout and then add or remove events dynamically without having to change
has been reached. Furthermore, libevent also support callbacks due the event loop.
to signals or regular timeouts. '';
homepage = http://libevent.org/;
libevent is meant to replace the event loop found in event driven
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 = licenses.bsd3; license = licenses.bsd3;
platforms = platforms.all; platforms = platforms.all;
maintainers = with maintainers; [ wkennington ]; maintainers = with maintainers; [ wkennington ];