aboutsummaryrefslogtreecommitdiff
path: root/ffi/long_mode
diff options
context:
space:
mode:
authoriximeow <me@iximeow.net>2021-03-13 14:19:55 -0800
committeriximeow <me@iximeow.net>2021-03-13 14:54:47 -0800
commit93c53657c2289e979672ee6c4612af7e9eac109c (patch)
treea0acdc143595f64a796827bc849a122dd49cc4e3 /ffi/long_mode
parent6232e8b1daf7067cb2e8065687530d5f88ecb46d (diff)
split ffi crate to support distinct 16, 32, and 64-bit builds
initial work to optionally discard any instruction printing support when using `-Z build-std` to fully remove .eh_frame, a stripped long_mode_no_fmt .so is 61kb!
Diffstat (limited to 'ffi/long_mode')
-rw-r--r--ffi/long_mode/Cargo.toml19
-rw-r--r--ffi/long_mode/src/lib.rs11
2 files changed, 30 insertions, 0 deletions
diff --git a/ffi/long_mode/Cargo.toml b/ffi/long_mode/Cargo.toml
new file mode 100644
index 0000000..c4b9282
--- /dev/null
+++ b/ffi/long_mode/Cargo.toml
@@ -0,0 +1,19 @@
+[package]
+name = "yaxpeax_x86_ffi_long_mode"
+version = "0.0.2"
+authors = ["iximeow <me@iximeow.net>"]
+edition = "2018"
+
+[dependencies]
+yaxpeax-x86 = { path = "../../", default-features = false }
+yaxpeax-arch = { version = "0.0.4", default-features = false }
+
+[lib]
+name = "yaxpeax_x86_ffi_long_mode"
+path = "src/lib.rs"
+crate-type = ["staticlib", "cdylib"]
+
+[features]
+default = ["fmt"]
+
+fmt = ["yaxpeax-x86/fmt"]
diff --git a/ffi/long_mode/src/lib.rs b/ffi/long_mode/src/lib.rs
new file mode 100644
index 0000000..368f8a9
--- /dev/null
+++ b/ffi/long_mode/src/lib.rs
@@ -0,0 +1,11 @@
+#![no_std]
+
+#[panic_handler]
+fn panic(_info: &core::panic::PanicInfo) -> ! {
+ loop {}
+}
+
+#[path = "../../src/long_mode.rs"]
+mod long_mode;
+
+pub use long_mode::*;