mirror of
https://gitlab.com/buildroot.org/buildroot.git
synced 2026-09-09 16:01:54 -09:00
ac2b26fba2ad06fadf14244505319dc5c272906c
Commitde4cf25375(package/{rust, rust-bin}: bump to version 1.66.0) forgot, despite the big comment above the version strings, to confirm that the vendoring was still working. Previously, we were adding the vendoring equivalence manually, but in commit04154a6517(support/download/cargo-post-process: cargo output for vendor config), we switched to using the output of "cargo vendor" (on stdout) to support cases were the vendoring equivalence would be more complex (e.g. when using crates not hosted on crates.io). With rust until and including 1.65.0, "cargo vendor" would output (for crates.io crates) the same output as our manual fixups, except it was preceded by an empty line. So, to avoid recompting all our hashes, we added a tweak to strip away the leading empty line in04154a6517. But rust 1.66.0 includes [0] which changes the output (on stdout) of "cargo vendor", where the first empty line is no longer emitted. This means that our tweak for rust 1.65.0 now strips out an important part of the cargo vendor output, which renders the archives invalid, and thus generates different archives, which fail to validate against our hashes. Fix this by doing what the comment in the post-process helper states, and just keep the whole output of "cargo vendor", by just removing the "tail --lines=+2". Since that comment is no longer meaningful, we drop it too. Now, all our 6 cargo-based packages, as well as our 5 python packages that have rust code, can be vendored again, without changing our hashes, but most importantly, with valid archives. Still, we keep the comment above the versions strings, in the hope that a future bumper will notice and be more careful at validating the vendoring. [0] https://github.com/rust-lang/cargo/pull/11273 Fixes: http://autobuild.buildroot.org/results/bea/beac7674bbc9fd2f8777b5861f65afee9c485753/ (bat) http://autobuild.buildroot.org/results/d1e/d1ec1ebbde115628a4b8b9099544347242a97c1c/ (dust) http://autobuild.buildroot.org/results/f96/f968be895be9ca98b314fdd688ef8d3bdf4e5dfb/ (hyerfine) http://autobuild.buildroot.org/results/a0c/a0cdb6cc9493f5248d98f98b13da854e12adc2be/ (ripgrep) ... and so many others... Reported-by: Romain Naour <romain.naour@gmail.com> Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr> Cc: James Hilliard <james.hilliard1@gmail.com> Cc: Simon Richter <simon.richter@ptwdosimetry.com> Reviewed-by: James Hilliard <james.hilliard1@gmail.com> Reviewed-by: Romain Naour <romain.naour@smile.fr> Tested-by: Romain Naour <romain.naour@smile.fr> Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
…
…
…
Buildroot is a simple, efficient and easy-to-use tool to generate embedded Linux systems through cross-compilation. The documentation can be found in docs/manual. You can generate a text document with 'make manual-text' and read output/docs/manual/manual.text. Online documentation can be found at http://buildroot.org/docs.html To build and use the buildroot stuff, do the following: 1) run 'make menuconfig' 2) select the target architecture and the packages you wish to compile 3) run 'make' 4) wait while it compiles 5) find the kernel, bootloader, root filesystem, etc. in output/images You do not need to be root to build or run buildroot. Have fun! Buildroot comes with a basic configuration for a number of boards. Run 'make list-defconfigs' to view the list of provided configurations. Please feed suggestions, bug reports, insults, and bribes back to the buildroot mailing list: buildroot@buildroot.org You can also find us on #buildroot on OFTC IRC. If you would like to contribute patches, please read https://buildroot.org/manual.html#submitting-patches
Description
Languages
Makefile
62.5%
Python
19%
C
8.5%
Shell
6.1%
PHP
1.4%
Other
2.1%