Android.bp 和 Android.mk 的对应关系

参考 Soong 构建系统

Android.mk 转为 Android.bp

没有分支、循环等流程控制的简单的 Android.mk ,可以通过 androidmk 命令转化为 Android.bp
source 、lunch 之后执行即可。

androidmk Android.mk > Android.bp

对应关系

Android 13 ,build/soong/androidmk/androidmk/android.go

对应关系如下,方便用到的时候查询

StandardProperties

func init() {addStandardProperties(bpparser.StringType,map[string]string{"LOCAL_MODULE":                  "name","LOCAL_CXX_STL":                 "stl","LOCAL_MULTILIB":                "compile_multilib","LOCAL_ARM_MODE_HACK":           "instruction_set","LOCAL_SDK_VERSION":             "sdk_version","LOCAL_MIN_SDK_VERSION":         "min_sdk_version","LOCAL_NDK_STL_VARIANT":         "stl","LOCAL_JAR_MANIFEST":            "manifest","LOCAL_CERTIFICATE":             "certificate","LOCAL_CERTIFICATE_LINEAGE":     "lineage","LOCAL_PACKAGE_NAME":            "name","LOCAL_MODULE_RELATIVE_PATH":    "relative_install_path","LOCAL_PROTOC_OPTIMIZE_TYPE":    "proto.type","LOCAL_MODULE_OWNER":            "owner","LOCAL_RENDERSCRIPT_TARGET_API": "renderscript.target_api","LOCAL_JAVA_LANGUAGE_VERSION":   "java_version","LOCAL_INSTRUMENTATION_FOR":     "instrumentation_for","LOCAL_MANIFEST_FILE":           "manifest","LOCAL_DEX_PREOPT_PROFILE_CLASS_LISTING": "dex_preopt.profile","LOCAL_TEST_CONFIG":                      "test_config","LOCAL_RRO_THEME":                        "theme",})addStandardProperties(bpparser.ListType,map[string]string{"LOCAL_SRC_FILES":                     "srcs","LOCAL_SRC_FILES_EXCLUDE":             "exclude_srcs","LOCAL_HEADER_LIBRARIES":              "header_libs","LOCAL_SHARED_LIBRARIES":              "shared_libs","LOCAL_STATIC_LIBRARIES":              "static_libs","LOCAL_WHOLE_STATIC_LIBRARIES":        "whole_static_libs","LOCAL_SYSTEM_SHARED_LIBRARIES":       "system_shared_libs","LOCAL_USES_LIBRARIES":                "uses_libs","LOCAL_OPTIONAL_USES_LIBRARIES":       "optional_uses_libs","LOCAL_ASFLAGS":                       "asflags","LOCAL_CLANG_ASFLAGS":                 "clang_asflags","LOCAL_COMPATIBILITY_SUPPORT_FILES":   "data","LOCAL_CONLYFLAGS":                    "conlyflags","LOCAL_CPPFLAGS":                      "cppflags","LOCAL_REQUIRED_MODULES":              "required","LOCAL_HOST_REQUIRED_MODULES":         "host_required","LOCAL_TARGET_REQUIRED_MODULES":       "target_required","LOCAL_OVERRIDES_MODULES":             "overrides","LOCAL_LDLIBS":                        "host_ldlibs","LOCAL_CLANG_CFLAGS":                  "clang_cflags","LOCAL_YACCFLAGS":                     "yacc.flags","LOCAL_SANITIZE_RECOVER":              "sanitize.recover","LOCAL_LOGTAGS_FILES":                 "logtags","LOCAL_EXPORT_HEADER_LIBRARY_HEADERS": "export_header_lib_headers","LOCAL_EXPORT_SHARED_LIBRARY_HEADERS": "export_shared_lib_headers","LOCAL_EXPORT_STATIC_LIBRARY_HEADERS": "export_static_lib_headers","LOCAL_INIT_RC":                       "init_rc","LOCAL_VINTF_FRAGMENTS":               "vintf_fragments","LOCAL_TIDY_FLAGS":                    "tidy_flags",// TODO: This is comma-separated, not space-separated"LOCAL_TIDY_CHECKS":           "tidy_checks","LOCAL_RENDERSCRIPT_INCLUDES": "renderscript.include_dirs","LOCAL_RENDERSCRIPT_FLAGS":    "renderscript.flags","LOCAL_JAVA_RESOURCE_DIRS":    "java_resource_dirs","LOCAL_JAVA_RESOURCE_FILES":   "java_resources","LOCAL_JAVACFLAGS":            "javacflags","LOCAL_ERROR_PRONE_FLAGS":     "errorprone.javacflags","LOCAL_DX_FLAGS":              "dxflags","LOCAL_JAVA_LIBRARIES":        "libs","LOCAL_STATIC_JAVA_LIBRARIES": "static_libs","LOCAL_JNI_SHARED_LIBRARIES":  "jni_libs","LOCAL_AAPT_FLAGS":            "aaptflags","LOCAL_PACKAGE_SPLITS":        "package_splits","LOCAL_COMPATIBILITY_SUITE":   "test_suites","LOCAL_OVERRIDES_PACKAGES":    "overrides","LOCAL_ANNOTATION_PROCESSORS": "plugins","LOCAL_PROGUARD_FLAGS":      "optimize.proguard_flags","LOCAL_PROGUARD_FLAG_FILES": "optimize.proguard_flags_files",// These will be rewritten to libs/static_libs by bpfix, after their presence is used to convert// java_library_static to android_library."LOCAL_SHARED_ANDROID_LIBRARIES": "android_libs","LOCAL_STATIC_ANDROID_LIBRARIES": "android_static_libs","LOCAL_ADDITIONAL_CERTIFICATES":  "additional_certificates",// Jacoco filters:"LOCAL_JACK_COVERAGE_INCLUDE_FILTER": "jacoco.include_filter","LOCAL_JACK_COVERAGE_EXCLUDE_FILTER": "jacoco.exclude_filter","LOCAL_FULL_LIBS_MANIFEST_FILES": "additional_manifests",// will be rewrite later to "license_kinds:" by byfix"LOCAL_LICENSE_KINDS": "android_license_kinds",// will be removed later by byfix// TODO: does this property matter in the license module?"LOCAL_LICENSE_CONDITIONS": "android_license_conditions","LOCAL_GENERATED_SOURCES":  "generated_sources",})addStandardProperties(bpparser.BoolType,map[string]string{// Bool properties"LOCAL_IS_HOST_MODULE":             "host","LOCAL_CLANG":                      "clang","LOCAL_FORCE_STATIC_EXECUTABLE":    "static_executable","LOCAL_NATIVE_COVERAGE":            "native_coverage","LOCAL_NO_CRT":                     "nocrt","LOCAL_ALLOW_UNDEFINED_SYMBOLS":    "allow_undefined_symbols","LOCAL_RTTI_FLAG":                  "rtti","LOCAL_PACK_MODULE_RELOCATIONS":    "pack_relocations","LOCAL_TIDY":                       "tidy","LOCAL_USE_CLANG_LLD":              "use_clang_lld","LOCAL_PROPRIETARY_MODULE":         "proprietary","LOCAL_VENDOR_MODULE":              "vendor","LOCAL_ODM_MODULE":                 "device_specific","LOCAL_PRODUCT_MODULE":             "product_specific","LOCAL_PRODUCT_SERVICES_MODULE":    "product_specific","LOCAL_SYSTEM_EXT_MODULE":          "system_ext_specific","LOCAL_EXPORT_PACKAGE_RESOURCES":   "export_package_resources","LOCAL_PRIVILEGED_MODULE":          "privileged","LOCAL_AAPT_INCLUDE_ALL_RESOURCES": "aapt_include_all_resources","LOCAL_DONT_MERGE_MANIFESTS":       "dont_merge_manifests","LOCAL_USE_EMBEDDED_NATIVE_LIBS":   "use_embedded_native_libs","LOCAL_USE_EMBEDDED_DEX":           "use_embedded_dex","LOCAL_DEX_PREOPT":                  "dex_preopt.enabled","LOCAL_DEX_PREOPT_APP_IMAGE":        "dex_preopt.app_image","LOCAL_DEX_PREOPT_GENERATE_PROFILE": "dex_preopt.profile_guided","LOCAL_PRIVATE_PLATFORM_APIS": "platform_apis","LOCAL_JETIFIER_ENABLED":      "jetifier","LOCAL_IS_UNIT_TEST": "unit_test","LOCAL_ENFORCE_USES_LIBRARIES": "enforce_uses_libs","LOCAL_CHECK_ELF_FILES": "check_elf_files",})
}

moduleTypes

var moduleTypes = map[string]string{"BUILD_SHARED_LIBRARY":        "cc_library_shared","BUILD_STATIC_LIBRARY":        "cc_library_static","BUILD_HOST_SHARED_LIBRARY":   "cc_library_host_shared","BUILD_HOST_STATIC_LIBRARY":   "cc_library_host_static","BUILD_HEADER_LIBRARY":        "cc_library_headers","BUILD_EXECUTABLE":            "cc_binary","BUILD_HOST_EXECUTABLE":       "cc_binary_host","BUILD_NATIVE_TEST":           "cc_test","BUILD_HOST_NATIVE_TEST":      "cc_test_host","BUILD_NATIVE_BENCHMARK":      "cc_benchmark","BUILD_HOST_NATIVE_BENCHMARK": "cc_benchmark_host","BUILD_JAVA_LIBRARY":             "java_library_installable", // will be rewritten to java_library by bpfix"BUILD_STATIC_JAVA_LIBRARY":      "java_library","BUILD_HOST_JAVA_LIBRARY":        "java_library_host","BUILD_HOST_DALVIK_JAVA_LIBRARY": "java_library_host_dalvik","BUILD_PACKAGE":                  "android_app","BUILD_RRO_PACKAGE":              "runtime_resource_overlay","BUILD_CTS_EXECUTABLE":          "cc_binary",               // will be further massaged by bpfix depending on the output path"BUILD_CTS_SUPPORT_PACKAGE":     "cts_support_package",     // will be rewritten to android_test by bpfix"BUILD_CTS_PACKAGE":             "cts_package",             // will be rewritten to android_test by bpfix"BUILD_CTS_TARGET_JAVA_LIBRARY": "cts_target_java_library", // will be rewritten to java_library by bpfix"BUILD_CTS_HOST_JAVA_LIBRARY":   "cts_host_java_library",   // will be rewritten to java_library_host by bpfix
}

prebuiltTypes

var prebuiltTypes = map[string]string{"SHARED_LIBRARIES": "cc_prebuilt_library_shared","STATIC_LIBRARIES": "cc_prebuilt_library_static","EXECUTABLES":      "cc_prebuilt_binary","JAVA_LIBRARIES":   "java_import","APPS":             "android_app_import","ETC":              "prebuilt_etc",
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/284529.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

深入理解javascript原型和闭包

原文链接http://www.cnblogs.com/wangfupeng1988/p/3977924.html 对象是属性的集合。 function show(x) {console.log(typeof(x)); // undefinedconsole.log(typeof(10)); // numberconsole.log(typeof(abc)); // stringconsole.log(typeof(true)); // booleanconsole.lo…

薪资高压线

阅读本文大概需要5分钟。最近一名读者咨询一个问题:洋哥,最近公司有一名同事因为打探其他人薪资被开除了,为啥我们公司要把薪资设置为高压线。这是个好问题,解答完他的疑惑后想起了一年多前写过一篇,彼时读者还比较少&…

达摩院年终预测出炉:2022 十大科技趋势,AI for Science 高居榜首

作为“一所探索科技未知的研究院”,阿里巴巴达摩院成立至今已经四年了。 这四年来,达摩院秉持着“探索科技位置,以人类愿景为驱动力,开展基础科学和颠覆式技术创新研究”的原则与使命,在基础科研和硬科技发展上“遍地生…

chrome调试工具高级不完整使用指南(基础篇)

一、前言 本文记录的是作者在工作上面对chrome的一些使用和情况的分析分享,内容仅代表个人的观点。转发请注明出处(http://www.cnblogs.com/st-leslie/),谢谢合作 二、浏览器模块介绍 由于chrome浏览器一直在不断的进行更新迭代,会不断的新增功能&#x…

新型基础测绘与实景三维中国建设技术文件【2】基础地理实体分类、粒度及精度基本要求

《新型基础测绘体系建设试点技术大纲》指出,新型基础测绘将以“基础地理实体”为核心的成果模式创新为切入点,带动技术体系、生产组织体系和政策标准体系的全面创新,从而实现基础测绘高质量发展。 基础地理实体作为新型基础测绘产品体系的核心…

构建和实现单点登录解决方案(转载于IBMdeveloperWorks)

将一个开放源码的基于 Java 的身份验证组件集成进 Web 门户中 在现有的应用程序中实现单点登录解决方案(single sign-on,SSO,即登录一次,就可以向所有网络资源验证用户的身份)是非常困难的,但是在构建复杂的…

分享一个基于Abp 和Yarp 开发的API网关项目

这个项目起源于去年公司相要尝试用微服务构建项目,在网关的技术选型中,我们原本确认了ApiSix 网关,如果需要写网关插件需要基于Lua脚本去写,我和另外一个同事当时基于这个写了一个简单的插件,但是开发测试以及发布都很麻烦,而且使用Lua脚本作为插件的开发语言本身也不是我们强项…

罗振宇2022“时间的朋友”跨年演讲全文稿(pdf)

2021年12月31日20:30,五粮液成都金融城演艺中心,罗振宇“时间的朋友”跨年演讲如约而至。 罗胖曾发下大愿望:跨年演讲要连办二十年。今年是第七场,也是最特殊的一场,罗胖面对12000个空座位,用53个好故事&am…

08.LoT.UI 前后台通用框架分解系列之——多样的Tag选择器

LOT.UI分解系列汇总:http://www.cnblogs.com/dunitian/p/4822808.html#lotui LoT.UI开源地址如下:https://github.com/dunitian/LoTCodeBase/tree/master/LoTUI 这个必须说下,本来是用Bootstrap-Select做的,很漂亮,正好…

jquery文档加载完毕后执行的几种写法

2019独角兽企业重金招聘Python工程师标准>>> 1.js文档加载完毕 标签内 οnlοad"test()"window.οnlοadfunction(){}2.jquery文档加载完毕 //方式1 $(document).ready(function(){//TODO }); //方式2 $(function(){//TODO }) //方式3 $(function($){//TO…

新型基础测绘与实景三维中国建设技术文件【3】基础地理实体空间身份编码规则

基础地理实体是新型基础测绘产品体系中的核心成果,是推动基础测绘工作转型升级的关键。与现有的测绘地理信息数据不同,基础地理实体具有多粒度、多模态、多层次,以及搭载结构化、半结构化和非结构化多样化信息的鲜明特点。 基础地理实体空间…

oracle 表 视图 存储过程 序列 job

table 表--delete tabledrop table Test1;-- Create tablecreate table TEST1(ID NUMBER,T_NAME VARCHAR2(100),DT DATE);-- 添加注释comment on column TEST1.T_NAME is 名称;--添加age字段alter table Test1 add (age NUMBER(8));--删除字段alter table TABLE_NAME …

[转]Docker 大势已去,Podman 即将崛起

Podman Podman 什么是Podman?Podman和Docker的主要区别是什么?Podman的使用与docker有什么区别?Podman 常用命令 容器镜像部署 PodmanPodman 加速器使用 Podman 运行一个容器列出运行的容器检查正在运行的容器查看一个运行中容器的日志查看一…

基于Kubernetes v1.24.0的集群搭建(一)

一、写在前面 K8S 1.24作为一个很重要的版本更新,它为我们提供了很多重要功能。该版本涉及46项增强功能:其中14项已升级为稳定版,15项进入beta阶段,13项则刚刚进入alpha阶段。此外,另有2项功能被弃用、2项功能被删除。…

mvc设计模式和mvc框架的区别

一组概念需要先理解,因为后面需要用: 架构:简单的说架构就是一个蓝图,是一种设计方案,将客户的不同需求抽象成为抽象组件,并且能够描述这些抽象组件之间的通信和调用。 框架:软件框架是项目软件…

新型基础测绘与实景三维中国建设技术文件【4】基础地理实体数据元数据

基础地理实体数据是新型基础测绘产品体系中的核心成果,为实现该数据的规范化管理和使用,编制基础地理实体数据元数据技术文件。本文件规定了基础地理实体数据元数据的基本要求和元数据内容,适用于二维表达形式、三维表达形式基础地理实体数据…

思科三层交换机充当路由器实现全网互通

转载于:https://blog.51cto.com/13568840/2059797

剑指offer编程题Java实现——面试题3二维数组中的查找

题目描述 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。下面是我实现的代码,修改下类名(…

mpvue开发小程序分享朋友圈无法自定义标题解决方法

在node_modules里面找到mpvue,手动修改一下mpvue这个包下的index.js文件 // 用户点击右上角分享 到朋友圈 onShareTimeline: rootVueVM.$options.onShareTimeline? function (options) { return callHook$1(rootVueVM, onShareTimeline, options); } : null,找到 L…

【ArcGIS Pro微课1000例】0020:ArcGIS Pro中河流(曲线)、湖泊(水体色)图例制作案例教程

相关阅读:【ArcGIS微课1000例】0032:ArcGIS中河流(曲线)、湖泊(水体色)图例制作案例教程 河流、湖泊的样式设置功能在ArcGIS Pro得到了延续,本文讲解ArcGIS Pro中河流湖泊图例的设置方法。 《ArcGIS Pro从入门到精通系列精品教程(微课版)》专栏包括完整的实验数据包,…