gnu: openssl: Move static libraries to "static" output.

* gnu/packages/tls.scm (openssl)[outputs]: New field.
[arguments]: Add 'move-static-libraries' phase.
This commit is contained in:
Ludovic Courtès 2016-05-02 15:43:11 +02:00
parent d03781c3bc
commit 8c78aeb724
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5

View file

@ -211,6 +211,8 @@ (define-public openssl
(patches (search-patches "openssl-runpath.patch"
"openssl-c-rehash-in.patch"))))
(build-system gnu-build-system)
(outputs '("out"
"static")) ;6MiB of .a files
(native-inputs `(("perl" ,perl)))
(arguments
`(#:disallowed-references (,perl)
@ -267,6 +269,19 @@ (define-public openssl
(find-files (string-append out "/lib")
"\\.so"))
#t)))
(add-after 'install 'move-static-libraries
(lambda* (#:key outputs #:allow-other-keys)
;; Move static libraries to the "static" output.
(let* ((out (assoc-ref outputs "out"))
(lib (string-append out "/lib"))
(static (assoc-ref outputs "static"))
(slib (string-append static "/lib")))
(mkdir-p slib)
(for-each (lambda (file)
(install-file file slib)
(delete-file file))
(find-files lib "\\.a$"))
#t)))
(add-before
'patch-source-shebangs 'patch-tests
(lambda* (#:key inputs native-inputs #:allow-other-keys)