From 428c6a2d1b20dbe905437fc3a66f4e614f1e3e8b Mon Sep 17 00:00:00 2001 From: Jurriaan Bremer Date: Wed, 25 Jun 2014 23:00:46 +0200 Subject: [PATCH] forgot to add capstone configuration (thanks to KillerInstinct) --- capstone-config.mk | 70 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 capstone-config.mk diff --git a/capstone-config.mk b/capstone-config.mk new file mode 100644 index 0000000..d5f7ff0 --- /dev/null +++ b/capstone-config.mk @@ -0,0 +1,70 @@ +# This file contains all customized compile options for Capstone. +# Modify it before building step. Consult docs/README for details. + +################################################################################ +# Specify which archs you want to compile in. By default, we build all archs. + +CAPSTONE_ARCHS ?= x86 + + +################################################################################ +# Comment out the line below ('CAPSTONE_USE_SYS_DYN_MEM = yes'), or change it to +# 'CAPSTONE_USE_SYS_DYN_MEM = no' if do NOT use malloc/calloc/realloc/free/ +# vsnprintf() provided by system for internal dynamic memory management. +# +# NOTE: in that case, specify your own malloc/calloc/realloc/free/vsnprintf() +# functions in your program via API cs_option(), using CS_OPT_MEM option type. + +CAPSTONE_USE_SYS_DYN_MEM ?= yes + + +################################################################################ +# Change 'CAPSTONE_DIET = no' to 'CAPSTONE_DIET = yes' to make the library +# more compact: use less memory & smaller in binary size. +# This setup will remove the @mnemonic & @op_str data, plus semantic information +# such as @regs_read/write & @group. The amount of binary size reduced is +# up to 50% in some individual archs. +# +# NOTE: we still keep all those related fileds @mnemonic, @op_str, @regs_read, +# @regs_write, @groups, etc in fields in cs_insn structure regardless, but they +# will not be updated (i.e empty), thus become irrelevant. + +CAPSTONE_DIET ?= yes + + +################################################################################ +# Change 'CAPSTONE_X86_REDUCE = no' to 'CAPSTONE_X86_REDUCE = yes' to remove +# non-critical instruction sets of X86, making the binary size smaller by ~60%. +# This is desired in special cases, such as OS kernel, where these kind of +# instructions are not used. +# +# The list of instruction sets to be removed includes: +# - Floating Point Unit (FPU) +# - MultiMedia eXtension (MMX) +# - Streaming SIMD Extensions (SSE) +# - 3DNow +# - Advanced Vector Extensions (AVX) +# - Fused Multiply Add Operations (FMA) +# - eXtended Operations (XOP) +# - Transactional Synchronization Extensions (TSX) +# +# Due to this removal, the related instructions are nolonger supported. +# +# By default, Capstone is compiled with 'CAPSTONE_X86_REDUCE = no', +# thus supports complete X86 instructions. + +CAPSTONE_X86_REDUCE ?= yes + + +################################################################################ +# Change 'CAPSTONE_STATIC = yes' to 'CAPSTONE_STATIC = no' to avoid building +# a static library. + +CAPSTONE_STATIC ?= yes + + +################################################################################ +# Change 'CAPSTONE_SHARED = yes' to 'CAPSTONE_SHARED = no' to avoid building +# a shared library. + +CAPSTONE_SHARED ?= no