@@ -27,6 +27,7 @@ option(CAPSTONE_BUILD_DIET "Build diet library" OFF)
27
27
option (CAPSTONE_BUILD_TESTS "Build tests" ON )
28
28
option (CAPSTONE_BUILD_CSTOOL "Build cstool" ON )
29
29
option (CAPSTONE_USE_DEFAULT_ALLOC "Use default memory allocation functions" ON )
30
+ option (CAPSTONE_ARCHITECTURE_DEFAULT "Whether architectures are enabled by default" ON )
30
31
31
32
set (SUPPORTED_ARCHITECTURES ARM ARM64 M68K MIPS PPC SPARC SYSZ XCORE X86 TMS320C64X M680X EVM MOS65XX)
32
33
set (SUPPORTED_ARCHITECTURE_LABELS ARM ARM64 M68K MIPS PowerPC Sparc SystemZ XCore x86 TMS320C64x M680x EVM MOS65XX)
@@ -37,7 +38,7 @@ math(EXPR count "${count}-1")
37
38
foreach (i RANGE ${count} )
38
39
list (GET SUPPORTED_ARCHITECTURES ${i} supported_architecture)
39
40
list (GET SUPPORTED_ARCHITECTURE_LABELS ${i} supported_architecture_label)
40
- option ("CAPSTONE_${supported_architecture} _SUPPORT" "${supported_architecture_label} support" ON )
41
+ option ("CAPSTONE_${supported_architecture} _SUPPORT" "${supported_architecture_label} support" ${CAPSTONE_ARCHITECTURE_DEFAULT} )
41
42
endforeach (i)
42
43
43
44
# propagate architecture support variables to preprocessor
@@ -49,7 +50,6 @@ foreach(supported_architecture ${SUPPORTED_ARCHITECTURES})
49
50
endif ()
50
51
endforeach (supported_architecture)
51
52
52
- option (CAPSTONE_X86_ONLY "Enable just x86, and disable building every other architectures" OFF )
53
53
option (CAPSTONE_X86_REDUCE "x86 with reduce instruction sets to minimize library" OFF )
54
54
option (CAPSTONE_X86_ATT_DISABLE "Disable x86 AT&T syntax" OFF )
55
55
option (CAPSTONE_OSXKERNEL_SUPPORT "Support to embed Capstone into OS X Kernel extensions" OFF )
@@ -120,7 +120,7 @@ set(HEADERS_COMMON
120
120
set (TEST_SOURCES test_basic.c test_detail.c test_skipdata.c test_iter.c)
121
121
122
122
## architecture support
123
- if (NOT CAPSTONE_X86_ONLY AND CAPSTONE_ARM_SUPPORT)
123
+ if (CAPSTONE_ARM_SUPPORT)
124
124
add_definitions (-DCAPSTONE_HAS_ARM)
125
125
set (SOURCES_ARM
126
126
arch/ARM/ARMDisassembler.c
@@ -157,7 +157,7 @@ if (NOT CAPSTONE_X86_ONLY AND CAPSTONE_ARM_SUPPORT)
157
157
set (TEST_SOURCES ${TEST_SOURCES} test_arm.c)
158
158
endif ()
159
159
160
- if (NOT CAPSTONE_X86_ONLY AND CAPSTONE_ARM64_SUPPORT)
160
+ if (CAPSTONE_ARM64_SUPPORT)
161
161
add_definitions (-DCAPSTONE_HAS_ARM64)
162
162
set (SOURCES_ARM64
163
163
arch/AArch64/AArch64BaseInfo.c
@@ -194,7 +194,7 @@ if (NOT CAPSTONE_X86_ONLY AND CAPSTONE_ARM64_SUPPORT)
194
194
set (TEST_SOURCES ${TEST_SOURCES} test_arm64.c)
195
195
endif ()
196
196
197
- if (NOT CAPSTONE_X86_ONLY AND CAPSTONE_MIPS_SUPPORT)
197
+ if (CAPSTONE_MIPS_SUPPORT)
198
198
add_definitions (-DCAPSTONE_HAS_MIPS)
199
199
set (SOURCES_MIPS
200
200
arch/Mips/MipsDisassembler.c
@@ -226,7 +226,7 @@ if (NOT CAPSTONE_X86_ONLY AND CAPSTONE_MIPS_SUPPORT)
226
226
set (TEST_SOURCES ${TEST_SOURCES} test_mips.c)
227
227
endif ()
228
228
229
- if (NOT CAPSTONE_X86_ONLY AND CAPSTONE_PPC_SUPPORT)
229
+ if (CAPSTONE_PPC_SUPPORT)
230
230
add_definitions (-DCAPSTONE_HAS_POWERPC)
231
231
set (SOURCES_PPC
232
232
arch/PowerPC/PPCDisassembler.c
@@ -313,7 +313,7 @@ if (CAPSTONE_X86_SUPPORT)
313
313
set (TEST_SOURCES ${TEST_SOURCES} test_x86.c test_customized_mnem.c)
314
314
endif ()
315
315
316
- if (NOT CAPSTONE_X86_ONLY AND CAPSTONE_SPARC_SUPPORT)
316
+ if (CAPSTONE_SPARC_SUPPORT)
317
317
add_definitions (-DCAPSTONE_HAS_SPARC)
318
318
set (SOURCES_SPARC
319
319
arch/Sparc/SparcDisassembler.c
@@ -336,7 +336,7 @@ if (NOT CAPSTONE_X86_ONLY AND CAPSTONE_SPARC_SUPPORT)
336
336
set (TEST_SOURCES ${TEST_SOURCES} test_sparc.c)
337
337
endif ()
338
338
339
- if (NOT CAPSTONE_X86_ONLY AND CAPSTONE_SYSZ_SUPPORT)
339
+ if (CAPSTONE_SYSZ_SUPPORT)
340
340
add_definitions (-DCAPSTONE_HAS_SYSZ)
341
341
set (SOURCES_SYSZ
342
342
arch/SystemZ/SystemZDisassembler.c
@@ -361,7 +361,7 @@ if (NOT CAPSTONE_X86_ONLY AND CAPSTONE_SYSZ_SUPPORT)
361
361
set (TEST_SOURCES ${TEST_SOURCES} test_systemz.c)
362
362
endif ()
363
363
364
- if (NOT CAPSTONE_X86_ONLY AND CAPSTONE_XCORE_SUPPORT)
364
+ if (CAPSTONE_XCORE_SUPPORT)
365
365
add_definitions (-DCAPSTONE_HAS_XCORE)
366
366
set (SOURCES_XCORE
367
367
arch/XCore/XCoreDisassembler.c
@@ -382,7 +382,7 @@ if (NOT CAPSTONE_X86_ONLY AND CAPSTONE_XCORE_SUPPORT)
382
382
set (TEST_SOURCES ${TEST_SOURCES} test_xcore.c)
383
383
endif ()
384
384
385
- if (NOT CAPSTONE_X86_ONLY AND CAPSTONE_M68K_SUPPORT)
385
+ if (CAPSTONE_M68K_SUPPORT)
386
386
add_definitions (-DCAPSTONE_HAS_M68K)
387
387
set (SOURCES_M68K
388
388
arch/M68K/M68KDisassembler.c
@@ -395,7 +395,7 @@ if (NOT CAPSTONE_X86_ONLY AND CAPSTONE_M68K_SUPPORT)
395
395
set (TEST_SOURCES ${TEST_SOURCES} test_m68k.c)
396
396
endif ()
397
397
398
- if (NOT CAPSTONE_X86_ONLY AND CAPSTONE_TMS320C64X_SUPPORT)
398
+ if (CAPSTONE_TMS320C64X_SUPPORT)
399
399
add_definitions (-DCAPSTONE_HAS_TMS320C64X)
400
400
set (SOURCES_TMS320C64X
401
401
arch/TMS320C64x/TMS320C64xDisassembler.c
@@ -415,7 +415,7 @@ if (NOT CAPSTONE_X86_ONLY AND CAPSTONE_TMS320C64X_SUPPORT)
415
415
set (TEST_SOURCES ${TEST_SOURCES} test_tms320c64x.c)
416
416
endif ()
417
417
418
- if (NOT CAPSTONE_X86_ONLY AND CAPSTONE_M680X_SUPPORT)
418
+ if (CAPSTONE_M680X_SUPPORT)
419
419
add_definitions (-DCAPSTONE_HAS_M680X)
420
420
set (SOURCES_M680X
421
421
arch/M680X/M680XDisassembler.c
@@ -430,7 +430,7 @@ if (NOT CAPSTONE_X86_ONLY AND CAPSTONE_M680X_SUPPORT)
430
430
set (TEST_SOURCES ${TEST_SOURCES} test_m680x.c)
431
431
endif ()
432
432
433
- if (NOT CAPSTONE_X86_ONLY AND CAPSTONE_EVM_SUPPORT)
433
+ if (CAPSTONE_EVM_SUPPORT)
434
434
add_definitions (-DCAPSTONE_HAS_EVM)
435
435
set (SOURCES_EVM
436
436
arch/EVM/EVMDisassembler.c
@@ -447,7 +447,7 @@ if (NOT CAPSTONE_X86_ONLY AND CAPSTONE_EVM_SUPPORT)
447
447
set (TEST_SOURCES ${TEST_SOURCES} test_evm.c)
448
448
endif ()
449
449
450
- if (NOT CAPSTONE_X86_ONLY AND CAPSTONE_MOS65XX_SUPPORT)
450
+ if (CAPSTONE_MOS65XX_SUPPORT)
451
451
add_definitions (-DCAPSTONE_HAS_MOS65XX)
452
452
set (SOURCES_MOS65XX
453
453
arch/MOS65XX/MOS65XXModule.c
0 commit comments