commit 2312d04cd8109cebf5acf8f98a969169eda43db9
parent 01070bea7966a232f59a9af0d862df4b158f4ea5
Author: Abhishek Nimalan <abhisheknimalan@gmail.com>
Date: Wed, 10 Dec 2025 22:31:24 +0000
Bug 2002598 - Include minimal LLVM toolchain in Simpleperf repack. r=kshampur,perftest-reviewers
Add the LLVM utilities Simpleperf requires (objdump, strip, symbolizer,
readelf) to the Simpleperf repack for CI. These tools are expected by
Simpleperf's simpleperf_utils.py. Simpleperf's app_profiler.py
controller in particular will fail to generate binary caches needed for
symbolication without llvm-readelf. Since CI cannot fetch the full
Android NDK in bitbar, bundling these tools is the simplest way to keep
profiling + symbolication working until NDK fetching is fixed.
Differential Revision: https://phabricator.services.mozilla.com/D274160
Diffstat:
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/taskcluster/scripts/misc/repack-android-simpleperf-linux.sh b/taskcluster/scripts/misc/repack-android-simpleperf-linux.sh
@@ -11,6 +11,13 @@ cd $GECKO_PATH
./mach python python/mozboot/mozboot/android.py --ndk-only --no-interactive
mv $HOME/.mozbuild/android-ndk-*/simpleperf $HOME/.mozbuild/android-simpleperf
-tar cavf $UPLOAD_DIR/android-simpleperf.tar.zst -C /builds/worker/.mozbuild android-simpleperf
+
+# Add simpleperf LLVM toolchain dependencies (EXPECTED_TOOLS from simpleperf_utils.py) to repack
+# These dependencies must be placed in a toolchains/ top-level folder so app_profiler.py can find them
+cd $HOME/.mozbuild/android-ndk-*/
+cp -L --parents toolchains/llvm/prebuilt/*/bin/{llvm-readelf,llvm-objdump,llvm-strip,llvm-symbolizer} $HOME/.mozbuild/
+cd -
+
+tar cavf $UPLOAD_DIR/android-simpleperf.tar.zst -C /builds/worker/.mozbuild android-simpleperf toolchains
ls -al $UPLOAD_DIR