Bug: 6015755
We don't need to support ARMv5 in cts for master going forward.
cts is the only component that needs generic_armv5 config.
Change-Id: Iad35f78737dc30faeed247fda0e77d74cb8f815b
Add boot property enabling ADBD over QEMU
Emulator and system image now support ADBD communication over QEMUD pipe rather
than over a TCP port forwarding. However, emulator has to know ahead of time
(before system starts booting) whether or not the system image supports ADBD
over pipe to properly setup the communication. For that, we introduce a boot
property "ro.adb.qemu" that is readable by the emulator early enough for the
proper ADB communication setup.
Change-Id: I978489c5acf46177b520e775d745bcc78f469837
Emulator and system image now support ADBD communication over QEMUD pipe rather
than over a TCP port forwarding. However, emulator has to know ahead of time
(before system starts booting) whether or not the system image supports ADBD
over pipe to properly setup the communication. For that, we introduce a boot
property "ro.adb.qemu" that is readable by the emulator early enough for the
proper ADB communication setup.
Change-Id: I978489c5acf46177b520e775d745bcc78f469837
If the emulator is run without GL acceleration enabled, the OpenGL
renderer will disable itself at runtime.
Change-Id: Ie40c7895120f51bb6a817c2f3cf7fab0a3dda292
This is dependent on having a kernel that uses CONFIG_HAS_TLS_REG=y
which is enabled in change Ic497e41270a4ad78ca55ab5674b5342e8d939e56
Change-Id: I456c270dd5b4d8fedfb423ac8e363fd37b77f8ce
This patch re-enables dex preoptimization in emulator-specific
builds. This considerably speeds up the first-boot of SDK AVDs
since the dex optimization pass is performed during the build
instead.
This was enabled in a previous patch, then reverted due to a
bug in the build system that has been fixed since.
This patch doesn't affect any device build.
Change-Id: I3be8a9c7f51a86029fde30b7d37584cb40b4db69
The file is required by the camera framework to properly set it up to work with
emulated camera devices.
Change-Id: I39686841030d21ef23775972aa4ee0ecd7a91c02
Bug 5267392
After coming across another place where I would have to use
package.apk.unaligned, I decided maybe it is best to just
disable dexpreopt as was previously suggested.
Use package.apks in the CTS Makefile task.
Change-Id: Iec839a72f4b53441337523b8a9cccda657eec8e8
Bug 5267392
Copied the prior generic product but tried to include
Makefiles from the generic product when possible to
avoid drifting.
Change-Id: I7893adb65c37c1257bcb5224848f4cd7cd93d2f9
This patch enables the build of OpenGLES emulation libraries
(both in the guest and the host) for any emulator-specific
product config.
+ update core/main.mk to ensure that the right path is parsed
when building the Windows SDK
Change-Id: Ifde047f8c0ef922504a7286c8c5b57f7c79c71f8
Backport from AOSP master.
This enables the Dex pre-optimization for emulator-specific builds.
The idea is to speed up the initial boot sequence of an SDK AVD by
avoiding the costly on-device preopt pass that is performed otherwise
the first time the AVD is launched.
Benchmarking shows reductions in first boot time from 1m30s to 40s
on a 2.4GHz Xeon when emulating the AOSP master ToT.
Change-Id: Ibf5ebe68aa4d363c9df05d2ffe7cb828ef99f922
Orig-Change-Id: I67a9ce9791220c202817864c6e83dc8fd9cbc027
Backport from AOSP master.
Now that the emulator supports proper ARMv7 emulation, switch to
building all emulator-specific platform images using this instruction
set, in order to benefit from the noticeable speed boost provided by
Thumb-2 instructions.
Note that we don't build with NEON support because emulated NEON
instructions are currently slow, though they work.
IMPORTANT: You need to have the following emulator patch in your tree
in order to start these platform builds easily:
https://review.source.android.com//#change,23798
Otherwise, the alternative is to do these things:
1/ Telling the emulator to emulate an ARMv7-A CPU, instead of
an ARMv5TE one. This is normally done with "-qemu cortex-a8"
2/ Using an ARMv7-A capable kernel image, which is available and
usable with -kernel prebuilt/android-arm/kernel-qemu-armv7
Note that the emulator has a special hack that automatically enables
1/ if 2/ is being used (i.e. if the kernel image name ends with -armv7,
then emulate an ARMv7-A CPU automatically).
So in reality, only 2/ is required.
Change-Id: Id3ac7cdbda892e519af98aff1f02136f344406b8
Orig-Change-Id: I5c0245ba5e6a2bc34d0d49b2c024fffd317a5eed
This splits the existing full.mk in two parts:
-One is the device-independent full_base.mk
-The other is the emulator-specific device.mk
This way we'll be able to inherit from full_base.mk
for on-device builds without any emulator-specific
files getting in the way.
Change-Id: I7f8254bf8c1177594fbdfbdb082bdc429a4a5b25
Orig-Change-Id: Ieb1f4ed47988c8fff119ff53f1f374032da3752d
This enables the Dex pre-optimization for emulator-specific builds.
The idea is to speed up the initial boot sequence of an SDK AVD by
avoiding the costly on-device preopt pass that is performed otherwise
the first time the AVD is launched.
Benchmarking shows reductions in first boot time from 1m30s to 40s
on a 2.4GHz Xeon when emulating the AOSP master ToT.
Change-Id: I67a9ce9791220c202817864c6e83dc8fd9cbc027
Now that the emulator supports proper ARMv7 emulation, switch to
building all emulator-specific platform images using this instruction
set, in order to benefit from the noticeable speed boost provided by
Thumb-2 instructions.
Note that we don't build with NEON support because emulated NEON
instructions are currently slow, though they work.
IMPORTANT: You need to have the following emulator patch in your tree
in order to start these platform builds easily:
https://review.source.android.com//#change,23798
Otherwise, the alternative is to do these things:
1/ Telling the emulator to emulate an ARMv7-A CPU, instead of
an ARMv5TE one. This is normally done with "-qemu cortex-a8"
2/ Using an ARMv7-A capable kernel image, which is available and
usable with -kernel prebuilt/android-arm/kernel-qemu-armv7
Note that the emulator has a special hack that automatically enables
1/ if 2/ is being used (i.e. if the kernel image name ends with -armv7,
then emulate an ARMv7-A CPU automatically).
So in reality, only 2/ is required.
Change-Id: I5c0245ba5e6a2bc34d0d49b2c024fffd317a5eed
Switch the emulator builds to ash to make sure it still
works, in case we find that we need to go back to using ash.
Change-Id: Id5641940b63cc4225011be1c375f4c86ec4d21cc
Added an instruction to copy init.vbox_x86.rc to the output's root.
This is required to properly setup networking and other stuff inside
the emulator.
Change-Id: I84b11b048120a59109aa95d4f18d496a3c874911
Change-Id: I1fc3cb491d593d3e28f90278cfc8de5d77852932
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
Signed-off-by: Jun Nakajima <jun.nakajima@intel.com>
Change-Id: I1fc3cb491d593d3e28f90278cfc8de5d77852932
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
Signed-off-by: Jun Nakajima <jun.nakajima@intel.com>
This patch removes support for prelinking from the build system. By now, the
prelinker has outlived its usefulness for several reasons. Firstly, the
speedup that it afforded in the early days of Android is now nullified by the
speed of hardware, as well as by the presence of Zygote. Secondly, the space
savings that come with prelinking (measued at 17MB on a recent honeycomb
stingray build) are no longer important either. Thirdly, prelinking reduces
the effectiveness of Address-Space-Layout Randomization. Finally, since it is
not part of the gcc suite, the prelinker needs to be maintained separately.
The patch deletes apriori, soslim, lsd, isprelinked, and iself from the source
tree. It also removes the prelink map.
LOCAL_PRELINK_MODULE becomes a no-op. Individual Android.mk will get cleaned
separately. Support for prelinking will have to be removed from the recovery
code and from the dynamic loader as well.
Change-Id: I5839c9c25f7772d5183eedfe20ab924f2a7cd411
We are deprecating use of AndroidBoard.mk. To move add-radio-file to
Android.mk, cleaning INSTALLED_RADIOIMAGE_TARGET may clean the radio
target set by other Android.mks that get included before
target/board/Android.mk.
Bug: 3500660
Change-Id: Iee19c40c18f0e9ec23bad4b6ab0e600756af615a
It was defaulting to 128M which was slightly too small for all the
applications. Increasing to 150M fits the resulting image.
Change-Id: I55957c54fbdb77090487c08ed3948988621978b3
Split telephony into its own product, so that we can easily
add telephony support to any configuration without pulling
anything else. Use it from generic.
Split the "full" family between a (no-telephony) base,
a telephony version of the same (both of which can be used
as a starting point for on-device builds), and the true classic
full which is an emulator build.
Change-Id: I616d34f2a29415b8ec997173f8e893c312ade5c2
This splits the existing full.mk in two parts:
-One is the device-independent full_base.mk
-The other is the emulator-specific device.mk
This way we'll be able to inherit from full_base.mk
for on-device builds without any emulator-specific
files getting in the way.
Change-Id: Ieb1f4ed47988c8fff119ff53f1f374032da3752d
A long time ago, Android.mk in devices had the same semantics
as the current AndroidBoard.mk. This eventually caused problems
(as it didn't allow having a true Android.mk there) so we switched,
and left an error behind in case people were still using the old
semantics (i.e. having an Android.mk but no AndroidBoard.mk).
Fast forward a few years to the present: we're finding that we want
to get rid of AndroidBoard.mk, so there are devices that will have
Android.mk but not AndroidBoard.mk. As this is becoming a legitimate
case, the error for it is removed, and the include for AndroidBoard.mk
is made optional.
Change-Id: Ic683419d4aaab122259715e0112660d2a6359e91
Merge commit '85fd5030b11d412f345b0ed039aa9912c7973aea' into gingerbread-plus-aosp
* commit '85fd5030b11d412f345b0ed039aa9912c7973aea':
Revert "Fixed problem with keymap files copied to target"
Merge commit 'a160e3169e6624610fd05b2edd14b674ffb54e44' into gingerbread-plus-aosp
* commit 'a160e3169e6624610fd05b2edd14b674ffb54e44':
Fixed problem with keymap files copied to target
Moved Android.mk and keymap files except AVRCP.kl from sdk/emulator/keymaps
to build/target/board/generic. This causes the keymap files to copied into
the system image of generic and sdk products, but not into the system image
of HW products. Originally the qwerty.kl was copied to target no matter
if the target had a qwerty keyboard or not, which is the case for e.g.
the Nexus One.
Change-Id: I7cd80497632fb3b9e7ce2f3a7888d4924a355f52
Added "TARGET_CPU_SMP := true" to simulator configuration, since it's
likely the simulator will be running on SMP hardware.
Change-Id: I7527895abe70ffaece5c52fd3ffcfe4b0d698fd2
Add in Makefiles and support files for x86 builds
Based on changes by: wonjong.lee <wonjong.lee@windriver.com>
Additional changes by: Mark Gross <mark.gross@intel.com>
Additional changes by: Bruce Beare <brucex.j.beare@intel.com>
Change-Id: Id087411b282b1b68a0251e7f9cbbdde183549787
Signed-off-by: Bruce Beare <brucex.j.beare@intel.com>
Non-HTC devices may have multiple files constituting their "radio
image". Generalize the INSTALLED_RADIOIMAGE_TARGET variable a bit:
initially define it as empty, then let AndroidBoard.mk files add to
it. Provide a convenience function add-radio-image for them to call
to add files. Put all those files into the target_files zip for use
in OTA and fastboot package construction.
Note that for HTC devices, this changes the name of the radio image in
the target_files zip: instead of "RADIO/image" it will be
"RADIO/radio.img". Tools that use the target_files zip will need to
be changed.