アップストリーム プロジェクトのコード変更の送信

リリース ライフサイクルで説明されているように、Android は他のさまざまなオープンソース プロジェクトを利用しています。これらのプロジェクトの大半は WORKING_DIRECTORYexternal/ 内にあります。これらのプロジェクトに変更を加える手順は次のとおりです。

  1. WORKING_DIRECTORY/external/upstream-project に移動します。
  2. METADATA ファイルを表示します。このファイルには通常、プロジェクトへのコードの提供に関する情報の URL があります。
  3. アップストリーム プロジェクトに変更を加えたら、その変更を含む新しいアップストリーム リリースを Android の管理者に伝えます。

以下に、具体的なアップストリーム プロジェクトへのコードの提供に関する追加情報を紹介します。

Bionic

Bionic のコードの大半は BSD に由来しているため、Bionic にとって新しいコードに対する変更でない限り、アップストリームの修正を行った後、適切な BSD から新しいファイル全体を取得します。

Android カーネル

すべての変更をアップストリームで行います。一般的なガイダンスについては、Android 共通カーネルにパッチを送信する方法、および GKI のカーネルコードの開発をご覧ください。

ICU

ICU プロジェクトの変更はすべて、ICU-TCexternal/icuicu4c/icu4j/ フォルダ)で行います。詳しくは、ICU のバグと機能リクエストの送信についての説明をご覧ください。

すべてのアップストリーム Jira リクエストに「android」というラベルを追加します。

CLDR

ICU の言語データのほとんどは、Unicode CLDR プロジェクトから提供されています。CLDR へのコードの提供に沿ってすべてのリクエストをアップストリームで送信し、「android」というラベルを追加します。

LLVM / Clang / Compiler-rt

LLVM 関連のプロジェクトの変更はすべてアップストリームで行います。Google がアップストリームのソースからツールチェーンをどのように構築しているかについて詳しくは、https://android.googlesource.com/toolchain/llvm_android/+/main/README.md をご覧ください。

mksh

MirBSD Korn シェル プロジェクト(external/mksh)の変更はすべて、mirbsd.org ドメインの miros-mksh にメールを送信するか(登録は不要)、Launchpad で行います。