gnu: freehdl: Fix gvhdl and freehdl-gennodes scripts.
* gnu/packages/engineering.scm (freehdl): [arguments] <phases>: Add patch-gvhdl and patch-freehdl-gennodes phases. Wrap-program "/bin/gvhdl" in make-wrapper phase. [inputs]: Add guile-2.2. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
parent
e37bdc0f28
commit
d3f9589842
@ -42,6 +42,7 @@
|
|||||||
#:use-module (gnu packages bison)
|
#:use-module (gnu packages bison)
|
||||||
#:use-module (gnu packages boost)
|
#:use-module (gnu packages boost)
|
||||||
#:use-module (gnu packages check)
|
#:use-module (gnu packages check)
|
||||||
|
#:use-module (gnu packages commencement)
|
||||||
#:use-module (gnu packages compression)
|
#:use-module (gnu packages compression)
|
||||||
#:use-module (gnu packages curl)
|
#:use-module (gnu packages curl)
|
||||||
#:use-module (gnu packages flex)
|
#:use-module (gnu packages flex)
|
||||||
@ -1441,25 +1442,62 @@ parallel computing platforms. It also supports serial execution.")
|
|||||||
(string-append (assoc-ref inputs "coreutils")
|
(string-append (assoc-ref inputs "coreutils")
|
||||||
"/bin/cat")))
|
"/bin/cat")))
|
||||||
#t))
|
#t))
|
||||||
|
(add-after 'patch-pkg-config 'setenv
|
||||||
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
|
(setenv "CXX" (string-append (assoc-ref inputs "gcc")
|
||||||
|
"/bin/g++"))
|
||||||
|
(setenv "SYSTEM_LIBTOOL" (string-append (assoc-ref inputs "libtool")
|
||||||
|
"/bin/libtool"))
|
||||||
|
#t))
|
||||||
|
(add-after 'setenv 'patch-gvhdl
|
||||||
|
(lambda _
|
||||||
|
(substitute* "v2cc/gvhdl.in"
|
||||||
|
(("--mode=link") "--mode=link --tag=CXX")
|
||||||
|
(("-lm") "-lm FREEHDL/lib/freehdl/libieee.la"))
|
||||||
|
#t))
|
||||||
|
(add-after 'patch-gvhdl 'patch-freehdl-gennodes
|
||||||
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
|
(substitute* "freehdl/freehdl-gennodes.in"
|
||||||
|
(("guile")
|
||||||
|
(string-append (assoc-ref inputs "guile") "/bin/guile"))
|
||||||
|
(("\\(debug") ";(debug")
|
||||||
|
(("\\(@ ") "(apply-emit")
|
||||||
|
(("\\(@@ ") "(apply-mini-format"))
|
||||||
|
#t))
|
||||||
(add-after 'configure 'patch-freehdl-pc
|
(add-after 'configure 'patch-freehdl-pc
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
(substitute* "freehdl.pc"
|
(substitute* "freehdl.pc"
|
||||||
(("=g\\+\\+")
|
(("=g\\+\\+")
|
||||||
(string-append "=" (assoc-ref inputs "gcc")
|
(string-append "=" (assoc-ref inputs "gcc-toolchain")
|
||||||
"/bin/g++"))
|
"/bin/g++"))
|
||||||
(("=libtool")
|
(("=libtool")
|
||||||
(string-append "=" (assoc-ref inputs "libtool")
|
(string-append "=" (assoc-ref inputs "libtool")
|
||||||
"/bin/libtool")))
|
"/bin/libtool")))
|
||||||
#t))
|
#t))
|
||||||
(add-after 'install-scripts 'make-wrapper
|
(add-after 'install-scripts 'make-wrapper
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
(let ((out (assoc-ref outputs "out")))
|
(let ((out (assoc-ref outputs "out")))
|
||||||
|
;; 'gvhdl' invokes the C compiler directly, so hard-code its
|
||||||
|
;; file name.
|
||||||
|
(wrap-program (string-append out "/bin/gvhdl")
|
||||||
|
`("CPLUS_INCLUDE_PATH" ":" prefix
|
||||||
|
(,(string-append (assoc-ref inputs "gcc-toolchain")
|
||||||
|
"/include")))
|
||||||
|
`("LIBRARY_PATH" ":" prefix
|
||||||
|
(,(string-append (assoc-ref inputs "gcc-toolchain")
|
||||||
|
"/lib")))
|
||||||
|
`("PATH" ":" prefix
|
||||||
|
(,(string-append (assoc-ref inputs "gcc-toolchain")
|
||||||
|
"/bin")
|
||||||
|
,(string-append (assoc-ref inputs "coreutils")
|
||||||
|
"/bin"))))
|
||||||
(wrap-program (string-append out "/bin/freehdl-config")
|
(wrap-program (string-append out "/bin/freehdl-config")
|
||||||
`("PKG_CONFIG_PATH" ":" prefix (,(string-append out "/lib/pkgconfig")))))
|
`("PKG_CONFIG_PATH" ":" prefix (,(string-append out "/lib/pkgconfig")))))
|
||||||
#t)))))
|
#t)))))
|
||||||
(inputs
|
(inputs
|
||||||
`(("coreutils" ,coreutils)
|
`(("coreutils" ,coreutils)
|
||||||
("gcc" ,gcc)
|
("gcc-toolchain" ,gcc-toolchain-5)
|
||||||
|
("guile" ,guile-2.2)
|
||||||
("perl" ,perl)
|
("perl" ,perl)
|
||||||
("pkg-config" ,pkg-config)
|
("pkg-config" ,pkg-config)
|
||||||
("libtool" ,libtool)))
|
("libtool" ,libtool)))
|
||||||
|
Loading…
Reference in New Issue
Block a user