mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-26 22:38:07 -05:00
gnu: ocamlify: Perform bootstrap build.
setup.ml is pre-generated in this package. Since it is generated by a dependent package, we build manually. This will also allow us to build this package properly with ocaml 4.11. * gnu/packages/ocaml.scm (ocamlify): Perform bootstrap build.
This commit is contained in:
parent
b35b661b89
commit
83e8fceb6c
1 changed files with 18 additions and 11 deletions
|
@ -2452,21 +2452,28 @@ (define-public ocamlify
|
|||
(base32 "1f0fghvlbfryf5h3j4as7vcqrgfjb4c8abl5y0y5h069vs4kp5ii"))))
|
||||
(build-system ocaml-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
`(#:tests? #f; no tests
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'disable-safe-string
|
||||
;; Work around ‘Error: This expression has type string but an
|
||||
;; expression was expected of type bytes’ since OCaml 4.06.
|
||||
(delete 'configure)
|
||||
(replace 'build
|
||||
;; This package uses pre-generated setup.ml by oasis, but is
|
||||
;; a dependency of oasis. the pre-generated setup.ml is broken
|
||||
;; with recent versions of OCaml, so we perform a bootstrap instead.
|
||||
(lambda _
|
||||
(setenv "OCAMLPARAM" "safe-string=0,_")
|
||||
(substitute* "src/OCamlifyConfig.ml.ab"
|
||||
(("$pkg_version") ,version))
|
||||
(rename-file "src/OCamlifyConfig.ml.ab" "src/OCamlifyConfig.ml")
|
||||
(with-directory-excursion "src"
|
||||
(invoke "ocamlc" "OCamlifyConfig.ml" "ocamlify.ml" "-o"
|
||||
"ocamlify"))
|
||||
#t))
|
||||
(delete 'check) ; tests are run during the build
|
||||
(replace 'configure
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(invoke "ocaml" "setup.ml" "-configure" "--prefix"
|
||||
(assoc-ref outputs "out")))))))
|
||||
(native-inputs
|
||||
`(("ocamlbuild" ,ocamlbuild)))
|
||||
(let ((bin (string-append (assoc-ref outputs "out") "/bin")))
|
||||
(mkdir-p bin)
|
||||
(install-file "src/ocamlify" bin)
|
||||
#t))))))
|
||||
(home-page "https://forge.ocamlcore.org/projects/ocamlify")
|
||||
(synopsis "Include files in OCaml code")
|
||||
(description "OCamlify creates OCaml source code by including
|
||||
|
|
Loading…
Reference in a new issue