blob: d605e6bb52815225438b47cbe1532465a694610f [file] [log] [blame]
Ben Chengdb4fc202013-10-04 16:02:59 -07001# Copyright (C) 2013 The Android Open Source Project
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14#
15
16# The generic product target doesn't have any hardware-specific pieces.
17TARGET_NO_BOOTLOADER := true
18TARGET_NO_KERNEL := true
Colin Cross4f0eb7d2014-01-21 19:35:38 -080019TARGET_ARCH := arm64
Ben Chengdb4fc202013-10-04 16:02:59 -070020TARGET_ARCH_VARIANT := armv8-a
21TARGET_CPU_VARIANT := generic
Colin Cross4f0eb7d2014-01-21 19:35:38 -080022TARGET_CPU_ABI := arm64-v8a
Yahan Zhou12b53952018-02-21 15:41:51 -080023TARGET_BOOTLOADER_BOARD_NAME := goldfish_$(TARGET_ARCH)
Ben Chengdb4fc202013-10-04 16:02:59 -070024
Colin Cross930b5fb2014-01-28 14:35:16 -080025TARGET_2ND_ARCH := arm
Narayan Kamath24b78402014-08-19 13:03:01 +010026TARGET_2ND_CPU_ABI := armeabi-v7a
27TARGET_2ND_CPU_ABI2 := armeabi
Narayan Kamath8dc227f2014-08-18 19:20:07 +010028
Yabin Cui1fe7ac72017-10-24 12:44:13 -070029ifneq ($(TARGET_BUILD_APPS)$(filter cts sdk,$(MAKECMDGOALS)),)
Narayan Kamath8dc227f2014-08-18 19:20:07 +010030# DO NOT USE
31# DO NOT USE
32#
33# This architecture / CPU variant must NOT be used for any 64 bit
34# platform builds. It is the lowest common denominator required
Ying Wangb6f60d52014-10-21 21:20:41 -070035# to build an unbundled application or cts for all supported 32 and 64 bit
Narayan Kamath8dc227f2014-08-18 19:20:07 +010036# platforms.
37#
38# If you're building a 64 bit platform (and not an application) the
Isaac Chenf5af8502017-08-23 10:58:57 +000039# ARM-v8 specification allows you to assume all the features available in an
40# armv7-a-neon CPU. You should set the following as 2nd arch/cpu variant:
Narayan Kamath8dc227f2014-08-18 19:20:07 +010041#
Isaac Chenf5af8502017-08-23 10:58:57 +000042# TARGET_2ND_ARCH_VARIANT := armv8-a
43# TARGET_2ND_CPU_VARIANT := generic
Narayan Kamath8dc227f2014-08-18 19:20:07 +010044#
45# DO NOT USE
46# DO NOT USE
Narayan Kamath3930fbd2014-08-08 18:26:44 +010047TARGET_2ND_ARCH_VARIANT := armv7-a
Narayan Kamath8dc227f2014-08-18 19:20:07 +010048# DO NOT USE
49# DO NOT USE
Narayan Kamath3930fbd2014-08-08 18:26:44 +010050TARGET_2ND_CPU_VARIANT := generic
Narayan Kamath8dc227f2014-08-18 19:20:07 +010051# DO NOT USE
52# DO NOT USE
53else
Isaac Chenf5af8502017-08-23 10:58:57 +000054TARGET_2ND_ARCH_VARIANT := armv8-a
55TARGET_2ND_CPU_VARIANT := generic
Narayan Kamath8dc227f2014-08-18 19:20:07 +010056endif
Colin Cross930b5fb2014-01-28 14:35:16 -080057
Narayan Kamath24b78402014-08-19 13:03:01 +010058
Colin Cross930b5fb2014-01-28 14:35:16 -080059TARGET_USES_64_BIT_BINDER := true
60
Ben Chengdb4fc202013-10-04 16:02:59 -070061# no hardware camera
62USE_CAMERA_STUB := true
63
64# Enable dex-preoptimization to speed up the first boot sequence
65# of an SDK AVD. Note that this operation only works on Linux for now
66ifeq ($(HOST_OS),linux)
67 ifeq ($(WITH_DEXPREOPT),)
68 WITH_DEXPREOPT := true
Mathieu Chartierf834ecc2017-08-28 14:19:35 -070069 WITH_DEXPREOPT_BOOT_IMG_AND_SYSTEM_SERVER_ONLY := false
Ben Chengdb4fc202013-10-04 16:02:59 -070070 endif
71endif
72
Lingfeng Yang450cd0b2017-03-17 10:47:19 -070073TARGET_USES_HWC2 := true
Lingfeng Yanga70b40f2017-05-09 15:33:26 -070074NUM_FRAMEBUFFER_SURFACE_BUFFERS := 3
Lingfeng Yang450cd0b2017-03-17 10:47:19 -070075
Ben Chengdb4fc202013-10-04 16:02:59 -070076# Build OpenGLES emulation host and guest libraries
77BUILD_EMULATOR_OPENGL := true
Bo Huf0d50bb2017-08-01 19:02:09 +000078BUILD_QEMU_IMAGES := true
Ben Chengdb4fc202013-10-04 16:02:59 -070079
Ben Chengdb4fc202013-10-04 16:02:59 -070080# Build and enable the OpenGL ES View renderer. When running on the emulator,
81# the GLES renderer disables itself if host GL acceleration isn't available.
82USE_OPENGL_RENDERER := true
83
84TARGET_USERIMAGES_USE_EXT4 := true
Yahan Zhouad9bf7b2016-11-04 09:40:34 -070085BOARD_SYSTEMIMAGE_PARTITION_SIZE := 2684354560 # 2.5 GB
Colin Crossd46c7382014-04-02 09:16:37 -070086BOARD_USERDATAIMAGE_PARTITION_SIZE := 576716800
Yahan Zhou3afe69d2017-04-21 12:14:44 -070087TARGET_COPY_OUT_VENDOR := vendor
88# ~100 MB vendor image. Please adjust system image / vendor image sizes
89# when finalizing them.
90BOARD_VENDORIMAGE_PARTITION_SIZE := 100000000
91BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := ext4
Ben Chengdb4fc202013-10-04 16:02:59 -070092BOARD_FLASH_BLOCK_SIZE := 512
93TARGET_USERIMAGES_SPARSE_EXT_DISABLED := true
bohu813249b2017-08-10 00:20:01 -070094DEVICE_MATRIX_FILE := device/generic/goldfish/compatibility_matrix.xml
Stephen Smalley901d7922015-04-29 09:55:08 -040095
bohu4a6cc6a2017-06-22 22:03:32 -070096BOARD_PROPERTY_OVERRIDES_SPLIT_ENABLED := true
Stephen Smalley901d7922015-04-29 09:55:08 -040097BOARD_SEPOLICY_DIRS += build/target/board/generic/sepolicy
bohue9046cb2017-11-28 09:24:02 -080098
Bjoern Johansson12fd2d82017-05-04 10:51:02 -070099# Wifi.
Bjoern Johansson275bdb02017-11-14 17:10:44 -0800100BOARD_WLAN_DEVICE := emulator
Bjoern Johansson12fd2d82017-05-04 10:51:02 -0700101BOARD_HOSTAPD_DRIVER := NL80211
102BOARD_WPA_SUPPLICANT_DRIVER := NL80211
103BOARD_HOSTAPD_PRIVATE_LIB := lib_driver_cmd_simulated
104BOARD_WPA_SUPPLICANT_PRIVATE_LIB := lib_driver_cmd_simulated
105WPA_SUPPLICANT_VERSION := VER_0_8_X
106WIFI_DRIVER_FW_PATH_PARAM := "/dev/null"
107WIFI_DRIVER_FW_PATH_STA := "/dev/null"
108WIFI_DRIVER_FW_PATH_AP := "/dev/null"
109
bohue9046cb2017-11-28 09:24:02 -0800110# Enable A/B update
111TARGET_NO_RECOVERY := true
112BOARD_BUILD_SYSTEM_ROOT_IMAGE := true
Steven Morelandadb7d432018-03-15 13:13:26 -0700113
114BOARD_VNDK_VERSION := current