Support product variables
Allow modules to vary their properties based on product variables.
For now, DEVICE_USES_LOGD, DEVICE_USES_JEMALLOC, and DEVICE_USES_DLMALLOC,
and BOARD_MALLOC_ALIGNMENT are supported.
Product variables can provide a value (only bool and int supported for
now), and if any of the product variable properties contains a "%d"
then Sprintf will be called with the property value as the format
and the product variable value convert to an int as the only argument.
For example:
product_variables: {
dlmalloc_alignment: {
cflags: ["-DMALLOC_ALIGNMENT=%d"],
},
},
will cause -DMALLOC_ALIGNMENT=16 to be added to any top level
properties called "cflags".
Change-Id: I74882a6ab4914d3e222f8d06cfac371b7b829ae5
diff --git a/Android.bp b/Android.bp
index f001246..404c478 100644
--- a/Android.bp
+++ b/Android.bp
@@ -97,10 +97,12 @@
"common/config.go",
"common/defs.go",
"common/env.go",
+ "common/extend.go",
"common/glob.go",
"common/module.go",
"common/paths.go",
"common/util.go",
+ "common/variable.go",
],
}