unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#28690] provide a lib output for boost
@ 2017-10-03 16:34 Dave Love
  2017-10-11  8:39 ` Roel Janssen
                   ` (2 more replies)
  0 siblings, 3 replies; 24+ messages in thread
From: Dave Love @ 2017-10-03 16:34 UTC (permalink / raw)
  To: 28690

[-- Attachment #1: Type: text/plain, Size: 338 bytes --]

I mentioned elsewhere noticing the large size of boost in closures.
I've now realized what the problem was with making a lib output, and
done one, as below.  However, presumably it should have a dependency of
out on lib for compatibility, and I don't know the right way to do that.

The lib package is 17MiB, and the headers are 108MiB.


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-boost-Make-a-lib-output.patch --]
[-- Type: text/x-diff, Size: 1928 bytes --]

From 1bb845d1d45ee7e8b9447bab902f3de41f0acfac Mon Sep 17 00:00:00 2001
From: Dave Love <fx@gnu.org>
Date: Tue, 3 Oct 2017 16:18:59 +0100
Subject: [PATCH] gnu: boost: Make a "lib" output.

This save about half the contribution to the Closure of things linked against
it,

* gnu/packages/boost.scm(outputs): Add lib.
(arguments)[mv-lib]: Add move the lib output into place after install.
---
 gnu/packages/boost.scm | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/boost.scm b/gnu/packages/boost.scm
index 4c7308e9d..c1e622fcd 100644
--- a/gnu/packages/boost.scm
+++ b/gnu/packages/boost.scm
@@ -53,6 +53,7 @@
      `(("perl" ,perl)
        ("python" ,python-2)
        ("tcsh" ,tcsh)))
+    (outputs '("out" "lib"))
     (arguments
      `(#:tests? #f
        #:make-flags
@@ -60,7 +61,7 @@
 
              ;; Set the RUNPATH to $libdir so that the libs find each other.
              (string-append "linkflags=-Wl,-rpath="
-                            (assoc-ref %outputs "out") "/lib")
+                            (assoc-ref %outputs "lib") "/lib")
 
              ;; Boost's 'context' library is not yet supported on mips64, so
              ;; we disable it.  The 'coroutine' library depends on 'context',
@@ -99,7 +100,13 @@
          (replace
              'install
            (lambda* (#:key outputs make-flags #:allow-other-keys)
-             (zero? (apply system* "./b2" "install" make-flags)))))))
+             (zero? (apply system* "./b2" "install" make-flags))))
+         (add-after 'install 'mv-lib
+           (lambda _
+             (mkdir-p (assoc-ref %outputs "lib"))
+             (rename-file (string-append %output "/lib")
+                          (string-append (assoc-ref %outputs "lib")
+                                         "/lib")))))))
 
     (home-page "http://boost.org")
     (synopsis "Peer-reviewed portable C++ source libraries")
-- 
2.11.0


^ permalink raw reply related	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2022-10-08 15:18 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-10-03 16:34 [bug#28690] provide a lib output for boost Dave Love
2017-10-11  8:39 ` Roel Janssen
2017-10-19 10:57   ` Dave Love
2017-10-19 14:19     ` Roel Janssen
2017-10-20 12:58     ` Ludovic Courtès
2017-10-20 13:21       ` Thomas Danckaert
2017-10-20 16:14         ` Ludovic Courtès
2017-10-22 16:50           ` Dave Love
2017-10-22 19:03             ` Ludovic Courtès
2017-10-24 13:28               ` Thomas Danckaert
2017-10-24 15:30                 ` Ludovic Courtès
2017-12-03 23:07                 ` Ricardo Wurmus
2017-12-04  8:19                   ` Thomas Danckaert
2017-10-20 16:09       ` Dave Love
2017-10-20 20:14         ` Ludovic Courtès
2017-10-19 12:52 ` Thomas Danckaert
2017-10-20  9:20   ` Dave Love
2017-10-20  9:46     ` Thomas Danckaert
2017-10-20 15:34       ` Dave Love
2022-01-13 15:45 ` zimoun
2022-02-03  2:30   ` zimoun
2022-06-23 10:01     ` zimoun
2022-06-23 11:35       ` Thomas Danckaert via Guix-patches
2022-10-08 15:06         ` bug#28690: " zimoun

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).