From ecb9fb669c8c93c35b7efd0f19b550a942234ad6 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Tue, 13 Dec 2016 11:21:51 +0100 Subject: [PATCH 2/3] gnu: lablgtk: use ocamlfind in installation * gnu/packages/ocaml.scm (lablgtk): Use ocamlfind in installation. --- gnu/packages/ocaml.scm | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index bc9f8f8..555e3fd 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -507,6 +507,7 @@ Knuth’s LR(1) parser construction technique.") (native-inputs `(("camlp4" ,camlp4) ("ocaml" ,ocaml) + ("findlib" ,ocaml-findlib) ("pkg-config" ,pkg-config))) ;; FIXME: Add inputs gtkgl-2.0, libpanelapplet-2.0, gtkspell-2.0, ;; and gtk+-quartz-2.0 once available. @@ -521,21 +522,24 @@ Knuth’s LR(1) parser construction technique.") `(#:tests? #f ; no check target ;; opt: also install cmxa files - #:make-flags (list "all" "opt") + #:make-flags (list "all" "opt" + (string-append "FINDLIBDIR=" + (assoc-ref %outputs "out") + "/lib/ocaml")) ;; Occasionally we would get "Error: Unbound module GtkThread" when ;; compiling 'gtkThInit.ml', with 'make -j'. So build sequentially. #:parallel-build? #f #:phases (modify-phases %standard-phases - (replace 'install + (add-before 'install 'prepare-install (lambda* (#:key inputs outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out")) (ocaml (assoc-ref inputs "ocaml"))) ;; Install into the output and not the ocaml directory. + (mkdir-p (string-append out "/lib/ocaml")) (substitute* "config.make" ((ocaml) out)) - (system* "make" "old-install") #t)))))) (home-page "http://lablgtk.forge.ocamlcore.org/") (synopsis "GTK+ bindings for OCaml") -- 2.7.4