188b607994a148f4af5bffee163e39ce8296750c6The Android Open Source Project# config.mk 2e01100c7ac15bd884ca02c64f42b908b93e37c26Doug Zongker# 388b607994a148f4af5bffee163e39ce8296750c6The Android Open Source Project# Product-specific compile-time definitions. 488b607994a148f4af5bffee163e39ce8296750c6The Android Open Source Project# 588b607994a148f4af5bffee163e39ce8296750c6The Android Open Source Project 688b607994a148f4af5bffee163e39ce8296750c6The Android Open Source Project# The generic product target doesn't have any hardware-specific pieces. 788b607994a148f4af5bffee163e39ce8296750c6The Android Open Source ProjectTARGET_NO_BOOTLOADER := true 888b607994a148f4af5bffee163e39ce8296750c6The Android Open Source ProjectTARGET_NO_KERNEL := true 98da4310646da498255173b475915aa066de4200aRaghu GandhamTARGET_ARCH := arm 105f5056f503e8643fc5e2eeffd6382aadded4c32dDavid 'Digit' Turner 115f5056f503e8643fc5e2eeffd6382aadded4c32dDavid 'Digit' Turner# Note: we build the platform images for ARMv7-A _without_ NEON. 125f5056f503e8643fc5e2eeffd6382aadded4c32dDavid 'Digit' Turner# 135f5056f503e8643fc5e2eeffd6382aadded4c32dDavid 'Digit' Turner# Technically, the emulator supports ARMv7-A _and_ NEON instructions, but 145f5056f503e8643fc5e2eeffd6382aadded4c32dDavid 'Digit' Turner# emulated NEON code paths typically ends up 2x slower than the normal C code 155f5056f503e8643fc5e2eeffd6382aadded4c32dDavid 'Digit' Turner# it is supposed to replace (unlike on real devices where it is 2x to 3x 165f5056f503e8643fc5e2eeffd6382aadded4c32dDavid 'Digit' Turner# faster). 175f5056f503e8643fc5e2eeffd6382aadded4c32dDavid 'Digit' Turner# 185f5056f503e8643fc5e2eeffd6382aadded4c32dDavid 'Digit' Turner# What this means is that the platform image will not use NEON code paths 195f5056f503e8643fc5e2eeffd6382aadded4c32dDavid 'Digit' Turner# that are slower to emulate. On the other hand, it is possible to emulate 205f5056f503e8643fc5e2eeffd6382aadded4c32dDavid 'Digit' Turner# application code generated with the NDK that uses NEON in the emulator. 215f5056f503e8643fc5e2eeffd6382aadded4c32dDavid 'Digit' Turner# 225f5056f503e8643fc5e2eeffd6382aadded4c32dDavid 'Digit' TurnerTARGET_ARCH_VARIANT := armv7-a 236103fd7ac35e4c1443fa42eb8d464f2a1950135dChristopher FerrisTARGET_CPU_VARIANT := generic 245f5056f503e8643fc5e2eeffd6382aadded4c32dDavid 'Digit' TurnerTARGET_CPU_ABI := armeabi-v7a 255f5056f503e8643fc5e2eeffd6382aadded4c32dDavid 'Digit' TurnerTARGET_CPU_ABI2 := armeabi 265f5056f503e8643fc5e2eeffd6382aadded4c32dDavid 'Digit' Turner 2788b607994a148f4af5bffee163e39ce8296750c6The Android Open Source ProjectHAVE_HTC_AUDIO_DRIVER := true 2888b607994a148f4af5bffee163e39ce8296750c6The Android Open Source ProjectBOARD_USES_GENERIC_AUDIO := true 29b9e030e52da61c5f6e20bade2411745baf449a04Chih-Chung Chang 30b9e030e52da61c5f6e20bade2411745baf449a04Chih-Chung Chang# no hardware camera 31b9e030e52da61c5f6e20bade2411745baf449a04Chih-Chung ChangUSE_CAMERA_STUB := true 32f7a6ead075a9b1edc85eeeca646ced42f112f331Jean-Baptiste Queru 3394431144cf1ef0a9887fc3065af9b29e62579353David Turner# Enable dex-preoptimization to speed up the first boot sequence 3494431144cf1ef0a9887fc3065af9b29e62579353David Turner# of an SDK AVD. Note that this operation only works on Linux for now 3594431144cf1ef0a9887fc3065af9b29e62579353David Turnerifeq ($(HOST_OS),linux) 36b53cc7a82b6c96402b02f4e45be50718f23182dbRaghu Gandham ifeq ($(WITH_DEXPREOPT),) 37b53cc7a82b6c96402b02f4e45be50718f23182dbRaghu Gandham WITH_DEXPREOPT := true 38b53cc7a82b6c96402b02f4e45be50718f23182dbRaghu Gandham endif 3994431144cf1ef0a9887fc3065af9b29e62579353David Turnerendif 4094431144cf1ef0a9887fc3065af9b29e62579353David Turner 4143dd89d2a0c166525db0af4162b9b08aaa186aedDavid 'Digit' Turner# Build OpenGLES emulation guest and host libraries 4243dd89d2a0c166525db0af4162b9b08aaa186aedDavid 'Digit' TurnerBUILD_EMULATOR_OPENGL := true 43615d2ffa926d03ba44fbc58b4593ce96ef831783Jesse Hall 44615d2ffa926d03ba44fbc58b4593ce96ef831783Jesse Hall# Build and enable the OpenGL ES View renderer. When running on the emulator, 45615d2ffa926d03ba44fbc58b4593ce96ef831783Jesse Hall# the GLES renderer disables itself if host GL acceleration isn't available. 46615d2ffa926d03ba44fbc58b4593ce96ef831783Jesse HallUSE_OPENGL_RENDERER := true 473c9fae2840862c788554b129fa405a7d06594b5dNick Kralevich 48782f2ad37538c8decfbe8cac48f26c593182c358Jamie Gennis# Set the phase offset of the system's vsync event relative to the hardware 49782f2ad37538c8decfbe8cac48f26c593182c358Jamie Gennis# vsync. The system's vsync event drives Choreographer and SurfaceFlinger's 50782f2ad37538c8decfbe8cac48f26c593182c358Jamie Gennis# rendering. This value is the number of nanoseconds after the hardware vsync 51782f2ad37538c8decfbe8cac48f26c593182c358Jamie Gennis# that the system vsync event will occur. 52782f2ad37538c8decfbe8cac48f26c593182c358Jamie Gennis# 53782f2ad37538c8decfbe8cac48f26c593182c358Jamie Gennis# This phase offset allows adjustment of the minimum latency from application 54782f2ad37538c8decfbe8cac48f26c593182c358Jamie Gennis# wake-up (by Choregographer) time to the time at which the resulting window 55782f2ad37538c8decfbe8cac48f26c593182c358Jamie Gennis# image is displayed. This value may be either positive (after the HW vsync) 56782f2ad37538c8decfbe8cac48f26c593182c358Jamie Gennis# or negative (before the HW vsync). Setting it to 0 will result in a 57782f2ad37538c8decfbe8cac48f26c593182c358Jamie Gennis# minimum latency of two vsync periods because the app and SurfaceFlinger 58782f2ad37538c8decfbe8cac48f26c593182c358Jamie Gennis# will run just after the HW vsync. Setting it to a positive number will 59782f2ad37538c8decfbe8cac48f26c593182c358Jamie Gennis# result in the minimum latency being: 60782f2ad37538c8decfbe8cac48f26c593182c358Jamie Gennis# 61782f2ad37538c8decfbe8cac48f26c593182c358Jamie Gennis# (2 * VSYNC_PERIOD - (vsyncPhaseOffsetNs % VSYNC_PERIOD)) 62782f2ad37538c8decfbe8cac48f26c593182c358Jamie Gennis# 63782f2ad37538c8decfbe8cac48f26c593182c358Jamie Gennis# Note that reducing this latency makes it more likely for the applications 64782f2ad37538c8decfbe8cac48f26c593182c358Jamie Gennis# to not have their window content image ready in time. When this happens 65782f2ad37538c8decfbe8cac48f26c593182c358Jamie Gennis# the latency will end up being an additional vsync period, and animations 66782f2ad37538c8decfbe8cac48f26c593182c358Jamie Gennis# will hiccup. Therefore, this latency should be tuned somewhat 67782f2ad37538c8decfbe8cac48f26c593182c358Jamie Gennis# conservatively (or at least with awareness of the trade-off being made). 68782f2ad37538c8decfbe8cac48f26c593182c358Jamie GennisVSYNC_EVENT_PHASE_OFFSET_NS := 0 69782f2ad37538c8decfbe8cac48f26c593182c358Jamie Gennis 703c9fae2840862c788554b129fa405a7d06594b5dNick KralevichTARGET_USERIMAGES_USE_EXT4 := true 71865ffd4efedb09c19ad50342a05dced65f5f1117Nick KralevichBOARD_SYSTEMIMAGE_PARTITION_SIZE := 576716800 7227a026c802ec10a71cca3530270e2f0433de3569Tsu Chiang ChuangBOARD_USERDATAIMAGE_PARTITION_SIZE := 576716800 733c9fae2840862c788554b129fa405a7d06594b5dNick KralevichBOARD_CACHEIMAGE_PARTITION_SIZE := 69206016 743c9fae2840862c788554b129fa405a7d06594b5dNick KralevichBOARD_CACHEIMAGE_FILE_SYSTEM_TYPE := ext4 753c9fae2840862c788554b129fa405a7d06594b5dNick KralevichBOARD_FLASH_BLOCK_SIZE := 512 763c9fae2840862c788554b129fa405a7d06594b5dNick KralevichTARGET_USERIMAGES_SPARSE_EXT_DISABLED := true 771d5352eaa3983736d1374c9c4f0f9d075cc8b4c7Stephen Smalley 781d5352eaa3983736d1374c9c4f0f9d075cc8b4c7Stephen SmalleyBOARD_SEPOLICY_DIRS += build/target/board/generic/sepolicy 7961c7107df3c20a1298c8ad92f88f1e907e2242b2Stephen SmalleyBOARD_SEPOLICY_UNION += \ 8061c7107df3c20a1298c8ad92f88f1e907e2242b2Stephen Smalley bootanim.te \ 81768ff518f03a0d0cb181d7a5b7f7aff0038ccd78Stephen Smalley device.te \ 8261c7107df3c20a1298c8ad92f88f1e907e2242b2Stephen Smalley domain.te \ 83768ff518f03a0d0cb181d7a5b7f7aff0038ccd78Stephen Smalley file.te \ 84768ff518f03a0d0cb181d7a5b7f7aff0038ccd78Stephen Smalley file_contexts \ 85768ff518f03a0d0cb181d7a5b7f7aff0038ccd78Stephen Smalley qemud.te \ 86768ff518f03a0d0cb181d7a5b7f7aff0038ccd78Stephen Smalley rild.te \ 87b20966f803e18c4cfbeb46af784fc2a553dd21b2Nick Kralevich shell.te \ 88768ff518f03a0d0cb181d7a5b7f7aff0038ccd78Stephen Smalley surfaceflinger.te \ 8938a261a82b671dadd370ae0ebdc3de36013de05ddcashman system_server.te 904e5e5825222dc5f3608a4b8a61c0ff46f0cdceceDeepanshu Gupta 914e5e5825222dc5f3608a4b8a61c0ff46f0cdceceDeepanshu Guptaifeq ($(TARGET_PRODUCT),sdk) 924e5e5825222dc5f3608a4b8a61c0ff46f0cdceceDeepanshu Gupta # include an expanded selection of fonts for the SDK. 934e5e5825222dc5f3608a4b8a61c0ff46f0cdceceDeepanshu Gupta EXTENDED_FONT_FOOTPRINT := true 944e5e5825222dc5f3608a4b8a61c0ff46f0cdceceDeepanshu Guptaendif 95