1package { 2 default_applicable_licenses: ["external_elfutils_license"], 3} 4 5genrule { 6 name: "i386_mnemonics", 7 srcs: [ 8 "defs/i386", 9 ], 10 out: ["i386.mnemonics"], 11 cmd: "M4=$(location m4) $(location android_mnemonic_preprocess.sh) i386 $(in) $(out)", 12 tool_files: [ 13 "android_mnemonic_preprocess.sh", 14 ], 15 tools : [ 16 "m4", 17 ] 18} 19 20genrule { 21 name: "x86_64_mnemonics", 22 srcs : [ 23 "defs/i386", 24 ], 25 out : ["x86_64.mnemonics"], 26 cmd : "M4=$(location m4) $(location android_mnemonic_preprocess.sh) x86_64 $(in) $(out)", 27 tool_files : [ 28 "android_mnemonic_preprocess.sh", 29 ], 30 tools : [ 31 "m4", 32 ] 33} 34 35cc_binary_host { 36 name: "i386_gendis", 37 defaults: ["elfutils_defaults"], 38 srcs: [ 39 "i386_parse.y", 40 "i386_lex.l", 41 "i386_gendis.c", 42 ], 43 yacc: { 44 flags: ["-pi386_",] 45 }, 46 lex: { 47 flags: ["-Pi386_",] 48 }, 49 static_libs: [ 50 "libeu", 51 ], 52} 53 54genrule { 55 name: "i386_dis", 56 srcs: [ 57 "defs/i386", 58 ], 59 out: ["i386_dis.h"], 60 cmd: "$(location m4) -Di386 -DDISASSEMBLER $(in) > i386_defs && $(location i386_gendis) i386_defs > $(out)", 61 tools: [ 62 "i386_gendis", 63 "m4", 64 ], 65} 66 67genrule { 68 name: "x86_64_dis", 69 srcs: [ 70 "defs/i386", 71 ], 72 out: ["x86_64_dis.h"], 73 cmd: "$(location m4) -Dx86_64 -DDISASSEMBLER $(in) > x86_64_defs && $(location i386_gendis) x86_64_defs > $(out)", 74 tools: [ 75 "i386_gendis", 76 "m4", 77 ], 78} 79