blob: 9e19c12d0da5a55dc4a9b6e071f8a5471fd5718e [file] [log] [blame]
#!/bin/sh
# Capstone disassembler engine (www.capstone-engine.org)
# Build Capstone libs for specified architecture, or all if none is specified (libcapstone.so & libcapstone.a) on *nix with CMake & make
# By Nguyen Anh Quynh, Jorn Vernee, 2019
CMAKE_FLAGS="-DCMAKE_BUILD_TYPE=Release"
# Uncomment below line to compile in Diet mode
# CMAKE_FLAGS+=" -DCAPSTONE_BUILD_DIET=ON"
case $1 in
ARM)
ARCH=ARM
;;
ARM64)
ARCH=AARCH64
;;
AARCH64)
ARCH=AARCH64
;;
M68K)
ARCH=M68K
;;
MIPS)
ARCH=MIPS
;;
PowerPC)
ARCH=PPC
;;
Sparc)
ARCH=SPARC
;;
SystemZ)
ARCH=SYSZ
;;
XCore)
ARCH=XCORE
;;
x86)
ARCH=X86
;;
TMS320C64x)
ARCH=TMS320C64X
;;
M680x)
ARCH=M680X
;;
EVM)
ARCH=EVM
;;
MOS65XX)
ARCH=MOS65XX
;;
WASM)
ARCH=WASM
;;
BPF)
ARCH=BPF
;;
RISCV)
ARCH=RISCV
;;
HPPA)
ARCH=HPPA
;;
*)
;;
esac
if [ -z "${ARCH}" ]; then
CMAKE_FLAGS="${CMAKE_FLAGS} -DCAPSTONE_ARCHITECTURE_DEFAULT=ON"
else
CMAKE_FLAGS="${CMAKE_FLAGS} -DCAPSTONE_ARCHITECTURE_DEFAULT=OFF -DCAPSTONE_${ARCH}_SUPPORT=ON"
fi
cmake ${CMAKE_FLAGS} ..
make -j8