-
Notifications
You must be signed in to change notification settings - Fork 12.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
rust build on ARMv8 fails in test macro-stepping.rs, other debuginfo-gdb tests. #37225
Comments
This might be related to #36323 |
I'm not an expert here (on gdb or on rust), but if someone wants to get access to this hardware I'm happy to make an introduction, it's currently in beta test. |
Thanks for the report! Could you also gist the full build logs of the failed tests as well? I don't think anyone's ever run the full test suite on armv8 yet so this may just be a standard "need to do some porting" failure. |
@alexcrichton happy to give you access to a machine for testing, just let me know! Thanks @vielmetti |
Looks like the primarily failing test is
Other failures look like:
The former may just be a legit bug with AArch64 on our end (or LLVM's) and the latter may just be a bug in the build system or something like that maybe? Does the machine here have anything odd with its filesystem that may cause that to arise? |
The file system it is using is an iscsi mount. I will run tests again on a local file system. |
I'm able to replicate a failing test on a different file system. I captured a gist with RUST_BACKTRACE=1 to show more of what is going on. https://gist.github.com/a0304ca94a51fd55f4853f609db65d67 |
Ah ok looks like those filesystem errors aren't related to any weird mount issues or anything like that. @michaelwoerister do you thoughts about the errors here? Either the what appears to be legit error or the filesystem issues? |
The next thing I'm going to try is "make check" instead of "make -j check" just in case there are parallelism issues in the makefile. |
Off the top of my head I can't say what the problem could be. The file system errors occur during builds of auxiliary libraries which is something that many other kinds of tests do too. As for the stepping, it might be a problem with the aarch64 code generator? I'll try if I can reproduce the problem. |
The only thing that comes to mind (which we ran into in the Go language port) was PAGE_SIZE variances among aarch64 systems. A little bit of detail is here https://marcin.juszkiewicz.com.pl/2015/09/14/from-a-diary-of-aarch64-porter-page_size/ I'm stabbing in the dark here, but that said, this seems to be a common portability issue with aarch64. |
@michaelwoerister nice to see a fellow NYC infrastructure-r on this thread. If you need any access to ARMv8 test boxes, we can give you access to our on demand beta, just email me jacob at packet dot net. |
@jacobsmith928 Thanks! I recently got an ODROID C2 which should have the right architecture, right? |
@michaelwoerister One of the portability issues with aarch64 code mentioned above is how to handle PAGE_SIZE, which different operating systems set differently (notably Fedora and Ubuntu do not set it the same, Fedora uses 64k pages and Ubuntu uses 4k pages). So to do a proper test you want to make sure that you cross-test between the two systems. (I don't know if that's the particular problem here.) |
@michaelwoerister the ODROID C2 architecture is probably just fine, but if you want something more powerful or just some testing diversity, our machines have 2 x 48 core cavium chips and 128 GB of RAM. |
Hey, if it helps also feel free to look through the Debian build logs - click on "Maybe-Successful" or "Maybe-Failed" for the full logs. For each build in that table, the machine that performed the build is listed in the "Builder" column and you can look up its details here. For example, arm-arm-04.debian.org built our first successful arm64 rustc builds back in July. |
Looks like we're getting this in Debian for 1.13.0 stable too: https://buildd.debian.org/status/fetch.php?pkg=rustc&arch=arm64&ver=1.13.0%2Bdfsg1-1&stamp=1479008240 |
Bump. Confirming that this bug is breaking the testsuite of 1.13.0 on debian arm64 autobuilders (full log in the link above). It looks like the frame info in last step is missing the final call:
I noticed that the lldb test doesn't actually check for |
I skipped #loc6 for LLDB because Xcode LLDB (and we only test with LLDB on OSX) seems to have a bug in this case. (I think it's an LLDB bug because it also reproes with an equivalent C program). Linux LLDB 4.0 and GDB seemed to work fine so far... |
@rust-lang/tools Since aarch64 is a tier 2 platform, does anybody object to just ignore this test case there? It looks like an unfortunate interaction between LLVM codegen and debuggers, I don't know if there's much we can do on our side. |
@michaelwoerister sounds good to me, yeah. |
…test-on-aarch64, r=alexcrichton debuginfo: Ignore macro-stepping test on aarch64 See rust-lang#37225. r? @alexcrichton
rustc (1.30.0+dfsg1+llvm-2ubuntu1~18.04.1) bionic; urgency=medium * Backport to Bionic. rustc (1.30.0+dfsg1+llvm-2ubuntu1) disco; urgency=medium * Merge from Debian unstable: - Use the bundled llvm to avoid having to do llvm updates in order to deliver rust updates - update debian/config.toml.in - update debian/control - update debian/copyright - update debian/rules - Build-Depend on libc6-dbg on armhf, to workaround a crash in ld.so during some debuginfo tests - update debian/control - Add a hack to ensure the stage0 compiler is extracted to the correct location - update debian/make_orig-stage0_tarball.sh - Scrub -g from CFLAGS and CXXFLAGS in order to let rustbuild control whether LLVM is compiled with debug symbols - update debian/rules - On i386, only build debuginfo for libstd - update debian/rules - Ignore all test failures on every architecture - update debian/rules - Version the Build-Conflict on gdb-minimal as gdb now Provides it - update debian/control - Adjust the rustc Breaks/Replaces libstd-rust-dev version to fix an upgrade issue - update debian/control - Adjust debian/watch to include +llvm in upstream version. rustc (1.30.0+dfsg1-2) unstable; urgency=medium * Increase FAILURES_ALLOWED for mips mipsel to 20. * Set debuginfo-only-std = false for 32-bit powerpc architectures. rustc (1.30.0+dfsg1-1) unstable; urgency=medium * Upload to unstable. (Closes: #881845) * Increase FAILURES_ALLOWED for mips architectures. * Set debuginfo-only-std = false for mips architectures. rustc (1.30.0+dfsg1-1~exp2) experimental; urgency=medium * Disable debuginfo-gdb tests relating to enums. These will be fixed in an upcoming version, see upstream #54614 for details. rustc (1.30.0+dfsg1-1~exp1) experimental; urgency=medium * Actually don't build docs in an arch-only build. * Add mips patch, hopefully closes #881845 but let's see. * New upstream release. rustc (1.30.0~beta.7+dfsg1-1~exp3) experimental; urgency=medium * Do the necessary bookkeeping for the LLVM update. rustc (1.30.0~beta.7+dfsg1-1~exp2) experimental; urgency=medium * Tweak test failure rules: armel <= 8, ppc64 <= 12. * Update to LLVM 7. rustc (1.30.0~beta.7+dfsg1-1~exp1) experimental; urgency=medium * New upstream release. rustc (1.29.2+dfsg1+llvm-0ubuntu1) cosmic; urgency=medium * Merge with Debian unstable. Remaining changes: - Use the bundled llvm to avoid having to do llvm updates in order to deliver rust updates - update debian/config.toml.in - update debian/control - update debian/copyright - update debian/rules - Build-Depend on libc6-dbg on armhf, to workaround a crash in ld.so during some debuginfo tests - update debian/control - Add a hack to ensure the stage0 compiler is extracted to the correct location - update debian/make_orig-stage0_tarball.sh - Scrub -g from CFLAGS and CXXFLAGS in order to let rustbuild control whether LLVM is compiled with debug symbols - update debian/rules - On i386, only build debuginfo for libstd - update debian/rules - Ignore all test failures on every architecture - update debian/rules - Version the Build-Conflict on gdb-minimal as gdb now Provides it - update debian/control - Adjust the rustc Breaks/Replaces libstd-rust-dev version to fix an upgrade issue - update debian/control * Adjust debian/watch to include +llvm in upstream version. * Update to new upstream release. rustc (1.29.0+dfsg1-1) unstable; urgency=medium * Upload to unstable. * Drop d-armel-disable-kernel-helpers.patch as a necessary part of the fix to #906520, so it is actually fixed. * Backport a patch to fix the rand crate on powerpc. (Closes: #909400) * Lower the s390x allowed failures back to 25. rustc (1.29.0+dfsg1-1~exp1) experimental; urgency=medium * New upstream release. * Include patch for armel atomics. (Closes: #906520) * Update to latest Standards-Version; no changes required. rustc (1.28.0+dfsg1+llvm-0ubuntu2) cosmic; urgency=medium * Adjust the rustc Breaks/Replaces libstd-rust-dev version to fix an upgrade issue - update debian/control rustc (1.28.0+dfsg1+llvm-0ubuntu1) cosmic; urgency=medium * Merge from Debian unstable, remaining changes: - Use the bundled llvm to avoid having to do llvm updates in order to deliver rust updates - update debian/config.toml.in - update debian/control - update debian/copyright - update debian/rules - Build-Depend on libc6-dbg on armhf, to workaround a crash in ld.so during some debuginfo tests - update debian/control - Add a hack to ensure the stage0 compiler is extracted to the correct location - update debian/make_orig-stage0_tarball.sh - Scrub -g from CFLAGS and CXXFLAGS in order to let rustbuild control whether LLVM is compiled with debug symbols - update debian/rules - On i386, only build debuginfo for libstd - update debian/rules - Ignore all test failures on every architecture - update debian/rules - Version the Build-Conflict on gdb-minimal as gdb now Provides it - update debian/control rustc (1.28.0+dfsg1-3) unstable; urgency=medium * Team upload. [ Ximin Luo ] * More sparc64 fixes, and increase allowed-test-failures there to 180. [ Julien Cristau ] * Don't use pentium4 as i686 baseline (closes: #908561) rustc (1.28.0+dfsg1-2) unstable; urgency=medium * Switch on verbose-tests to restore the old pre-1.28 behaviour, and restore old failure-counting logic. * Allow 50 test failures on s390x, restored failure-counting logic avoids more double-counts. rustc (1.28.0+dfsg1-1) unstable; urgency=medium * New upstream release. * Add patches from Fedora to fix some test failures. * Ignore a failure testing specific error output, under investigation. * Allow 100 test failures on s390x, should be reducible later with LLVM 7. * Temporary fix for mips64el bootstrap. * Be even more verbose during the build. * Update to latest Standards-Version. rustc (1.28.0~beta.14+dfsg1-1~exp2) experimental; urgency=medium * Update test-failure counting logic. * Fix version constraints for Recommends: cargo. * Add patch to fix sparc64 CABI. rustc (1.28.0~beta.14+dfsg1-1~exp1) experimental; urgency=medium * New upstream release. * Update to latest Standards-Version; no changes required. rustc (1.27.2+dfsg1-1) unstable; urgency=medium [ Sylvestre Ledru ] * Update of the alioth ML address. [ Ximin Luo ] * Fail the build if our version contains ~exp and we are not releasing to experimental, this has happened by accident a few times already. * Allow 36 and 44 test failures on armel and s390x respectively. * New upstream release. rustc (1.27.1+dfsg1-1~exp4) experimental; urgency=medium * Unconditonally prune crate checksums to avoid having to manually prune them whenever we patch the vendored crates. rustc (1.27.1+dfsg1-1~exp3) experimental; urgency=medium * Add patch from Fedora to fix rebuild against same version. rustc (1.27.1+dfsg1-1~exp2) experimental; urgency=medium * Fix some failing tests. rustc (1.27.1+dfsg1-1~exp1) unstable; urgency=medium * New upstream release. rustc (1.27.0+dfsg0+llvm-0ubuntu1) cosmic; urgency=medium * Update to 1.27.0 * Bump rustc build requirement to 1.26.0 - update debian/control * Rename libstd-rust-1.26 to libstd-rust-1.27 - update debian/control - debian/libstd-rust-1.26.lintian-overrides => debian/libstd-rust-1.27.lintian-overrides * Update debian/copyright * Refresh patches - update debian/patches/u-fixtestignores-ppc64el.patch - update debian/patches/u-tag-private-modules-with-doc-cfg.patch - update debian/patches/d-disable-cargo-vendor.patch - update debian/patches/d-no-web-dependencies-in-doc.patch * Drop patches that are fixed upstream - remove debian/patches/u-fix-rustdoc-theme-test-without-rpath.patch - remove debian/patches/u-fix-fp-target-warning.patch - update debian/patches/series * Disable search functionality in the documentation as it depends on mark.js and elasticlunr.js, both of which are stripped from the tarball (they are vendored in minified form) and neither of which are packaged separately in Ubuntu yet - add debian/patches/d-disable-doc-search.patch - update debian/patches/series rustc (1.26.2+dfsg1+llvm-0ubuntu1) cosmic; urgency=medium * Merge from Debian unstable, remaining changes: - Use the bundled llvm to avoid having to do llvm updates in order to deliver rust updates - update debian/config.toml.in - update debian/control - update debian/copyright - update debian/rules - Build-Depend on libc6-dbg on armhf, to workaround a crash in ld.so during some debuginfo tests - update debian/control - Exclude src/tools/lld from the tarball - update debian/copyright - update debian/rules - Add a hack to ensure the stage0 compiler is extracted to the correct location - update debian/make_orig-stage0_tarball.sh - Scrub -g from CFLAGS and CXXFLAGS in order to let rustbuild control whether LLVM is compiled with debug symbols - update debian/rules - Ensure the build uses the bundled stage0 rustc when bootstrapping - update debian/rules - Only build debuginfo for libstd on i386 - update debian/rules - Ignore all test failures on every architecture - update debian/rules rustc (1.26.2+dfsg1-1) unstable; urgency=medium * New upstream release. * Stop ignoring tests that now pass. * Don't ignore tests that still fail, instead raise FAILURES_ALLOWED. This allows us to see the test failures in the build logs, rather than hiding them. rustc (1.26.1+dfsg1-3) unstable; urgency=medium * Fix build-dep version range to build against myself. rustc (1.26.1+dfsg1-2) unstable; urgency=medium * Also ignore test_loading_cosine on ppc64el. rustc (1.26.1+dfsg1-1) unstable; urgency=medium * New upstream release. rustc (1.26.0+dfsg1-1~exp4) experimental; urgency=medium * Try alternative patch to ignore x86 stdsimd tests suggested by upstream. * Bump up allowed-test-failures to 8 to account for the fact that we're now double-counting some failures. rustc (1.26.0+dfsg1-1~exp3) experimental; urgency=medium * Ignore some irrelevant tests on ppc64 and non-x86 platforms. rustc (1.26.0+dfsg1-1~exp2) experimental; urgency=medium * Add Breaks+Replaces for older libstd-rust-dev with codegen-backends. (Closes: #899180) * Backport some test and packaging fixes from Ubuntu. rustc (1.26.0+dfsg1-1~exp1) experimental; urgency=medium * New upstream release. * Update to latest Standards-Version; no changes required. * Update doc-base files. (Closes: #876831) rustc (1.25.0+dfsg1-2) unstable; urgency=medium * Add patches for LLVM's compiler-rt to fix bugs on sparc64 and mips64. (Closes: #898982) * Install codegen-backends into rustc rather than libstd-rust-dev. (Closes: #899087) rustc (1.25.0+dfsg1-1) unstable; urgency=medium * Upload to unstable. * Allow up to 15 test failures on s390x. * Set CARGO_INCREMENTAL=0 on sparc64. rustc (1.26.1+dfsg0+llvm-0ubuntu1) cosmic; urgency=medium * Update to 1.26.1 * Exclude src/tools/lld from the tarball - update debian/copyright - update debian/rules rustc (1.26.0+dfsg0+llvm-0ubuntu3) cosmic; urgency=medium * Backport 'Fix "fp" feature for AArch64', as the console warnings appear to be making the cargo tests fail - add debian/patches/u-fix-fp-feature-for-aarch64.patch - update debian/patches/series * Drop src/tools/lld from rust-src (can be dropped after the next merge with Debian when we have an updated tarball) - update debian/rules rustc (1.26.0+dfsg0+llvm-0ubuntu2) cosmic; urgency=medium * Ignore all test failures on every architecture. If anyone else wants to spend time getting all of the tests to pass, be my guest - update debian/rules rustc (1.26.0+dfsg0+llvm-0ubuntu1) cosmic; urgency=medium * Update to 1.26.0 * Bump rustc build requirement to 1.25.0 - update debian/control * Rename libstd-rust-1.25 to libstd-rust-1.26 - update debian/control - debian/libstd-rust-1.25.lintian-overrides => debian/libstd-rust-1.26.lintian-overrides * Update debian/copyright * Refresh patches - update debian/patches/d-armel-disable-kernel-helpers.patch - update debian/patches/d-ignore-removed-submodules.patch - update debian/patches/d-no-web-dependencies-in-doc.patch - update debian/patches/u-ignoretest-armhf_01.patch - update debian/patches/u-ignoretest-armhf_02.patch - update debian/patches/u-ignoretest-armhf_06.patch - update debian/patches/u-ignoretest-ppc64el.patch - update debian/patches/u-make-tests-work-without-rpath.patch * Drop patches that are fixed upstream or no longer applicable - remove debian/patches/u-gperf-3.1.patch - remove debian/patches/u-powerpcspe-support.patch - update debian/patches/series * No need to generate html_blocks.c now that hoedown is gone - update debian/rules * Backport upstream change to ensure that libraries build in stage0 have unique metadata - add debian/patches/u-ensure-libraries-built-in-stage0-have-unique-metadata.patch - update debian/patches/series * Use the new --remap-path-prefix syntax for stage != 0 and the old syntax for stage 0 when building with rustc < 1.26 (see upstream issue #50910) - update debian/rules rustc (1.25.0+dfsg1+llvm-0ubuntu3) cosmic; urgency=medium * Don't Build-Conflict on gdb-minimal - update debian/control rustc (1.25.0+dfsg1+llvm-0ubuntu2) cosmic; urgency=medium * Update to cosmic rustc (1.25.0+dfsg1+llvm-0ubuntu1) bionic; urgency=medium * Merge from Debian experimental, remaining changes: - Use the bundled llvm to avoid having to do llvm updates in order to deliver rust updates - update debian/config.toml.in - update debian/control - update debian/copyright - update debian/rules - Don't run dynamic_lib::tests::test_loading_cosine on Aarch64 whilst if fails there - add debian/patches/u-ignoretest-arm64_02.patch - update debian/patches/series - Make test failures fatal, except on ppc64el and s390x, as there's nothing in the archive yet that requires a working rust on these architectures - update debian/rules - Only build debuginfo for libstd on i386 - update debian/rules - Ensure the build uses the bundled stage0 rustc when bootstrapping - update debian/rules - Add a hack to ensure the stage0 compiler is extracted to the correct location - update debian/make_orig-stage0_tarball.sh - Make RustdocTheme test work on builds where rust.rpath = false - add debian/patches/u-fix-rustdoc-theme-test-without-rpath.patch - update debian/patches/series - Scrub -g from CFLAGS and CXXFLAGS in order to let rustbuild control whether LLVM is compiled with debug symbols - update debian/rules - Build-Depend on libc6-dbg on armhf, to workaround a crash in ld.so during some debuginfo tests. This isn't a proper fix and needs further investigation - update debian/control - Ignore test failures on Aarch64. Upstream aren't even running tests on this architecture so let's not care about test failures there - update debian/rules rustc (1.25.0+dfsg1-1~exp2) experimental; urgency=medium * Install missing codegen-backends. rustc (1.25.0+dfsg1-1~exp1) experimental; urgency=medium * New upstream release. * Update to LLVM 6.0. rustc (1.24.1+dfsg1+llvm-0ubuntu1) bionic; urgency=medium [ Chris Coulson / Rico Tzschichholz ] * Merge from Debian unstable, remaining changes: - Use the bundled llvm to avoid having to do llvm updates in order to deliver rust updates - update debian/config.toml.in - update debian/control - update debian/copyright - update debian/rules - Don't run dynamic_lib::tests::test_loading_cosine on Aarch64 whilst if fails there - add debian/patches/u-ignoretest-arm64_02.patch - update debian/patches/series - Make test failures fatal, except on ppc64el and s390x, as there's nothing in the archive yet that requires a working rust on these architectures - update debian/rules - Disable debuginfo when building on 32-bit architectures, as it seems to be the only way we can get a successful build - update debian/config.toml.in - update debian/rules - Ensure the build uses the bundled stage0 rustc when bootstrapping - update debian/config.toml.in - update debian/rules - Add a hack to ensure the stage0 compiler is extracted to the correct location - update debian/make_orig-stage0_tarball.sh rustc (1.24.1+dfsg1-1) unstable; urgency=medium * Upload to unstable. * Raise allowed-test-failures to 160 on some non-release arches: powerpc, powerpcspe, sparc64, x32. rustc (1.24.1+dfsg1-1~exp2) experimental; urgency=medium * Steal some patches from Fedora to fix some test failures. * Update debian/patches/u-make-tests-work-without-rpath.patch to try to fix some more test failures. rustc (1.24.1+dfsg1-1~exp1) experimental; urgency=medium * More sparc64 CABI fixes. (Closes: #888757) * New upstream release. * Note that s390x baseline was updated in the meantime. (Closes: #851150) * Include Debian-specific patch to disable kernel helpers on armel. (Closes: #891902) * Include missing build-dependencies for pkg.rustc.dlstage0 build profile. (Closes: #891022) * Add architecture.mk mapping for armel => armv5te-unknown-linux-gnueabi. (Closes: #891913) * Enable debuginfo-only-std on armel as well. (Closes: #891961) * Backport upstream patch to support powerpcspe. (Closes: #891542) * Disable full-bootstrap again to work around upstream #48319. rustc (1.23.0+dfsg1+llvm-0ubuntu2) bionic; urgency=medium * Merge from Debian experimental, remaining changes: - Use the bundled llvm to avoid having to do llvm updates in order to deliver rust updates - update debian/config.toml.in - update debian/control - update debian/copyright - update debian/rules - Don't run dynamic_lib::tests::test_loading_cosine on Aarch64 whilst if fails there - add debian/patches/u-ignoretest-arm64_02.patch - update debian/patches/series - Make test failures fatal, except on ppc64el and s390x, as there's nothing in the archive yet that requires a working rust on these architectures - update debian/rules - Disable debuginfo when building on 32-bit architectures, as it seems to be the only way we can get a successful build - update debian/config.toml.in - update debian/rules - Update debian/patches/u-make-tests-work-without-rpath.patch to fix some test failures - Backport an upstream change to make the stack overflow detection work with a recent change in glibc 2.27 that moves the stack guard page for threads beyond the end of the stack - add debian/patches/u-stack-guard-glibc-2.27-fix.patch - update debian/patches/series rustc (1.23.0+dfsg1-1) unstable; urgency=medium * Upload to unstable. rustc (1.23.0+dfsg1-1~exp1) experimental; urgency=medium * New upstream release. * Update to latest Standards-Version; no changes required. rustc (1.22.1+dfsg1-2) unstable; urgency=medium * Fix B-D rustc version so this package can be built using itself. rustc (1.22.1+dfsg1-1) unstable; urgency=medium [ Ximin Luo ] * Remove unimportant files that autoload remote resources from rust-src. * Fix more symlinks in rust-doc. * On armhf, only generate debuginfo for libstd and not the compiler itself. This works around buildds running out of memory, see upstream #45854. * Update to latest Standards-Version; no changes required. [ Chris Coulson ] * Fix some test failures that occur because we build rust without an rpath. rustc (1.22.1+dfsg1+llvm-0ubuntu2) bionic; urgency=medium * Merge from Debian experimental, remaining changes: - Use the bundled llvm to avoid having to do llvm updates in order to deliver rust updates - update debian/config.toml.in - update debian/control - update debian/copyright - update debian/rules - Fix some test failures that occur because we build rust without an rpath - add debian/patches/make-tests-work-without-rpath.patch - update debian/patches/series - Don't run dynamic_lib::tests::test_loading_cosine on Aarch64 whilst if fails there - add debian/patches/u-ignoretest-arm64_02.patch - update debian/patches/series - Make test failures fatal, except on ppc64el and s390x, as there's nothing in the archive yet that requires a working rust on these architectures - update debian/rules - Disable debuginfo when building on 32-bit architectures, as it seems to be the only way we can get a successful build - update debian/config.toml.in - update debian/rules rustc (1.22.1+dfsg1-1~exp1) experimental; urgency=medium * New upstream release. * Fix symlink target. (Closes: #877276) rustc (1.21.0+dfsg1-3) unstable; urgency=medium * Add/fix detection for sparc64, thanks to John Paul Adrian Glaubitz. * Workaround FTBFS when building docs. (Closes: #880262) rustc (1.21.0+dfsg1+llvm-0ubuntu5) bionic; urgency=medium * Merge from Debian unstable, remaining changes: - Don't run dynamic_lib::tests::test_loading_cosine on Aarch64 whilst if fails there - add debian/patches/u-ignoretest-arm64_02.patch - update debian/patches/series - Make test failures fatal, except on ppc64el and s390x, as there's nothing in the archive yet that requires a working rust on these architectures - update debian/rules - Use the bundled llvm, as target_feature depends on a rust-specific llvm API. This also means we have a different tarball to reinclude the llvm parts, although we could probably do this with a supplementary tarball in future - update debian/control - update debian/rules - update debian/config.toml.in - Fix some test failures that occur because we build rust without an rpath - add debian/patches/make-tests-work-without-rpath.patch - update debian/patches/series - Set build.full-bootstrap to true to work-around a runtime link failure when we're bootstrapping from the same rust version - update debian/config.toml.in rustc (1.21.0+dfsg1-2) unstable; urgency=medium * Upload to unstable. * Fix bootstrapping using 1.21.0, which is more strict about redundant &mut previously used in u-output-failed-commands.patch. * Only allow up to 5 test failures. rustc (1.21.0+dfsg1-1) experimental; urgency=medium * New upstream release. * Fix the "install" target for cross-compilations; cross-compiling with sbuild --host=$foreign-arch should work again. * Update to latest Standards-Version; changes: - Priority changed to optional from extra. rustc (1.20.0+dfsg1-3) unstable; urgency=medium * Disable jemalloc to fix FTBFS with 1.21 on armhf. rustc (1.20.0+dfsg1-2) unstable; urgency=medium * Update changelog entry for 1.20.0+dfsg1-1 to reflect that it was actually and accidentally uploaded to unstable. No harm, no foul. * We are no longer failing the build when tests fail, see NEWS or README.Debian for details. * Bump LLVM requirement to fix some failing tests. rustc (1.20.0+dfsg1-1) unstable; urgency=medium * New upstream release. rustc (1.19.0+dfsg3-4) unstable; urgency=medium * Bump LLVM requirement to pull in a fix for a FTBFS on ppc64el. rustc (1.20.0+dfsg0-0ubuntu1) artful; urgency=medium * Update to 1.20.0 - update debian/control - libstd-rust-1.19.lintian-overrides => libstd-rust-1.20.lintian-overrides * update debian/copyright * Drop patches that are fixed upstream - remove debian/patches/u-only-run-linkchecker-if-docs.patch - remove debian/patches/u-skip-main-thread-stack-guard.patch - remove debian/patches/u-fix-backtrace-build.patch - remove debian/patches/u-ignoretest-arm64_02.patch - update debian/patches/series * Refresh patches - update debian/patches/u-ignoretest-ppc64el_03.patch - update debian/patches/u-output-failed-commands.patch - update debian/patches/u-allow-stable-features.patch - update debian/patches/gcc-4.8-aarch64-ice.diff - update debian/patches/d-disable-cargo-vendor.patch - update debian/patches/d-dont-download-stage0.patch - update debian/patches/d-cross-compile-install.patch - update debian/patches/d-no-web-dependencies-in-doc.patch - update debian/patches/u-fix-unaligned-access-in-lto.patch * Don't clean any Cargo.toml.orig files from the source tree - update debian/rules * Backport change from Debian git to fix prune-unused-deps * Bump llvm build-dep to 1:4.0.1-6ubuntu0.17.10.3~ to pick up fixes for llvm PR31142, PR32488 and PR32902 - update debian/control * Don't re-run the rustc_llvm build script if LLVM_CONFIG changes, as this causes a failure when running the tests. This is a workaround - it needs further investigation - add debian/patches/dont-rerun-rustc_llvm-build-script-on-LLVM_CONFIG-change.patch - update debian/patches/series * Don't run dynamic_lib::tests::test_loading_cosine on Aarch64 whilst if fails there - add debian/patches/u-ignoretest-arm64_02.patch - update debian/patches/series * Ignore test failures on ppc64el. There's nothing in the archive yet that requires a working rust on this architecture - update debian/rules rustc (1.19.0+dfsg3-3ubuntu1) artful; urgency=medium * Merge from Debian, remaining changes: - Backport patch to fix unaligned access in LTO on armhf + add debian/patches/u-fix-unaligned-access-in-lto.patch + update debian/patches/series rustc (1.19.0+dfsg3-3) unstable; urgency=medium * Fix a trailing whitespace for tidy. rustc (1.19.0+dfsg3-2) unstable; urgency=medium * Upload to unstable. * Add a patch to print extra information when tests fail. rustc (1.19.0+dfsg3-1) experimental; urgency=medium * New upstream release. * Upgrade to LLVM 4.0. (Closes: #873421) * rust-src: install Debian patches as well rustc (1.18.0+dfsg1-4ubuntu1) artful; urgency=medium * Backport patch to fix unaligned access in LTO on armhf - add debian/patches/fix-unaligned-access-in-lto.patch - update debian/patches/series rustc (1.18.0+dfsg1-4) unstable; urgency=medium * Support gperf 3.1. (Closes: #869610) rustc (1.18.0+dfsg1-3) unstable; urgency=medium * Upload to unstable. * Disable failing run-make test on armhf. rustc (1.18.0+dfsg1-2) experimental; urgency=medium * Update to latest Standards-Version; no changes required. * Change rustc to Multi-Arch: allowed and update Build-Depends with :native annotations. Multi-Arch: foreign is typically for arch-indep packages that might need to satisfy dependency chains of different architectures. Also update instructions on cross-compiling to match this newer situation. * Build debugging symbols for non-libstd parts of rustc. rustc (1.18.0+dfsg1-1) experimental; urgency=medium * New upstream release. rustc (1.17.0+dfsg2-8) unstable; urgency=medium * Workaround for linux #865549, fix FTBFS on ppc64el. rustc (1.17.0+dfsg2-7) unstable; urgency=medium * Show exception traceback in bootstrap.py to examine ppc64el build failure. rustc (1.17.0+dfsg2-6) unstable; urgency=medium * Upload to unstable. rustc (1.17.0+dfsg2-5) experimental; urgency=medium * More work-arounds for armhf test failures. rustc (1.17.0+dfsg2-4) experimental; urgency=medium * Fix arch-indep and arch-dep tests. * Bump the LLVM requirement to fix FTBFS on armhf. rustc (1.17.0+dfsg2-3) experimental; urgency=medium * Try to force the real gdb package. Some resolvers like aspcud will select gdb-minimal under some circumstances, but this causes the debuginfo-gdb tests to break. rustc (1.17.0+dfsg2-2) experimental; urgency=medium * Support and document cross-compiling of rustc itself. * Document cross-compiling other rust packages such as cargo. * Work around upstream #39015 by disabling those tests rather than by disabling optimisation, which causes FTBFS on 1.17.0 ppc64el. See upstream #42476 and #42532 for details. rustc (1.17.0+dfsg2-1) experimental; urgency=medium [ Sylvestre Ledru ] * New upstream release [ Ximin Luo ] * Adapt packaging for rustbuild, the new upstream cargo-based build system. [ Matthijs van Otterdijk ] * Add a binary package, rust-src. (Closes: #846177) * Link to local Debian web resources in the docs, instead of remote ones. rustc (1.16.0+dfsg1-1) unstable; urgency=medium * Upload to unstable so we have something to build 1.17 with. * Update u-ignoretest-powerpc.patch for 1.16. rustc (1.16.0+dfsg1-1~exp2) experimental; urgency=medium * Don't ignore test failures on Debian unstable. * Re-fix ignoring armhf test, accidentally reverted in previous version. * Try to fix buildd failure by swapping B-D alternatives. rustc (1.16.0+dfsg1-1~exp1) experimental; urgency=medium * New upstream release * u-ignoretest-jemalloc.patch removed (applied upstream) [ Matthias Klose ] * Bootstrap using the rustc version in the archive, on all architectures. * Work around a GCC 4.8 ICE on AArch64. * Use alternative build dependencies on cmake3 and binutils-2.26 for builds on 14.04 LTS (trusty). * debian/make_orig*dl_tarball.sh: Include all Ubuntu architectures. * debian/rules: Ignore test results for now. rustc (1.15.1+dfsg1-1) unstable; urgency=medium * Upload to unstable so we have something to build 1.16 with. * Try to fix ignoring atomic-lock-free tests on armhf. rustc (1.15.1+dfsg1-1~exp3) experimental; urgency=medium * Ignore atomic-lock-free tests on armhf. * Update ignoretest-armhf_03.patch for newer 1.15.1 behaviour. * Tidy up some other patches to do with ignoring tests. rustc (1.15.1+dfsg1-1~exp2) experimental; urgency=medium * Update armhf ignoretest patch. * Bootstrap armhf. (Closes: #809316, #834003) * Bootstrap ppc4el. (Closes: #839643) * Fix rust-lldb symlink. (Closes: #850639) rustc (1.15.1+dfsg1-1~exp1) experimental; urgency=medium * New upstream release (won't probably be in stretch). see the 1.4 git branch for the follow up for stable * Call to the test renamed from check-notidy => check * d/p/u-destdir-support.diff: Apply upstream patch to support destdir in the make install (for rustbuild, in later versions) * Overrides the 'binary-or-shlib-defines-rpath' lintian warnings. We need them for now * Refresh of the patches [ Sven Joachim ] * Drop Pre-Depends on multiarch-support. (Closes: #856109) [ Erwan Prioul ] * Fix test and build failures for ppc64el. (Closes: #839643) [ Ximin Luo ] * Disable rustbuild for the time being (as it was in 1.14) and instead bootstrap two new arches, armhf and ppc64el. * Switch back to debhelper 9 to make backporting easier. * Switch Build-Depends on binutils-multiarch back to binutils, the former is no longer needed by the upstream tests. [ Matthias Klose ] * Compatibility fixes and improvements to help work better on Ubuntu. rustc (1.14.0+dfsg1-3) unstable; urgency=medium * Fix mips64 Makefile patches. * Don't run arch-dep tests in a arch-indep build. rustc (1.14.0+dfsg1-2) unstable; urgency=medium * Update README.Debian, the old one was way out of date. * Detect mips CPUs in ./configure and fill in mips Makefile rules. * Work around jemalloc-related problems in the upstream bootstrapping binaries for arm64, ppc64el, s390x. * Disable jemalloc on s390x - upstream already disable it for some other arches. * Disable jemalloc tests for arches where jemalloc is disabled. * We still expect the following failures: * arm64 should be fixed (i.e. no failures) compared to the previous upload. * armhf will FTBFS due to 'Illegal instruction' and this can only be fixed with the next stable rustc release. * mips mipsel mips64el ppc64 ppc64el s390x will FTBFS due to yet other test failures beyond the ones I fixed above; this upload is only to save me manual work in producing nice reports that exhibit these failures. rustc (1.14.0+dfsg1-1) unstable; urgency=medium [ Sylvestre Ledru ] * New upstream release * Update debian/watch [ Ximin Luo ] * Try to bootstrap armhf ppc64 ppc64el s390x mips mipsel mips64el. (Closes: #809316, #834003, #839643) * Make rust-gdb and rust-lldb arch:all packages. * Switch to debhelper 10. rustc (1.13.0+dfsg1-2) unstable; urgency=high * Skip macro-stepping test on arm64, until rust-lang/rust#37225 is resolved. rustc (1.13.0+dfsg1-1) unstable; urgency=medium [ Sylvestre Ledru ] * New upstream release. [ Ximin Luo ] * Use Debian system jquery instead of upstream's embedded copy. rustc (1.12.1+dfsg1-1) unstable; urgency=medium [ Sylvestre Ledru ] * New (minor) upstream release * Missing dependency from rust-lldb to python-lldb-3.8 (Closes: #841833) * Switch to llvm 3.9. (Closes: #841834) [ Ximin Luo ] * Dynamically apply rust-boot-1.12.1-from-1.12.0.diff. This allows us to bootstrap from either 1.11.0 or 1.12.0. * Bump LLVM Build-Depends version to get the backported patches for LLVM #30402 and #29163. * Install debugger_pretty_printers_common to rust-gdb and rust-lldb. (Closes: #841835) rustc (1.12.0+dfsg1-2) unstable; urgency=medium * Ignore test run-make/no-duplicate-libs. Fails on i386 * Ignore test run-pass-valgrind/down-with-thread-dtors.rs . Fails on arm64 * I am not switching to llvm 3.9 now because a test freezes. The plan is to silent the warning breaking the build and upload 1.12.1 after rustc (1.12.0+dfsg1-1) unstable; urgency=medium * new upstream release - Rebase of the patches and removal of deprecated patches rustc (1.11.0+dfsg1-3) unstable; urgency=medium * Fix separate build-arch and build-indep builds. rustc (1.11.0+dfsg1-2) unstable; urgency=medium * Fix rebuilding against the current version, by backporting a patch I wrote that was already applied upstream. Should fix the FTBFS that was observed by tests.reproducible-builds.org. * Ignore a failing stdcall test on arm64; should fix the FTBFS there. * Backport a doctest fix I wrote, already applied upstream. rustc (1.11.0+dfsg1-1) unstable; urgency=medium * New upstream release * Add versioned binutils dependency. (Closes: #819475, #823540) rustc (1.10.0+dfsg1-3) unstable; urgency=medium * Rebuild with LLVM 3.8, same as what upstream are using * Dynamically link against LLVM. (Closes: #832565) rustc (1.10.0+dfsg1-2) unstable; urgency=medium * Tentatively support ARM architectures * Include upstream arm64,armel,armhf stage0 compilers (i.e. 1.9.0 stable) in a orig-dl tarball, like how we previously did for amd64,i386. rustc (1.10.0+dfsg1-1) unstable; urgency=medium * New upstream release * Add myself to uploaders * Update our build process to bootstrap from the previous Debian rustc stable version by default. See README.Debian for other options. * Update to latest Standards-Version; no changes required. rustc (1.9.0+dfsg1-1) unstable; urgency=medium * New upstream release (Closes: #825752) rustc (1.8.0+dfsg1-1) unstable; urgency=medium * New upstream release [ Ximin Luo ] * Fix using XZ for the orig tarball: needs explicit --repack in debian/watch * Drop wno-error patch; applied upstream. rustc (1.7.0+dfsg1-1) unstable; urgency=medium * New upstream release rustc (1.6.0+dfsg1-3) unstable; urgency=medium * Apply upstream fix to silent a valgrind issue in the test suite (Closes: ##812825) * Add gcc & libc-dev as dependency of rustc to make sure it works out of the box [ Ximin Luo ] * Work around rust bug rust-lang/rust#31529 * Enable optional tests, and add verbosity/backtraces to tests * Use XZ instead of GZ compression (will apply to the next new upload) rustc (1.6.0+dfsg1-2) unstable; urgency=medium * mk/rt.mk: Modify upstream code to append -Wno-error rather than trying to remove the string "-Werror". (Closes: #812448) * Disable new gcc-6 "-Wmisleading-indentation" warning, which triggers (incorrectly) on src/rt/miniz.c. (Closes: #811573) * Guard arch-dependent dh_install commands appropriately, fixing arch-indep-only builds. (Closes: #809124) rustc (1.6.0+dfsg1-1) unstable; urgency=medium * new upstream release [ Ximin Luo ] * Use secure links for Vcs-* fields. rustc (1.5.0+dfsg1-1) unstable; urgency=medium * New upstream release - We believe that we should let rust transit to testing (Closes: #786836) * Move away from hash to the same rust naming schema rustc (1.4.0+dfsg1-1) unstable; urgency=medium * New upstream release 198068b3 => 1bf6e69c * Update the download url in debian/watch rustc (1.3.0+dfsg1-1) unstable; urgency=medium * New upstream release 62abc69f => 198068b3 * jquery updated from 2.1.0 to 2.1.4 [ Ximin Luo ] * Use LLVM 3.7 as upstream does, now that it's released. (Closes: #797626) * Fix debian/copyright syntax mistakes. * Don't Replace/Break previous versions of libstd-rust-* * Check that the libstd-rust-* name in d/control matches upstream. * Several other minor build tweaks. rustc (1.2.0+dfsg1-1) unstable; urgency=medium * New upstream release libstd-rust-7d23ff90 => libstd-rust-62abc69f * Add llvm-3.6-tools to the build dep as it is now needed for tests * Fix the Vcs-Browser value rustc (1.1.0+dfsg1-3) unstable; urgency=medium * rust-{gdb,lldb} now Replaces pre-split rustc package. Closes: #793433. * Several minor lintian cleanups. rustc (1.1.0+dfsg1-2) unstable; urgency=medium [ Angus Lees ] * Replace remote Rust logo with local file in HTML docs. * Symlink rust-{gdb,lldb}.1 to {gdb,lldb}.1 manpages. Note that gdb.1 requires the gdb-doc package, and that lldb.1 doesn't exist yet (see #792908). * Restore "Architecture: amd64 i386" filter, mistakenly removed in previous version. Unfortunately the toolchain bootstrap isn't ready to support all Debian archs yet. Closes: #793147. rustc (1.1.0+dfsg1-1) unstable; urgency=low [ Angus Lees ] * Set SONAME when building dylibs * Split out libstd-rust, libstd-rust-dev, rust-gdb, rust-lldb from rustc - libs are now installed into multiarch-friendly locations - rpath is no longer required to use dylibs (but talk to Debian Rust maintainers before building a package that depends on the dylibs) * Install /usr/share/rustc/architecture.mk, which declares Rust arch triples for Debian archs and is intended to help future Rust packaging efforts. Warning: it may not be complete/accurate yet. * New upstream release (1.1) rustc (1.0.0+dfsg1-1) unstable; urgency=medium [ Angus Lees ] * New upstream release (1.0!) [ Sylvestre Ledru ] * Fix the watch file * Update of the repack to remove llvm sources rustc (1.0.0~beta.4-1~exp1) experimental; urgency=low [ Angus Lees ] * New upstream release (beta 3) - Drop manpage patch - now included upstream * Replace duplicated compile-time dylibs with symlinks to run-time libs (reduces installed size by ~68MB) [ Sylvestre Ledru ] * New upstream release (beta 4) * Replace two more occurrences of jquery by the package * Repack upstream to remove an LLVM file with a non-DFSG license rustc (1.0.0~alpha.2-1~exp1) experimental; urgency=low [ Angus Lees ] * Patch upstream manpages to address minor troff issues * Make 'debian/rules clean' also clean LLVM source * Rename primary 'rust' binary package to 'rustc' * Fix potential FTBFS: rust-doc requires texlive-fonts-recommended (for pzdr.tfm) * Build against system LLVM [ Sylvestre Ledru ] * New testing release * Renaming of the source package * Set a minimal version for dpkg-dev and debhelper (for profiles) * For now, disable build profiles as they are not supported in Debian * Introduce some changes by Angus Lees - Introduction of build stages - Disable the parallel execution of tests - Improving of the parallel syntax - Use override_dh_auto_build-arch - Use override_dh_auto_build-indep - Better declarations of the doc - Update of the description - Watch file updated (with key check) [ Luca Bruno ] * rules: respect 'nocheck' DEB_BUILD_OPTIONS rust (1.0.0~alpha-0~exp1) experimental; urgency=low * Initial package (Closes: #689207) Work done by Luca Bruno, Jordan Justen and Sylvestre Ledru
I built rust on a 96-core ARMv8 machine, and "make -j check" failed in one test:
I expected to see everything pass.
A second time through, I got this, with four failures:
Meta
The text was updated successfully, but these errors were encountered: