Subject: [bug#49203] [PATCH 1/2] gnu: Add ocaml-uri-sexp.

From: Adu O'Hara <[email-masked]>
Date: Thu, 24 Jun 2021 12:42:27 +0000

Thanks for the patches!

There is already an `ocaml-uri`. How about updating that to 4.2.0 
(currently at 4.1.0) and let `ocaml-uri-sexp` inherit from 
ocaml-uri with #:package set to "uri-sexp"?

Another alternatively: remove the #:package argument from 
`ocaml-uri` so that all packages are built (`uri`, `uri-sexp` and 
`uri-re`).

Xinglu Chen <[email-masked]> writes:

> * gnu/packages/ocaml.scm (ocaml-uri-sexp): New variable.
> ---
>  gnu/packages/ocaml.scm | 28 ++++++++++++++++++++++++++++
>  1 file changed, 28 insertions(+)
>
> diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
> index 1262c0e303..681d77dd81 100644
> --- a/gnu/packages/ocaml.scm
> +++ b/gnu/packages/ocaml.scm
> @@ -7071,6 +7071,34 @@ Graphics.open_graph is called.  This 
> library used to be distributed with OCaml
>  up to OCaml 4.08.")
>      (license license:lgpl2.1+)))
>  
> +(define-public ocaml-uri-sexp
> +  (package
> +    (name "ocaml-uri-sexp")
> +    (version "4.2.0")
> +    (source
> +      (origin
> +        (method git-fetch)
> +        (uri (git-reference
> +              (url "https://github.com/mirage/ocaml-uri")
> +              (commit (string-append "v" version))))
> +        (file-name (git-file-name name version))
> +        (sha256
> +          (base32
> + 
> "1bgkc66cq00mgnkz3i535srwzwc4cpdsv0mly5dzvvq33451xwf0"))))
> +    (build-system dune-build-system)
> +    (arguments
> +     '(#:package "uri-sexp"
> +       #:test-target "."))
> +    (propagated-inputs
> +      `(("ocaml-uri" ,ocaml-uri)
> +        ("ocaml-ppx-sexp-conv" ,ocaml-ppx-sexp-conv)
> +        ("ocaml-sexplib0" ,ocaml-sexplib0)))
> +    (native-inputs `(("ocaml-ounit" ,ocaml-ounit)))
> +    (home-page "https://github.com/mirage/ocaml-uri")
> +    (synopsis "RFC3986 URI/URL parsing library")
> +    (description "This package adds S-exp support to 
> @code{ocaml-uri}.")
> +    (license license:isc)))
> +
>  (define-public js-of-ocaml
>    (package
>      (name "js-of-ocaml")