gnu: frama-c: Add wrap-programs phase.

Frama-C needs the OCAMLPATH variable to be defined to load libraries, so
define it using the OCAMLPATH variable generated during build time.

Related issues:

- <https://issues.guix.gnu.org/54094> (fixes it).
- <https://issues.guix.gnu.org/69996> (only Frama-C fixed from this one).

* gnu/packages/maths.scm (frama-c) <arguments>: Add wrap-programs phase.

Change-Id: Icc8a0be5fed6678b71649da2e39a83caaaee9df2
Signed-off-by: jgart <jgart@dismail.de>
This commit is contained in:
Jean-Pierre De Jesus DIAZ 2024-06-24 13:58:17 +02:00 committed by jgart
parent 79f59b43d8
commit 9ae83ac21d
No known key found for this signature in database
GPG key ID: A52AA2B477B6DD35

View file

@ -9548,9 +9548,20 @@ (define-public frama-c
#~(modify-phases %standard-phases
(add-before 'build 'set-env
(lambda _
(setenv "CC" "gcc"))))))
(setenv "CC" "gcc")))
(add-after 'install 'wrap-programs
(lambda _
(let ((ocamlpath
`(,(string-append #$output "/lib/ocaml/site-lib")
,@(search-path-as-string->list
(getenv "OCAMLPATH")))))
(for-each
(lambda (program)
(wrap-program (string-append #$output "/bin/" program)
`("OCAMLPATH" ":" prefix ,ocamlpath)))
'("frama-c" "frama-c-gui"))))))))
(inputs
(list gmp zlib))
(list bash-minimal gmp zlib))
(propagated-inputs (list
graphviz
lablgtk3