https://blog.csdn.net/liujun3512159/article/details/124601811
https://blog.csdn.net/hejnhong/article/details/126905568
https://www.jianshu.com/p/f23e18933122

属性

  • srcs
    以字符串列表的形式指定用于编译模块的源文件。您可使用模块引用语法 “:” 来引用生成源文件的其余模块的输出,如 genrule 或 filegroup。

  • stem

stem属性则用于改变输出文件的前缀。默认情况下,输出文件的前缀与name属性相同,但是你可以通过设置stem属性来改变这一点。例如,如果你将stem设置为my_app_stem,那么输出文件将变成my_app_stem而不是仅仅是my_app。

下面是一个简单的例子,展示如何在Android.bp文件中使用name和stem属性来改变输出文件名:

cc_binary {
    name: "my_app",
    srcs: ["my_app.cpp"],
    stem: "custom_prefix",
}

在这个例子中,name设置为my_app,而stem设置为custom_prefix。因此,最终编译出的可执行文件名将会是custom_prefix_intermediates目录下的custom_prefix而不是my_app。注意,stem的值不会影响生成文件的后缀名,后缀名依然由编译系统自动生成。

在Android.mk中则是LOCAL_MODULE_STEM字段

  • cflags
    Android.mk对应LOCAL_CFLAGS
    1)开启调试

    cc_binary {
    name: "my_module",
    srcs: ["my_module.c"],
    cflags: ["-g"],
    }
  • cc_defaults
    cc_defaults 是一种特殊的模块,用于在多个模块中重复使用相同的属性。通过定义 cc_defaults,可以简化 Android.bp 文件的编写,避免在多个模块中重复编写相同的属性。这种方式类似于在其他编程或配置文件中使用默认值或模板的概念。
    定义

    cc_defaults {
    name: "statsd_defaults",

    引用

    cc_binary {
     name: "statsd",
     defaults: ["statsd_defaults"],

各种不同类型的模块的编译规则

https://blog.51cto.com/u_15243273/5426761

分类: androidbp

0 条评论

发表回复

您的电子邮箱地址不会被公开。