64-bit GSI requires support both 64_32-bit and 64-bit devices at the same time. Add a new variable TARGET_DYNAMIC_64_32_DRMSERVER to put drmserver_dynamic.rc into GSI. Which starts 64-bit drmserver if ro.zygote is zygote64. Otherwise, it keeps the original behavior to start 32-bit drmserver. Bug: 282603373 Test: make gsi_arm64-user; Check system/etc/init Test: make gsi_arm-user; Check systen/etc/init Change-Id: I874cee00a066086f565e044549ad40c6ab5d62b0 Merged-In: I874cee00a066086f565e044549ad40c6ab5d62b0
73 lines
2.4 KiB
Makefile
73 lines
2.4 KiB
Makefile
# Copyright (C) 2018 The Android Open Source Project
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
#
|
|
|
|
# arm64 emulator specific definitions
|
|
TARGET_ARCH := arm64
|
|
TARGET_ARCH_VARIANT := armv8-a
|
|
TARGET_CPU_VARIANT := generic
|
|
TARGET_CPU_ABI := arm64-v8a
|
|
|
|
TARGET_2ND_ARCH := arm
|
|
TARGET_2ND_CPU_ABI := armeabi-v7a
|
|
TARGET_2ND_CPU_ABI2 := armeabi
|
|
|
|
ifneq ($(TARGET_BUILD_APPS)$(filter cts sdk,$(MAKECMDGOALS)),)
|
|
# DO NOT USE
|
|
# DO NOT USE
|
|
#
|
|
# This architecture / CPU variant must NOT be used for any 64 bit
|
|
# platform builds. It is the lowest common denominator required
|
|
# to build an unbundled application or cts for all supported 32 and 64 bit
|
|
# platforms.
|
|
#
|
|
# If you're building a 64 bit platform (and not an application) the
|
|
# ARM-v8 specification allows you to assume all the features available in an
|
|
# armv7-a-neon CPU. You should set the following as 2nd arch/cpu variant:
|
|
#
|
|
# TARGET_2ND_ARCH_VARIANT := armv8-a
|
|
# TARGET_2ND_CPU_VARIANT := generic
|
|
#
|
|
# DO NOT USE
|
|
# DO NOT USE
|
|
TARGET_2ND_ARCH_VARIANT := armv7-a-neon
|
|
# DO NOT USE
|
|
# DO NOT USE
|
|
TARGET_2ND_CPU_VARIANT := generic
|
|
# DO NOT USE
|
|
# DO NOT USE
|
|
else
|
|
TARGET_2ND_ARCH_VARIANT := armv8-a
|
|
TARGET_2ND_CPU_VARIANT := generic
|
|
endif
|
|
|
|
# Include 64-bit mediaserver to support 64-bit only devices
|
|
TARGET_DYNAMIC_64_32_MEDIASERVER := true
|
|
# Include 64-bit drmserver to support 64-bit only devices
|
|
TARGET_DYNAMIC_64_32_DRMSERVER := true
|
|
|
|
include build/make/target/board/BoardConfigGsiCommon.mk
|
|
|
|
# Some vendors still haven't cleaned up all device specific directories under
|
|
# root!
|
|
|
|
# TODO(b/111434759, b/111287060) SoC specific hacks
|
|
BOARD_ROOT_EXTRA_SYMLINKS += /vendor/lib/dsp:/dsp
|
|
BOARD_ROOT_EXTRA_SYMLINKS += /mnt/vendor/persist:/persist
|
|
BOARD_ROOT_EXTRA_SYMLINKS += /vendor/firmware_mnt:/firmware
|
|
|
|
# TODO(b/36764215): remove this setting when the generic system image
|
|
# no longer has QCOM-specific directories under /.
|
|
BOARD_SEPOLICY_DIRS += build/make/target/board/generic_arm64/sepolicy
|