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.