build-system/haskell: install config for any package that creates it.
A Cabal package is allowed to declare an "empty" library, in an otherwise executable-only package, for the purpose of allowing Cabal to use it as a dependency for other packages. See e.g. hspec-discover. * guix/build/haskell-build-system.scm (register): Unconditionally call setup script with "register", and install any config file generated.
This commit is contained in:
parent
b4b1fe9d2f
commit
6508ce55e9
@ -166,13 +166,13 @@ generate the cache as it would clash in user profiles."
|
||||
(package-name-version haskell)
|
||||
"/package.conf.d"))
|
||||
(id-rx (make-regexp "^id: *(.*)$"))
|
||||
(lib-rx (make-regexp "lib.*\\.(a|so)"))
|
||||
(config-file (string-append config-dir "/" name ".conf"))
|
||||
(config-file (string-append out "/" name ".conf"))
|
||||
(params
|
||||
(list (string-append "--gen-pkg-config=" config-file))))
|
||||
(unless (null? (find-files lib lib-rx))
|
||||
(run-setuphs "register" params)
|
||||
;; The conf file is created only when there is a library to register.
|
||||
(when (file-exists? config-file)
|
||||
(mkdir-p config-dir)
|
||||
(run-setuphs "register" params)
|
||||
(let ((config-file-name+id
|
||||
(call-with-ascii-input-file config-file (cut grep id-rx <>))))
|
||||
(rename-file config-file
|
||||
|
Loading…
Reference in New Issue
Block a user