Criar regras

Não defina regras de criação na configuração do produto. Uma regra Make se parece com isso:

output_file_name: dependencies
    shell commands to build the output

A configuração do produto/placa destina-se apenas a definir variáveis ​​que serão usadas posteriormente na compilação, não a definir novas ações de compilação. Essas regras devem ser convertidas em módulos Soong ou, quando a conversão do Bazel estiver adiantada o suficiente, o Bazel segmentará. O tipo de módulo genrule do Soong é genérico o suficiente para cobrir a maioria dos casos de uso.

Se a conversão para Soong for muito desafiadora no momento, mova a regra para qualquer arquivo que corresponda a {device,product,vendor}/*/[*/]build/tasks/*.mk . Esses arquivos são sempre incluídos pelo sistema de compilação, mas são separados da configuração do produto. Eles são incluídos o tempo todo, portanto, quaisquer regras adicionadas devem ser protegidas por uma variável definida na configuração do produto, para que a regra não seja definida para outros produtos. Veja esta lista de mudanças, Mover as regras de criação da configuração do quadro para construção/tarefas

Tenha em mente que as pastas build/tasks também terão que ser removidas quando o Make for removido completamente da compilação.