()
| 23 | |
| 24 | |
| 25 | def find_addr2line() -> str | None: |
| 26 | env_path = os.environ.get("ADDR2LINE") |
| 27 | if env_path and os.path.exists(env_path): |
| 28 | return env_path |
| 29 | for candidate in ( |
| 30 | "xtensa-esp32-elf-addr2line", |
| 31 | "xtensa-esp32s3-elf-addr2line", |
| 32 | "addr2line", |
| 33 | ): |
| 34 | found = shutil.which(candidate) |
| 35 | if found: |
| 36 | return found |
| 37 | return None |
| 38 | |
| 39 | |
| 40 | def download_elf(url: str, dest: Path) -> None: |
no test coverage detected