me
/
guix
Archived
1
0
Fork 0

gnu: Add ocaml-llvm.

* gnu/packages/ocaml.scm (make-ocaml-llvm, ocaml-llvm, ocaml-llvm-9)
(ocaml-llvm-10, ocaml-llvm-11): New variables.
master
Julien Lepiller 2021-02-16 16:38:15 +01:00
parent 4390934f0b
commit 8f710cc598
No known key found for this signature in database
GPG Key ID: 53D457B2D636EE82
1 changed files with 41 additions and 0 deletions

View File

@ -6197,3 +6197,44 @@ provides support to program with time varying values: declarative events and
signals. React doesn't define any primitive event or signal, it lets the
client chooses the concrete timeline.")
(license license:lgpl2.1+)))
(define (make-ocaml-llvm llvm)
(package
(inherit llvm)
(name "ocaml-llvm")
(outputs '("out"))
(arguments
`(#:configure-flags
(list
(string-append "-DLLVM_OCAML_EXTERNAL_LLVM_LIBDIR="
(assoc-ref %build-inputs "llvm") "/lib")
"-DBUILD_SHARED_LIBS=TRUE"
"-DLLVM_OCAML_OUT_OF_TREE=TRUE"
(string-append "-DLLVM_OCAML_INSTALL_PATH="
(assoc-ref %outputs "out") "/lib/ocaml/site-lib"))
#:phases
(modify-phases %standard-phases
(replace 'build
(lambda _
(invoke "make" "ocaml_all")))
(replace 'install
(lambda _
(invoke "cmake" "-P" "bindings/ocaml/cmake_install.cmake"))))))
(inputs
`(("llvm" ,llvm)))
(native-inputs
`(("ocaml" ,ocaml)
("ocaml-findlib" ,ocaml-findlib)
("ocaml-ounit" ,ocaml-ounit)
("python" ,python)))
(propagated-inputs
`(("ocaml-integers" ,ocaml-integers)
("ocaml-ctypes" ,ocaml-ctypes)))
(synopsis "OCaml bindings to LLVM")
(description "This package contains the OCaml bindings distributed with
LLVM.")))
(define-public ocaml-llvm (make-ocaml-llvm llvm))
(define-public ocaml-llvm-9 (make-ocaml-llvm llvm-9))
(define-public ocaml-llvm-10 (make-ocaml-llvm llvm-10))
(define-public ocaml-llvm-11 (make-ocaml-llvm llvm-11))