Keep symbol names in bundled linux binaries (#13006)

This ensures that linux panics still contain symbol names. It also
allows us to profile Zed on linux with `perf` and get symbol names.

Release Notes:

- N/A
This commit is contained in:
Max Brunsfeld 2024-06-13 12:40:52 -07:00 committed by GitHub
parent ce51c264a6
commit af8e7af265
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 11 additions and 2 deletions

View File

@ -73,6 +73,7 @@ actions!(
ShowAll,
ToggleFullScreen,
Zoom,
TestPanic,
]
);
@ -84,6 +85,10 @@ pub fn init(cx: &mut AppContext) {
#[cfg(target_os = "macos")]
cx.on_action(|_: &ShowAll, cx| cx.unhide_other_apps());
cx.on_action(quit);
if ReleaseChannel::global(cx) == ReleaseChannel::Dev {
cx.on_action(test_panic);
}
}
pub fn build_window_options(display_uuid: Option<Uuid>, cx: &mut AppContext) -> WindowOptions {
@ -484,6 +489,10 @@ fn about(_: &mut Workspace, _: &About, cx: &mut gpui::ViewContext<Workspace>) {
.detach();
}
fn test_panic(_: &TestPanic, _: &mut AppContext) {
panic!("Ran the TestPanic action")
}
fn quit(_: &Quit, cx: &mut AppContext) {
let should_confirm = WorkspaceSettings::get_global(cx).confirm_quit;
cx.spawn(|mut cx| async move {

View File

@ -43,8 +43,8 @@ cargo build --release --target "${target_triple}" --package zed --package cli
# Strip the binary of all debug symbols
# Later, we probably want to do something like this: https://github.com/GabrielMajeri/separate-symbols
strip "target/${target_triple}/release/zed"
strip "target/${target_triple}/release/cli"
strip --strip-debug "target/${target_triple}/release/zed"
strip --strip-debug "target/${target_triple}/release/cli"
suffix=""
if [ "$channel" != "stable" ]; then