--- Begin Message ---
Subject: |
provide a lib output for boost |
Date: |
Tue, 03 Oct 2017 17:34:41 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) |
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.
>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
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#28690: provide a lib output for boost |
Date: |
Sat, 08 Oct 2022 17:06:50 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux) |
Hi,
On Thu, 23 Jun 2022 at 13:35, post@thomasdanckaert.be wrote:
> On 2022-06-23 12:01, zimoun wrote:
>> On Thu, 03 Feb 2022 at 03:30, zimoun <zimon.toutoune@gmail.com> wrote:
>>> On Thu, 13 Jan 2022 at 16:45, zimoun <zimon.toutoune@gmail.com> wrote:
>>>> This patch #28690 [1] is about adding an output to boost. The aim is to
>>>> reduce the closure size.
>>>> The last message if from Dec. 2017 and indicates some issues.
>>>>
>>>> 1: <http://issues.guix.gnu.org/issue/28690>
>>> Since some work remains and it is not clear if it is worth to complete
>>> such work about adding more outputs to boost, I plan to mark this report
>>> as ’donewontfix’. Let me know if it is worth to keep it open.
>> Any objection closing? If not, I will close it in 2 weeks.
> I'm no longer a very active contributor (or user :/), so not sure I'm the
> right person to judge this. Reducing boost package size is a nice thing to
> do, but I'm not going to do the necessary work of building all (or at least a
> significant subset of) boost reverse dependencies to check if the approach
> above works, or if more changes are necessary.
I agree that the closure of boost deserve more love.
> I guess someone can always pick up the patch again when they feel the need for
> a smaller boost package.
Well, I am in favor to close it because it requires some work for
rebasing, etc. and the pending patches are such large that I am doubtful
people wanting to work on reducing the closure of boost will start to
look here. :-)
Cheers,
simon
--- End Message ---