Use no_full_install: true instead of installable: false
So far, we have used `instalable: false` to avoid collision with the
other modules that are installed to the same path. A typical example was
<foo> and <foo>.microdroid. The latter is a modified version of the
former for the inclusion of the microdroid image. They however both have
the same instalation path (ex: system/bin) and stem (ex: foo) so that we
can reference them using the same path regardless of whether we are in
Android or microdroid.
However, the use of `installable: false` for the purpose is actually
incorrect, because `installable: false` also means, obviously, "this
module shouldn't be installed". The only reason this incorrect way has
worked is simply because packaging modules (ex: android_filesystem)
didn't respect the property when gathering the modules.
As packaging modules are now fixed to respect `installable: false`, we
need a correct way of avoiding the collision. `no_full_install: true` is
it.
If a module has this property set to true, it is never installed to the
full instal path like out/target/product/<partition>/... It can be
installed only via packaging modules.
Bug: 338160898
Test: m
Change-Id: I05939b71083b88c9146209fe57a137f7e4e3f22c
diff --git a/apexd/Android.bp b/apexd/Android.bp
index 2026581..871b597 100644
--- a/apexd/Android.bp
+++ b/apexd/Android.bp
@@ -169,7 +169,7 @@
// and the bootstrap bionic libraries.
bootstrap: true,
// This variant is for microdroid.
- installable: false,
+ no_full_install: true,
// init depends on the name "apexd".
stem: "apexd",
}