emproof-com / nyxstone

Nyxstone: assembly / disassembly library based on LLVM, implemented in C++ with Rust and Python bindings, maintained by emproof.com
https://www.emproof.com
MIT License
230 stars 6 forks source link

Support dynamic linking in rust and python #55

Open stuxnot opened 1 week ago

stuxnot commented 1 week ago

Uses more of llvm-sys build.rs to support dynamic linking when static linking is not supported. Additionally, adds the NYXSTONE_LINK_FFI flag, which tells nyxstone that libffi should be linked. This is necessary as LLVM sometimes might be linked against libffi but not report this fact via llvm-config.

Furthermore adds changes to the python setup.py to support dynamic linking in python, when static linking is not supported.