hacer funciones

No defina nuevas funciones de creación en la configuración del producto/placa, por dos razones:

  1. Si la función se usa más tarde en un archivo Android.mk , ya no se definirá cuando la configuración del producto se convierta a Starlark, y es posible que el archivo Android.mk no funcione según lo previsto.
  2. El convertidor de Makefile a Starlark solo mira un archivo a la vez, y las definiciones de función a menudo se encuentran en archivos diferentes de donde se invocan.

Si bien una función make es realmente solo una variable que se evalúa mediante la función $(call) incorporada, el convertidor Make to Starlark asumirá que cualquier variable definida con la palabra clave define es una definición de función y la rechazará. Así que una función se vería así:

define my-func
  Some text, arg1: $(1)
enddef
$(call my-func,foo)

Proporcionamos secuencias de comandos para reemplazar automáticamente algunas funciones comunes con las que están definidas en los archivos Makefile del sistema de compilación principal. Se pueden encontrar en build/bazel/mk2rbc .