Subject: Re: [bug#45601] [PATCH 1/1] gnu: Add picoev.

From: Christopher Baines <[email-masked]>
Date: Fri, 05 Feb 2021 13:30:51 +0000

Ryan Prior via Guix-patches via <[email-masked]> writes:

> * gnu/packages/networking.scm (picoev): New variable.

Hey,

This look OK to me, although the license needs checking.

Would you be able to send the entire series of patches tracked under
#45601? I'm not quite sure what's current and superseded by looking
through the various emails.

> ---
>  gnu/packages/networking.scm | 48 +++++++++++++++++++++++++++++++++++++
>  1 file changed, 48 insertions(+)
>
> diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
> index fad917a7c0..1057014571 100644
> --- a/gnu/packages/networking.scm
> +++ b/gnu/packages/networking.scm
> @@ -1827,6 +1827,54 @@ passphrase can be recovered and the AP's wireless settings can be
>  reconfigured.")
>      (license license:gpl2+)))
>  
> +(define-public picoev
> +  (let ((commit "ff85d9ef578842a40f7c91d2544b7932cec74b9d")
> +        (revision "0"))
> +    (package
> +      (name "picoev")
> +      (version (git-version "0.0.0" revision commit))
> +      (source
> +       (origin
> +         (method git-fetch)
> +         (uri (git-reference
> +               (url "https://github.com/kazuho/picoev")
> +               (commit commit)))
> +         (file-name (git-file-name name version))
> +         (sha256
> +          (base32
> +           "11ga0hyx6r229wvmds4gaq0ilrcb1j84gri7gxcnv7910yf1sv61"))))
> +      (build-system gnu-build-system)
> +      (arguments
> +       `(#:tests? #f ; no tests available
> +         #:make-flags (list (string-append "CC=" ,(cc-for-target))
> +                            "LINUX_BUILD=1")
> +         #:modules ((guix build gnu-build-system)
> +                    (guix build utils)
> +                    (srfi srfi-26))
> +         #:phases
> +         (modify-phases %standard-phases
> +           (delete 'configure)
> +           (replace 'install
> +             (lambda* (#:key outputs #:allow-other-keys)
> +               (let* ((out (string-append (assoc-ref outputs "out")))
> +                      (include (string-append out "/include"))
> +                      (lib (string-append out "/lib"))
> +                      (doc (string-append out "/share/doc/" ,name "-" ,version)))
> +                 (for-each (cut install-file <> include)
> +                           '("picoev.h"
> +                             "picoev_epoll.c"
> +                             "picoev_kqueue.c"
> +                             "picoev_select.c"))
> +                 (install-file "libpicoev.so" lib)
> +                 (install-file "README.md" doc))
> +               #t)))))
> +      (home-page "https://github.com/kazuho/picoev")
> +      (synopsis "Tiny portable event loop library")
> +      (description
> +       "This library provides a tiny event loop with a simple design,
> +supporting only @code{select(2)}, @code{epoll(2)}, and @code{kqueue(2)}.")
> +      (license license:expat))))

Where did you get expat from? From looking at the files, that doesn't
seem to be the case.

> +
>  (define-public perl-danga-socket
>    (package
>      (name "perl-danga-socket")