guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#35318] [PATCH] Update cargo-build-system to expand package inputs


From: Ivan Petkov
Subject: [bug#35318] [PATCH] Update cargo-build-system to expand package inputs
Date: Thu, 18 Apr 2019 22:34:05 -0700

When building, cargo requires the source of all transitive dependencies to be 
present in its index.
Rather than force package definitions to list out all transitive inputs, the 
build system will
automatically expand the inputs as necessary.

Because it is possible for crates to have apparent cycles in their native 
dependencies,
the build system must take some measures to work around potential cycles. This 
patch series
takes an initial naive stab at resolving the problem, by never building 
native-inputs.

I plan on revisiting this sometime soon and making the system a bit more 
intelligent
(namely building native-inputs where possible and breaking any cycles). But for 
now this should
unblock working on package definitions.

I’ve also included three rust crates as a proof of concept that the system 
works and it handles
potential native-input cycles. These crates do nothing on their own, but 
they’re heavily depended
upon by the rest of the crates ecosystem, so they will eventually be useful to 
have in guix.

—Ivan

Attachment: 0001-packages-allow-dynamic-input-closure-computation.patch
Description: Binary data

Attachment: 0002-build-system-cargo-expand-transitive-package-inputs.patch
Description: Binary data

Attachment: 0003-gnu-crate-add-unicode-xid.patch
Description: Binary data

Attachment: 0004-gnu-crate-Add-proc-macro2-and-quote.patch
Description: Binary data

 

reply via email to

[Prev in Thread] Current Thread [Next in Thread]