[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#66129] [PATCH 00/20] Split SuiteSparse into subpackages
From: |
Ludovic Courtès |
Subject: |
[bug#66129] [PATCH 00/20] Split SuiteSparse into subpackages |
Date: |
Thu, 05 Oct 2023 15:20:52 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) |
Hi David,
David Elsing <david.elsing@posteo.net> skribis:
> This patch series adds the individual SuiteSparse packages (as in
> Gentoo:
> https://packages.gentoo.org/packages/sci-libs/suitesparse/dependencies),
> with autogenerated files and bundled libraries removed.
Nice!
> The GraphBLAS library is not yet included, but AFAICT it is not required
> by any other package. It also makes up by far the most space of the
> suitesparse package, e.g. on x86_64-linux, libgraphblas.so.7.2.0 is 196
> MB of the 201 MB SuiteSparse package.
>
> I think it would be best to keep the full suitesparse package until all
> of its dependencies are updated and the GraphBLAS package is added, as
> replacing them all at once would make the patch series quite large.
>
> Is the use of (@@ (guix packages) computed-origin-method) ok for
> creating the individual origins or is there another alternative?
Instead of:
+(define (suitesparse-package-src name path)
+ (origin
+ (method (@@ (guix packages) computed-origin-method))
+ (file-name
+ (string-append name "-" suitesparse-version))
+ (sha256 #f)
+ (uri
+ (delay
+ (with-imported-modules '((guix build utils))
+ #~(begin
+ (use-modules (guix build utils))
+ (copy-recursively
+ (string-append #$suitesparse-src "/" #$path) #$output)))))))
I’d suggest this:
(define (suitesparse-package-source name directory)
(computed-file (string-append name "-" suitesparse-version ".tar.xz")
(with-imported-modules '((guix build utils))
#~(begin
(use-modules (guix build utils))
(copy-recursively
(string-append #$suitesparse-src "/" #$directory)
#$output)))))
That way we have something simple that doesn’t rely on a private
procedure.
> gnu: suitesparse: Tweak description.
> gnu: Add suitesparse-config.
> gnu: Add suitesparse-amd.
> gnu: Add suitesparse-btf.
> gnu: Add suitesparse-camd.
> gnu: Add suitesparse-colamd.
> gnu: Add suitesparse-ccolamd.
> gnu: Add gklib.
> gnu: Add metis-5.2.
> gnu: Add gklib-suitesparse.
> gnu: Add metis-suitesparse.
> gnu: Add suitesparse-cholmod.
> gnu: Add suitesparse-cxsparse.
> gnu: Add suitesparse-klu.
> gnu: Add suitesparse-ldl.
> gnu: Add suitesparse-rbio.
> gnu: Add suitesparse-mongoose.
> gnu: Add suitesparse-spex.
> gnu: Add suitesparse-spqr.
> gnu: Add suitesparse-umfpack.
Apart from the trick above, this looks great to me!
Could you send an updated version?
Thanks,
Ludo’.
- [bug#66129] [PATCH 00/20] Split SuiteSparse into subpackages,
Ludovic Courtès <=
- [bug#66129] [PATCH 00/20] Split SuiteSparse into subpackages, Ludovic Courtès, 2023/10/05
- [bug#66129] [PATCH 00/20] Split SuiteSparse into subpackages, David Elsing, 2023/10/05
- [bug#66129] [PATCH v3 02/20] gnu: Add suitesparse-config., David Elsing, 2023/10/05
- [bug#66129] [PATCH v3 03/20] gnu: Add suitesparse-amd., David Elsing, 2023/10/05
- [bug#66129] [PATCH v3 03/20] gnu: Add suitesparse-amd., Ludovic Courtès, 2023/10/19
- [bug#66129] [PATCH v3 03/20] gnu: Add suitesparse-amd., David Elsing, 2023/10/19
- [bug#66129] [PATCH] gnu: Propagate suitesparse-* inputs referenced in header files., David Elsing, 2023/10/19
- [bug#66129] [PATCH] gnu: Propagate suitesparse-* inputs referenced in header files., Ludovic Courtès, 2023/10/20
- [bug#66129] [PATCH v3 01/20] gnu: suitesparse: Tweak description., David Elsing, 2023/10/05
- [bug#66129] [PATCH v3 09/20] gnu: Add metis-5.2., David Elsing, 2023/10/05