Low-level, unsafe Rust bindings for the Capstone disassembly library.
make.sh script)use_system_capstone feature)| Platform | sys capstone | gmake | cmake | cc |
| -------------------------- | ------------- | ----- | ----- | ----- |
| x86_64-apple-darwin | X | X | X | X |
| i686-apple-darwin | X* | | X* | X* |
| x86_64-pc-windows-msvc | | | | X |
| x86_64-pc-windows-gnu | | | | X |
| i686-pc-windows-msvc | | | | X* |
| i686-pc-windows-gnu | | | | X* |
| x86_64-unknown-linux-gnu | X | X | X | X |
| i686-unknown-linux-gnu | X* | | X* | X* |
| x86_64-unknown-freebsd | X | X | | X |
| Symbol | Meaning |
| ------ | ------- |
| X | build succeeds, all tests pass |
| X* | build succeeds, some bindgen tests fail (issue #18) |
| | build method is not supported |
capstone-sys has different features that can be specified in Cargo.toml.
These features affect how capstone-sys will use/build the bundled Capstone C library:
gmake).
pkg install gmakeuse_system_capstone: use the system Capstone instead of the bundled copy of the Capstone library.
capstone-sys.
CAPSTONE_REVISION variable in scripts/update_capstone.sh to determine the exact Git commit of Capstone.build_capstone_cmake: build the bundled Capstone with cmake (requires CMake to be installed).build_capstone_cc (default on Windows platforms): build the bundled Capstone with the cc Rust crate.use_bindgen: instead of using the pre-generated Capstone bindings, dynamically generate bindings with bindgen.The following platforms have automated testing:
x86_64-unknown-linux-gnu: Travis CI