xref: /qemu/rust/hw/char/pl011/meson.build (revision 1297b285cc3ffbd06dc3208fbecdb2d582c535dc)
1d0f0cd5bSPaolo Bonzini_libpl011_rs = static_library(
2d0f0cd5bSPaolo Bonzini  'pl011',
3d0f0cd5bSPaolo Bonzini  files('src/lib.rs'),
4d0f0cd5bSPaolo Bonzini  override_options: ['rust_std=2021', 'build.rust_std=2021'],
5d0f0cd5bSPaolo Bonzini  rust_abi: 'rust',
6d0f0cd5bSPaolo Bonzini  dependencies: [
7*1297b285SPaolo Bonzini    bilge_rs,
8*1297b285SPaolo Bonzini    bilge_impl_rs,
9d0f0cd5bSPaolo Bonzini    qemu_api,
10d0f0cd5bSPaolo Bonzini    qemu_api_macros,
11d0f0cd5bSPaolo Bonzini  ],
12d0f0cd5bSPaolo Bonzini)
13d0f0cd5bSPaolo Bonzini
14d0f0cd5bSPaolo Bonzinirust_devices_ss.add(when: 'CONFIG_X_PL011_RUST', if_true: [declare_dependency(
15d0f0cd5bSPaolo Bonzini  link_whole: [_libpl011_rs],
16d0f0cd5bSPaolo Bonzini  # Putting proc macro crates in `dependencies` is necessary for Meson to find
17d0f0cd5bSPaolo Bonzini  # them when compiling the root per-target static rust lib.
18*1297b285SPaolo Bonzini  dependencies: [bilge_impl_rs, qemu_api_macros],
19d0f0cd5bSPaolo Bonzini  variables: {'crate': 'pl011'},
20d0f0cd5bSPaolo Bonzini)])
21