* Use and abuse of ‘computed-origin-method’: the ‘rust-ring’ case
@ 2024-12-14 22:37 Ludovic Courtès
0 siblings, 0 replies; only message in thread
From: Ludovic Courtès @ 2024-12-14 22:37 UTC (permalink / raw)
To: guix-devel; +Cc: Efraim Flashner
Hello Guix,
‘rust-ring-0.16-sources’ & co. are origins that use
‘computed-origin-method’ (the thing that’s internal and undocumented) to
generate object files from assembly source, things like that.
An origin is supposed to represent source code, and clearly, the end
result here is not source by any stretch.
I believe it’s done this way simply because ‘cargo-build-system’ then
embarks that “source” to build leaf package(s) that use ‘rust-ring’,
directly or indirectly; this is where Rust compilation actually takes
place and, IIUC, the reason why a build phase in ‘rust-ring’ would be of
no use.
Anyway, the ‘computed-origin-method’ hack prevents input rewriting from
working as expected because the inputs of that big gexp aren’t visible
by just traversing the package graph. That’s a problem.
Ideas on how to fix that?
An idea that comes to mind is to turn ‘rust-ring-0.16-sources’ into a
package using ‘trivial-build-system’, though I’m not sure it would work
well with ‘cargo-build-system’.
Ludo’.
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2024-12-14 22:38 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-12-14 22:37 Use and abuse of ‘computed-origin-method’: the ‘rust-ring’ case Ludovic Courtès
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.