<div dir="ltr">There should be no need to bundle them into orig-dl tarball, even temporarily.  Bootstrapping new architectures for Rust is no different to breaking other circular dependencies:<div><br></div><div><ul><li><span style="line-height:1.5">Install the required dependencies "somehow"</span><br></li><ul><li><span style="line-height:1.5">For Rust+arm this probably means installing the upstream pre-built compiler, as you've suggested.  For new architectures it will require a working cross-compiler (and LLVM support).</span></li></ul><li><span style="line-height:1.5">Use it to build rustc.deb</span></li><ul><li><span style="line-height:1.5">Possibly by hacking the build-deps to remove dependencies that can't be satisfied through the packaging system, but I think we have the right build profiles in place to make manual edits unnecessary.</span></li></ul><li><span style="line-height:1.5">Use the resulting rustc.deb (and other build-deps) to build a "clean" rustc.deb, with no build-profiles or manual debian/control hacks.</span></li><li><span style="line-height:1.5">Upload the resulting clean rustc.deb (binary-only upload).</span></li></ul></div><div><br></div><div> - Gus</div></div><br><div class="gmail_quote"><div dir="ltr">On Sun, 17 Jul 2016 at 23:17 Ximin Luo <<a href="mailto:infinity0@debian.org">infinity0@debian.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Instead of building a cross-compiler, we can directly bootstrap arm64,armel,armhf using the 1.9.0 binaries provided by Rust upstream. We can bundle these into the orig-dl tarball as we did for amd64,i386 in previous versions. After the initial versions are uploaded, we can drop the orig-dl for the next version.<br>
<br>
I'm building this right now on asachi (arm64 porterbox) and the build is going well.<br>
<br>
Unless anyone complains, I'm going to proceed with this once the build succeeds and I'm happy with the results. I know that bootstrapping via cross-compilation is "cleaner" from a Debian perspective, but it would take much much more work. :( (And there are plenty of other architectures to try this with, in the future!)<br>
<br>
X<br>
<br>
--<br>
GPG: ed25519/56034877E1F87C35<br>
GPG: rsa4096/1318EFAC5FBBDBCE<br>
<a href="https://github.com/infinity0/pubkeys.git" rel="noreferrer" target="_blank">https://github.com/infinity0/pubkeys.git</a><br>
<br>
_______________________________________________<br>
Pkg-rust-maintainers mailing list<br>
<a href="mailto:Pkg-rust-maintainers@lists.alioth.debian.org" target="_blank">Pkg-rust-maintainers@lists.alioth.debian.org</a><br>
<a href="https://lists.alioth.debian.org/mailman/listinfo/pkg-rust-maintainers" rel="noreferrer" target="_blank">https://lists.alioth.debian.org/mailman/listinfo/pkg-rust-maintainers</a><br>
</blockquote></div>