aboutsummaryrefslogtreecommitdiffstats
path: root/capstone/suite/capstone_get_setup.c
blob: 08f96c6b4a3bce0de2100099b0428dca57bef132 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
/*
 Retrieve architectures compiled in Capstone.
 By Nguyen Anh Quynh, 2019.

 Compile this code with:
 $ cc -o capstone_get_setup capstone_get_setup.c -lcapstone

 On default Capstone build, this code prints out the below output:

 $ capstone_get_setup
 x86=1 arm=1 arm64=1 mips=1 ppc=1 sparc=1 sysz=1 xcore=1 m68k=1 tms320c64x=1 m680x=1 evm=1 wasm=1 mos65xx=1 bpf=1
*/

#include <stdio.h>
#include <capstone/capstone.h>

int main()
{
	if (cs_support(CS_ARCH_X86)) {
		printf("x86=1 ");
	}
	if (cs_support(CS_ARCH_ARM)) {
		printf("arm=1 ");
	}
	if (cs_support(CS_ARCH_ARM64)) {
		printf("arm64=1 ");
	}
	if (cs_support(CS_ARCH_MIPS)) {
		printf("mips=1 ");
	}
	if (cs_support(CS_ARCH_PPC)) {
		printf("ppc=1 ");
	}
	if (cs_support(CS_ARCH_SPARC)) {
		printf("sparc=1 ");
	}
	if (cs_support(CS_ARCH_SYSZ)) {
		printf("sysz=1 ");
	}
	if (cs_support(CS_ARCH_XCORE)) {
		printf("xcore=1 ");
	}
	if (cs_support(CS_ARCH_M68K)) {
		printf("m68k=1 ");
	}
	if (cs_support(CS_ARCH_TMS320C64X)) {
		printf("tms320c64x=1 ");
	}
	if (cs_support(CS_ARCH_M680X)) {
		printf("m680x=1 ");
	}
	if (cs_support(CS_ARCH_EVM)) {
		printf("evm=1 ");
	}
	if (cs_support(CS_ARCH_WASM)) {
		printf("wasm=1 ");
	}
	if (cs_support(CS_ARCH_MOS65XX)) {
		printf("mos65xx=1 ");
	}
	if (cs_support(CS_ARCH_BPF)) {
		printf("bpf=1 ");
	}
	if (cs_support(CS_ARCH_RISCV)) {
		printf("riscv=1 ");
	}
	if (cs_support(CS_SUPPORT_DIET)) {
		printf("diet=1 ");
	}
	if (cs_support(CS_SUPPORT_X86_REDUCE)) {
		printf("x86_reduce=1 ");
	}
	printf("\n");

	return 0;
}