group("third_party")
project("capstone")
  uuid("b3a89f7e-bb02-4945-ae75-219caed6afa2")
  kind("StaticLib")
  language("C")
  defines({
    "CAPSTONE_X86_ATT_DISABLE",
    "CAPSTONE_HAS_X86",
    "CAPSTONE_USE_SYS_DYN_MEM",
  })

  includedirs({
    "capstone",
    "capstone/include",
  })
  files({
    "capstone/cs.c",
    "capstone/MCInst.c",
    "capstone/MCInstrDesc.c",
    "capstone/MCRegisterInfo.c",
    "capstone/SStream.c",
    "capstone/utils.c",
    "capstone/Mapping.c",

    "capstone/arch/X86/*.c",
    "capstone/arch/X86/*.h",
    "capstone/arch/X86/*.inc",
  })
  force_compile_as_c({
    "capstone/**.c",
    "capstone/arch/X86/**.c",
  })
  removefiles({
    "capstone/arch/X86/X86ATTInstPrinter.c",
    "capstone/arch/X86/*reduce.inc",
  })
