微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在宋中复制特定标题

如何解决如何在宋中复制特定标题

如何在Soong中提取特定文件用作标题

我最近正在为paho-mqtt-c编写一个蓝图(Sys.setlocale("LC_ALL","C")文件。我的消费者要求Android.bp将paho-mqtt-c存储在MQTTClient.h中-我认为这是“ 私有”位置。读取它们的src/文件后,它实际上将此文件和其他一些标题安装到CMakeLists.txt

据我所知,Soong没有安装的概念,因此似乎可以include/ export_include_dirs目录-似乎是错误的,或使用src将这些标头复制到其他位置。

但这是我遇到的另一个问题:我似乎无法弄清楚如何创建一个接受cc_genrule输入并写入cc_genrule输出n的{​​{1}} )。

n

导致失败的命令n-to-n,而不是我想要的结果,这将更接近遍历每个输入/输出对上的命令。

我的解决方案只是写四个cc_genrule { name: "paho_public_headers",cmd: "cp $(in) $(out)",srcs: [ "src/MQTTAsync.h","src/MQTTClient.h","src/MQTTClientPersistence.h","src/MQTTLogLevels.h" ] out: [ "public/MQTTAsync.h","public/MQTTClient.h","public/MQTTClientPersistence.h","public/MQTTLogLevels.h" ],} ,但这似乎也不是很好。

有更好的方法吗? (理想情况下,无需编写自定义cp <all-inputs> <all-outputs>

解决方法

解决方案是使用gensrcs为1的shard_size

例如:

gensrcs {
    name: "paho_public_headers",cmd: "mkdir -p $(genDir) && cat $(in) > $(out)",srcs: [":paho_mqtt_c_header_files"],output_extension: "h",shard_size: 1,export_include_dirs: ["src"],}

export_include_dirs很重要,因为对gensrcs的输出文件名除了扩展名以外几乎没有控制权,因此将目录结构$(in)保留在{{1 }}文件。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。