From 60c0311237a233d74b3cd2bf2ff10cfae2649d32 Mon Sep 17 00:00:00 2001 From: Chen Wang Date: Mon, 15 Nov 2021 14:13:24 +0800 Subject: [PATCH] weekly updated 2021/11/15 --- README.md | 50 +++++++++++++++++++++- README_zh.md | 50 +++++++++++++++++++++- articles/20211029-howto-setup-build-env.md | 35 +++++++++++++-- 3 files changed, 128 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index b7b9e4e..6be514a 100644 --- a/README.md +++ b/README.md @@ -9,11 +9,57 @@ If you are interested in runnning Android on RISC-V hardware, please join us! Currently we are in a very early stage, trying to cross compile the AOSP codebase using the RISC-V official GNU toolchain. The following is the project progress log (time in reverse order). +- 2021-11-15 For AOSP 12 ported to RV64, the implementation of `m --skip-ninja --skip-soong-tests` was successfully built. The relevant changes have been submitted to the repositories. The details are as follows (here, gitee is taken as an example, github has been mirrored): + - manifest repository: + - Newly added AOSP repositories: + - art/ : + - bionic/: + - build/make/: + - build/soong/: + - external/crosvm/: + - frameworks/av/: + - packages/modules/NeuralNetworks/: + - prebuilts/vndk/v28/: + - prebuilts/vndk/v29/: + - prebuilts/vndk/v30/: + - system/apex/: + - system/core/: + - system/iorap/: + - system/nvram/: + - In addition, some repositories are currently unable to be created on gitee/github because the overall volume or some files are too large and exceed the limitaiton required by gitee/github. Therefore, we currently use patching method to save the changes, and below are these repositories involved: + - cts/ + - frameworks/base/ + - packages/modules/ArtPrebuilt/ + - packages/services/Car/ + - prebuilts/clang/host/linux-x86/ + - prebuilts/runtime/ + The newly built patch repository is: + - The list of PRs submitted is as follows: + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Updated tech article [“Howto build aosp-riscv” ](./articles/20211029-howto-setup-build-env.md) + - Newed tech article ["Code analysis for soong_ui"](./articles/20211102-codeanalysis-soong_ui.md) + - 2021-10-29 Restart the AOSP migration work of PLCT lab. The new goal is to migrate AOSP 12 to RV64. - Setup group @ (mirrored with ) with some initial repos. - [PR Merged] added note on howto setup build env: - - New tech article "Code analysis for envsetup" @ - - New tech article "Howto setup build environment" @ + - Newed tech article ["Code analysis for envsetup"](./articles/20211026-lunch.md) + - Newed tech article ["Howto setup build environment"](./articles/20211029-howto-setup-build-env.md) - 2021-01-xx Due to [open-source work](https://github.com/T-head-Semi/aosp-riscv) from T-Head(alibaba), we (PLCT lab) stopped the AOSP porting work in early 2021. All code repositories (except working-group) under the original and are backed up to [Gitee's aosp-riscv-bionic-porting](https://gitee.com/aosp-riscv-bionic-porting). diff --git a/README_zh.md b/README_zh.md index 6179c61..3f91ab1 100644 --- a/README_zh.md +++ b/README_zh.md @@ -8,11 +8,57 @@ 本项目还处于非常早期的状态,更多的工作在持续推进中。以下为项目进展日志(时间为倒序)。 +- 2021-11-15 针对 AOSP 12 移植到 RV64 实现 `m --skip-ninja --skip-soong-tests` 下构建成功。相关修改已经提交到仓库上。具体如下(这里以 gitee 的为例,github 已经 mirror): + - manifest 仓库: + - 涉及新增的 AOSP 仓库: + - art/ : + - bionic/: + - build/make/: + - build/soong/: + - external/crosvm/: + - frameworks/av/: + - packages/modules/NeuralNetworks/: + - prebuilts/vndk/v28/: + - prebuilts/vndk/v29/: + - prebuilts/vndk/v30/: + - system/apex/: + - system/core/: + - system/iorap/: + - system/nvram/: + - 另有部分仓库由于整体体积过大或者部分文件体积过大,超过 gitee/github 限制的,目前无法在 gitee/github 上新建仓库,所以目前采用补丁方式保存修改、目前这些涉及的仓库为: + - cts/ + - frameworks/base/ + - packages/modules/ArtPrebuilt/ + - packages/services/Car/ + - prebuilts/clang/host/linux-x86/ + - prebuilts/runtime/ + 新建的补丁仓库为: + - 提交的 PR 列表如下: + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - 更新文档 [“如何编译 aosp-riscv” ](./articles/20211029-howto-setup-build-env.md) + - 新增文档 ["代码走读:对 soong_ui 的深入理解"](./articles/20211102-codeanalysis-soong_ui.md) + - 2021-10-29 重启 PLCT lab 的 AOSP 移植工作,最新的目标是将 AOSP 12 移植到 RV64 上。 - 创建 group @ (mirrored with ) 以及部分仓库. - [PR Merged] added note on howto setup build env: - - 新增文档 "Code analysis for envsetup" @ - - 新增文档 "Howto setup build environment" @ + - 新增文档 ["Code analysis for envsetup"](./articles/20211026-lunch.md) + - 新增文档 ["Howto setup build environment"](./articles/20211029-howto-setup-build-env.md) - 2021-01-xx 由于平头哥的 [开源工作 ](https://github.com/T-head-Semi/aosp-riscv),我们于 2021 年初停止了 PLCT lab 的相关 AOSP 移植工作。所有原 下的代码仓库(除了 working-group)都备份到 [Gitee 的 aosp-riscv-bionic-porting 组织](https://gitee.com/aosp-riscv-bionic-porting) 下。 diff --git a/articles/20211029-howto-setup-build-env.md b/articles/20211029-howto-setup-build-env.md index 5bbfec5..eff8730 100644 --- a/articles/20211029-howto-setup-build-env.md +++ b/articles/20211029-howto-setup-build-env.md @@ -5,7 +5,8 @@ - [2. 安装依赖软件](#2-安装依赖软件) - [3. 安装 repo](#3-安装-repo) - [4. 下载源码](#4-下载源码) -- [5. 编译](#5-编译) +- [5. 下载 patch 并打补丁](#5-下载-patch-并打补丁) +- [6. 编译](#6-编译) @@ -63,11 +64,39 @@ Bug reports: https://bugs.chromium.org/p/gerrit/issues/entry?template=Repo+tool+ # 4. 下载源码 +创建一个 AOSP 的源码构建目录,这里假设为 `/home/u/aosp`,然后进入 aosp 目录 +``` +$ mkdir -p /home/u/aosp +$ cd /home/u/aosp +``` + +进入 AOSP 构建目录后执行以下命令下载 AOSP 的源码 ``` $ repo init -u git@gitee.com:aosp-riscv/platform_manifest.git -b riscv64-android-12.0.0_dev $ repo sync -j8 ``` -# 5. 编译 +# 5. 下载 patch 并打补丁 + +由于部分 AOSP 仓库整体体积过大或者部分文件体积过大,超过 gitee/github 限制的,目前无法在 gitee/github 上新建仓库,所以目前采用补丁方式保存修改,这些补丁单独存放在一个仓库 中。 + +**注意请将这个仓库下载在 AOSP 的构建目录(譬如这里是 `/home/u/aosp`)之外。**, 这里假设下载到 `/home/u` 下。 + +执行如下命令下载额外的补丁并执行脚本文件应用补丁。 + +``` +$ cd /home/u +$ git clone git@gitee.com:aosp-riscv/patches_aosp_riscv.git +$ cd patches_aosp_riscv/ +$ git checkout riscv64-android-12.0.0_dev +$ ./apply_patches.sh /home/u/aosp +``` + +# 6. 编译 -目前的仓库代码还不支持编译 (TBD) +``` +$ cd /home/u/aosp +$ source ./build/envsetup.sh +$ lunch aosp_riscv64-eng +$ m --skip-ninja --skip-soong-tests +``` -- Gitee