xref: /qemu/target/ppc/meson.build (revision 9f99072fc08e1044700404ae0a5f13a30a0a2a60)
1ppc_ss = ss.source_set()
2ppc_ss.add(files(
3  'cpu-models.c',
4  'cpu.c',
5  'cpu_init.c',
6  'excp_helper.c',
7  'gdbstub.c',
8  'helper_regs.c',
9))
10
11ppc_ss.add(when: 'CONFIG_TCG', if_true: files(
12  'dfp_helper.c',
13  'fpu_helper.c',
14  'int_helper.c',
15  'mem_helper.c',
16  'misc_helper.c',
17  'tcg-excp_helper.c',
18  'timebase_helper.c',
19  'translate.c',
20  'power8-pmu.c',
21))
22
23ppc_ss.add(libdecnumber)
24
25gen = [
26  decodetree.process('insn32.decode',
27                     extra_args: '--static-decode=decode_insn32'),
28  decodetree.process('insn64.decode',
29                     extra_args: ['--static-decode=decode_insn64',
30                                  '--insnwidth=64']),
31]
32ppc_ss.add(when: 'CONFIG_TCG', if_true: gen)
33
34ppc_ss.add(when: 'CONFIG_USER_ONLY', if_true: files('user_only_helper.c'))
35
36ppc_system_ss = ss.source_set()
37ppc_system_ss.add(files(
38  'arch_dump.c',
39  'machine.c',
40  'mmu-hash32.c',
41  'mmu-booke.c',
42  'mmu_common.c',
43  'ppc-qmp-cmds.c',
44))
45ppc_system_ss.add(when: 'CONFIG_TCG', if_true: files(
46  'mmu_helper.c',
47), if_false: files(
48  'tcg-stub.c',
49))
50ppc_system_ss.add(when: 'CONFIG_KVM', if_true: files('kvm.c'))
51
52ppc_system_ss.add(when: 'TARGET_PPC64', if_true: files(
53  'compat.c',
54  'mmu-book3s-v3.c',
55  'mmu-hash64.c',
56  'mmu-radix64.c',
57))
58
59target_arch += {'ppc': ppc_ss}
60target_system_arch += {'ppc': ppc_system_ss}
61