Skip to Content
Embedded Android
book

Embedded Android

by Karim Yaghmour
March 2013
Intermediate to advanced
410 pages
11h 49m
English
O'Reilly Media, Inc.
Book available
Content preview from Embedded Android

Appendix C. Customizing the Default Lists of Packages

As we saw in Chapter 4, the build system can be modified to add new packages to those it builds by default. What we didn’t cover in that chapter is how the build system creates the default list of packages that it uses when creating images or how we can customize it. Obviously, playing around with something as fundamental as the default set of packages required to get a functional AOSP has its risks, as you may end up generating stale images. Still, it’s worth taking a look at how this works and what’s in there. If nothing else, you’ll get a better idea of where to look in case you have to get your hands in there.

Overall Dependencies

In 2.3/Gingerbread, there are two main variables that dictate what gets included in the AOSP: GRANDFATHERED_USER_MODULES and PRODUCT_PACKAGES. The first is generated from a static list found in build/core/user_tags.mk and contains the bulk of the “core” packages required for the AOSP, with such things as adbd, the system services, and Bionic. This file isn’t meant to be edited and starts with a warning to that effect:

# This is the list of modules grandfathered to use a user tag

# DO NOT ADD ANY NEW MODULE TO THIS FILE
#
# user modules are hard to control and audit and we don't want
# to add any new such module in the system

In effect, the list of packages in GRANDFATHERED_USER_MODULES is more or less fixed in stone—what we want to focus our attention on is the packages added to PRODUCT_PACKAGES. There’s ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Learning Embedded Android N Programming

Learning Embedded Android N Programming

Ivan Morgillo, Stefano Viola
Learning Android, 2nd Edition

Learning Android, 2nd Edition

Marko Gargenta, Masumi Nakamura
Android High Performance Programming

Android High Performance Programming

Enrique López Mañas, Diego Grancini

Publisher Resources

ISBN: 9781449327958Errata Page