From 6ed2741a35eebc655f9c9a7788dc8e7d3b5b423f Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Thu, 15 Oct 2020 22:34:38 +0200 Subject: guix: ocaml: Add package-with-ocaml4.09. * guix/build-system/ocaml.scm (package-with-ocaml4.09) (strip-ocaml4.09-variant): New variables. * gnu/packages/ocaml.scm (ocaml4.09-result, ocaml4.09-csexp) (ocaml4.09-dune-configurator, ocaml4.09-dune): New variables. --- guix/build-system/ocaml.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) (limited to 'guix/build-system') diff --git a/guix/build-system/ocaml.scm b/guix/build-system/ocaml.scm index c5996bf0cf..5513216c25 100644 --- a/guix/build-system/ocaml.scm +++ b/guix/build-system/ocaml.scm @@ -29,6 +29,8 @@ #:export (%ocaml-build-system-modules package-with-ocaml4.07 strip-ocaml4.07-variant + package-with-ocaml4.09 + strip-ocaml4.09-variant default-findlib default-ocaml lower @@ -96,6 +98,18 @@ (let ((module (resolve-interface '(gnu packages ocaml)))) (module-ref module 'ocaml4.07-dune))) +(define (default-ocaml4.09) + (let ((ocaml (resolve-interface '(gnu packages ocaml)))) + (module-ref ocaml 'ocaml-4.09))) + +(define (default-ocaml4.09-findlib) + (let ((module (resolve-interface '(gnu packages ocaml)))) + (module-ref module 'ocaml4.09-findlib))) + +(define (default-ocaml4.09-dune) + (let ((module (resolve-interface '(gnu packages ocaml)))) + (module-ref module 'ocaml4.09-dune))) + (define* (package-with-explicit-ocaml ocaml findlib dune old-prefix new-prefix #:key variant-property) "Return a procedure of one argument, P. The procedure creates a package @@ -171,6 +185,19 @@ pre-defined variants." (inherit p) (properties (alist-delete 'ocaml4.07-variant (package-properties p))))) +(define package-with-ocaml4.09 + (package-with-explicit-ocaml (delay (default-ocaml4.09)) + (delay (default-ocaml4.09-findlib)) + (delay (default-ocaml4.09-dune)) + "ocaml-" "ocaml4.09-" + #:variant-property 'ocaml4.09-variant)) + +(define (strip-ocaml4.09-variant p) + "Remove the 'ocaml4.09-variant' property from P." + (package + (inherit p) + (properties (alist-delete 'ocaml4.09-variant (package-properties p))))) + (define* (lower name #:key source inputs native-inputs outputs system target (ocaml (default-ocaml)) -- cgit v1.2.3