mirror of
https://github.com/termux/termux-packages.git
synced 2025-11-01 17:18:53 +00:00
- Fixes https://github.com/termux/termux-packages/issues/26799 There is a new executable file, "`codelldb-launch`". I don't really understand exactly what it does yet, but codelldb was printing an error "unable to find codelldb-launch!" until I moved it out of the `.vsix` file and hardcoded the paths to it at `$TERMUX_PREFIX/bin`, just like I did for the `codelldb` executable, which still exists. After doing that, this bump is working on my device. I have also updated the comments about 32-bit exclusion to be accurate to the current situation. See here for more information about the problems with `codelldb` on 32-bit Android: https://github.com/termux/termux-packages/pull/25779#issuecomment-3213373449
69 lines
2.6 KiB
Diff
69 lines
2.6 KiB
Diff
This entire structure is used to detect whether the LLDB being used
|
|
has SBInstruction::GetControlFlowKind(), which LLDB versions 16 and newer have.
|
|
Termux has had LLDB version 16 or newer since 2023.
|
|
|
|
|
|
--- a/src/lldb-stub/build.rs
|
|
+++ b/src/lldb-stub/build.rs
|
|
@@ -32,21 +32,6 @@ fn main() -> Result<(), Error> {
|
|
|
|
let mut wl_config = weaklink_build::Config::new("liblldb");
|
|
|
|
- // Generate optional api groups via SBAPI.toml
|
|
- let api_groups = get_api_groups("SBAPI.toml")?;
|
|
- for (version, imports) in api_groups {
|
|
- for imp in &imports {
|
|
- if !common_syms.remove(&imp.name) {
|
|
- println!(
|
|
- "cargo:warning=Symbol \"{}\" is declared in {version}, but isn't used by codelldb.",
|
|
- imp.name
|
|
- );
|
|
- }
|
|
- }
|
|
- let symbols: Vec<_> = imports.iter().map(|e| SymbolStub::new(&e.name)).collect();
|
|
- wl_config.add_symbol_group(version.as_str(), symbols)?;
|
|
- }
|
|
-
|
|
// Emit the rest of common symbols as base group.
|
|
let symbols: Vec<_> = exports
|
|
.into_iter()
|
|
--- a/src/codelldb/src/debug_session.rs
|
|
+++ b/src/codelldb/src/debug_session.rs
|
|
@@ -614,7 +614,7 @@ impl DebugSession {
|
|
supports_read_memory_request: Some(true),
|
|
supports_restart_request: Some(true),
|
|
supports_set_variable: Some(true),
|
|
- supports_step_in_targets_request: Some(lldb_stub::v16.resolve().is_ok()),
|
|
+ supports_step_in_targets_request: Some(true),
|
|
supports_stepping_granularity: Some(true),
|
|
supports_write_memory_request: Some(true),
|
|
..Default::default()
|
|
--- a/src/codelldb/src/debug_session/step_in.rs
|
|
+++ b/src/codelldb/src/debug_session/step_in.rs
|
|
@@ -32,7 +32,6 @@ impl super::DebugSession {
|
|
let Some(cu) = frame.compile_uint() else {
|
|
bail!("No compile unit for frame.");
|
|
};
|
|
- let _token = lldb_stub::v16.resolve()?;
|
|
|
|
// This is the typical case we aim to handle:
|
|
// ```
|
|
--- a/src/lldb/src/lib.rs
|
|
+++ b/src/lldb/src/lib.rs
|
|
@@ -26,5 +26,4 @@ fn test_init() {
|
|
use std::path::Path;
|
|
lldb_stub::liblldb.load_from(Path::new(env!("LLDB_DYLIB"))).unwrap();
|
|
lldb_stub::base.resolve().unwrap().mark_permanent();
|
|
- lldb_stub::v16.resolve().unwrap().mark_permanent();
|
|
}
|
|
--- a/src/codelldb/src/lib.rs
|
|
+++ b/src/codelldb/src/lib.rs
|
|
@@ -179,7 +179,6 @@ fn test_init() {
|
|
use std::path::Path;
|
|
lldb_stub::liblldb.load_from(Path::new(env!("LLDB_DYLIB"))).unwrap();
|
|
lldb_stub::base.resolve().unwrap().mark_permanent();
|
|
- lldb_stub::v16.resolve().unwrap().mark_permanent();
|
|
}
|
|
|
|
#[cfg(test)]
|