In the Android-x86 project, it defines a common x86 device so that everybody can create a specific x86 device based on it. The inherited device can be either a 32-bit or a 64-bit x86 device.
We can have a look at the content of device/generic/common first as follows:
We can see that there are a lot of files and directories. We will start the analysis from the BoardConfig.mk and x86.mk Makefiles first.
In BoardConfig.mk, the variables needed by the build system are defined as follows:
TARGET_BOARD_PLATFORM := android-x86 # Some framework code requires this to enable BT BOARD_HAVE_BLUETOOTH := true BOARD_USE_LEGACY_UI := ...