feat: copy frameworks to Frameworks folder, detect linkers, custom target dirs (#4174)

* feat: copy frameworks to Frameworks folder

* add dylib linking to patching

* remove logging

* rename __aslr_offset

* fix android/linux

* support linker flavor

* support custom target dirs

* custom cargo target dir support

* whoops ios

* dlsym doesn't exist on windows

* look for the right main symbol per platform

* distinction between mains

* export main on windows

* enbable rlib caching

* add dx hash

* adjust linking warnings

* update tui with hotreload state

* implement symbol flags

* add flags

* only run ranlib on darwin

* enable lld

* paths

* add harness test for tls

* wip: revert launch mobile

* wip

* fix fullstack mobile

* fix a few bugs
- long paths?
- reverting back to original

* pass-thru fuse-ld args

* fix nan in render, fix empty archives

* consider existing dep files if archive exists

* fmt

* drop msrv
This commit is contained in:
Jonathan Kelley authored and GitHub committed 2025-05-24 22:41:30 +01:00
1 parent 751f1920c3
commit 0982c1ff8b
25 files changed
+1044 -315

No files matched your search

@@ -0,0 +1,33 @@
use std::{cell::Cell, thread, time::Duration};
use cross_tls_crate::get_bar;
use cross_tls_crate_dylib::get_baz;
fn main() {
dioxus_devtools::connect_subsecond();
loop {
dioxus_devtools::subsecond::call(|| {
use cross_tls_crate::BAR;
use cross_tls_crate_dylib::BAZ;
thread_local! {
pub static FOO: Cell<f32> = const { Cell::new(2.0) };
}
println!("Hello 123s123123s: {}", FOO.get());
get_bar().with(|f| println!("Bar: {:?}", f.borrow()));
thread::sleep(Duration::from_secs(1));
FOO.set(2.0);
get_bar().with(|f| f.borrow_mut().as_mut().unwrap().value = 3.0);
get_baz().with(|f| f.borrow_mut().as_mut().unwrap().value = 4.0);
BAR.with_borrow(|f| {
println!("Bar: {:?}", f);
});
BAZ.with_borrow(|f| {
println!("Baz: {:?}", f);
});
});
}
}