如何使用meson编译AIDL文件?

时间:2017-10-13 12:02:11

标签: meson-build

这是2个aidl文件。

src/com/rom1v/example/Service.aidl

package com.rom1v.example;
interface Service {
    void doSomething();
}

src/another/package/Other.aidl

package another.package;
interface Other {
    int get();
}

我想用meson编译它们,所以我开始了build.meson

project('example', 'java')

aidl = [
    'src/com/rom1v/example/Service.aidl',
    'src/another/package/Other.aidl',
]

从这些来源,我想生成:

  • MYBUILDDIR/gen/com/rom1v/example/Service.java
  • MYBUILDDIR/gen/another/package/Other.java

要手动生成它们,我使用以下命令:

aidl -ogen src/com/rom1v/example/Service.aidl
aidl -ogen src/another/package/Other.aidl

如何使用Meson做同样的事情?

我想generator是我想要的,但我无法弄清楚要使用的output值(它不接受pathes,only supports @PLAINNAME@@BASENAME@作为替换)。

aidl_compiler = find_program('aidl')
gen = generator(aidl_compiler, output: ???, arguments: ['-ogen', '@INPUT@'])

0 个答案:

没有答案