Contribuir para projetos upstream

O Android faz uso de vários outros projetos de código aberto, conforme descrito em CIclo de vida de lançamento. A maioria dos projetos fica em WORKING_DIRECTORYexternal/, e você pode seguir as etapas abaixo para fazer as mudanças nesses projetos:

  1. Navegue para WORKING_DIRECTORY/external/upstream-project.
  2. Confira o arquivo METADATA. Ele geralmente possui uma entrada para um URL onde você pode encontrar informações sobre como contribuir para o projeto.
  3. Depois que suas mudanças forem feitas no projeto upstream, informe o administrador do Android sobre a nova versão upstream que contém suas mudanças.

O restante desta página oferece mais informações sobre como contribuir para projetos upstream específicos.

Bionic

A maior parte do código do Bionic é do BSD. A menos que a mudança seja no código que é novo no Bionic, faça uma correção upstream e, em seguida, extraia um arquivo totalmente novo do BSD apropriado.

Kernel do Android

Faça todas as mudanças upstream. Para orientações gerais, confira Como enviar patches para kernels comuns do Android e Desenvolver código do kernel para GKI.

ICU

Faça todas as mudanças no projeto ICU em external/icu (pastas icu4c/ e icu4j/) no ICU-TC. Consulte Como enviar solicitações de recursos e bugs de ICU (links em inglês) para saber mais.

Adicione o rótulo "android" a todas as solicitações upstream do Jira.

CLDR

A maioria dos dados linguísticos em ICU vem do projeto Unicode CLDR. Envie todas as solicitações upstream de acordo com a página Como contribuir para o CLDR (links em inglês) e adicione o rótulo "android".

LLVM/Clang/Compiler-rt

Faça todas as mudanças nos projetos relacionados ao LLVM no upstream. Para mais informações sobre como o Google cria nossos conjuntos de ferramentas da fonte upstream, acesse https://android.googlesource.com/toolchain/llvm_android/+/main/README.md.

mksh

Faça todas as mudanças no projeto MirBSD Korn Shell em external/mksh enviando um e-mail para miros-mksh no domínio mirbsd.org (não é necessário ter uma assinatura para realizar o envio) ou no Launchpad (link em inglês).