Description
This is mostly directed at @chriswailes, @maurer, and @mgeisler because you are the target maintainers for our Android targets.
I've been looking through our debuginfo tests, and I've found that a few of them were disabled years ago never revisited. Some of those tests are disabled only on Android. Based on the history linked from #10381, the last attempt to re-enable some of the mass-ignored android debuginfo tests was in 2015. So I'm not expecting any of you to really know the history here.
But currently (and I do not know for how long) we do not run any debuginfo tests on Android: https://github.com/rust-lang-ci/rust/actions/runs/10409799292/job/28830241725#step:25:23109
It seems like this is because compiletest
looks for a gdb
:
rust/src/tools/compiletest/src/lib.rs
Lines 1038 to 1085 in 0f442e2
compiletest
doesn't find one, we skip the entire suite.
There is a fair amount of code in compiletest for handling debuginfo tests on Android. Since none of any of the code associated with running debuginfo tests on Android is currently being exercised, I suspect all of that code is just a time bomb for whoever eventually decides that we need those tests to be enabled.
In #128913 I am removing a number of ignore-test
annotations from the test suite, and replacing them with more specific ignores where required. Because the entire suite is ignored for Android, I cannot do this.
So I have a few questions:
- Is anyone running the debuginfo test suite on Android?
- Would anyone object if I blindly remove all the other
ignore-android
annotations from the test suite? - Is anyone planning on working to re-enable the Android debuginfo tests? I've poked around, and it uses a bunch of Android SDK/emulator arcana that I do not understand. For example, I tried installing
gdb-multiarch
in the image, which results in the test suite managing to executearm-linux-androideabi-gdb
(which I cannot find in the container) but if I addset architecture
to the gdb commands, the output is just i686/x86_64. - In my searching around for explanations about how to debug on Android, I found some mentions that one should be using lldb instead. Is that right?