TARGET_ build variables MUST NOT be set up in device* files. In the device* files, the PRODUCT_ variables are not defined properly and only after the build system finishes parsing all the product files, we can set up TARGET_ vars based on PRODUCT_ vars. During the parsing of the BoardConfig files, the PRODUCT_ vars are defined and their values can not be changed. Test: Built and tested husky-next and husky-pgagnostic targets $ source build/envsetup.sh $ lunch husky-trunk_staging-userdebug $ get_build_var PRODUCT_16K_DEVELOPER_OPTION true $ get_build_var TARGET_BOOTS_16K $ get_build_var TARGET_USERDATAIMAGE_FILE_SYSTEM_TYPE $ get_build_var TARGET_KERNEL_DIR device/google/shusky-kernels/6.1/trunk-12034122 $ get_build_var BOARD_KERNEL_PATH_16K device/google/shusky-kernels/6.1/trunk-12034122/16kb/Image.lz4 $ get_build_var TARGET_KERNEL_DIR_16K device/google/shusky-kernels/6.1/trunk-12034122/16kb $ get_build_var ADDITIONAL_PRODUCT_PROPERTIES | grep 16k ro.product.build.16k_page.enabled=true $ get_build_var PRODUCT_COPY_FILES | grep efs device/google/zuma/conf/init.efs.16k.rc:vendor/etc/init/init.efs.rc $ get_build_var PRODUCT_SOONG_NAMESPACES | grep insmod device/google/gs-common/insmod/4k Bug: 350529323 Bug: 346868433 Flag: EXEMPT bugfix Change-Id: Ic1da7f21b696f1659ef7d7b0b7089c3d2c03103e
37 lines
No EOL
1.6 KiB
Makefile
37 lines
No EOL
1.6 KiB
Makefile
#
|
|
# Copyright (C) 2024 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.
|
|
#
|
|
|
|
ifeq ($(TARGET_BOOTS_16K),true)
|
|
# Configures the 16kb kernel directory.
|
|
TARGET_KERNEL_DIR := $(TARGET_KERNEL_DIR)/16kb
|
|
|
|
else ifeq ($(PRODUCT_16K_DEVELOPER_OPTION),true)
|
|
# Configures the 16kb kernel and modules for OTA updates.
|
|
TARGET_KERNEL_DIR_16K := $(TARGET_KERNEL_DIR)/16kb
|
|
BOARD_KERNEL_PATH_16K := $(TARGET_KERNEL_DIR_16K)/Image.lz4
|
|
|
|
BOARD_KERNEL_MODULES_16K += $(file < $(TARGET_KERNEL_DIR_16K)/vendor_kernel_boot.modules.load)
|
|
BOARD_KERNEL_MODULES_16K += $(file < $(TARGET_KERNEL_DIR_16K)/system_dlkm.modules.load)
|
|
BOARD_KERNEL_MODULES_16K += $(file < $(TARGET_KERNEL_DIR_16K)/vendor_dlkm.modules.load)
|
|
BOARD_KERNEL_MODULES_16K := $(foreach module,$(BOARD_KERNEL_MODULES_16K),$(TARGET_KERNEL_DIR_16K)/$(notdir $(module)))
|
|
|
|
# Shusky targets use exynos-bcm_dbg.ko module instead of bcm_dbg.ko.
|
|
BOARD_KERNEL_MODULES_16K := $(filter-out %/bcm_dbg.ko,$(BOARD_KERNEL_MODULES_16K))
|
|
BOARD_KERNEL_MODULES_LOAD_16K := $(foreach module,$(BOARD_KERNEL_MODULES_16K),$(notdir $(module)))
|
|
|
|
BOARD_16K_OTA_USE_INCREMENTAL := true
|
|
BOARD_16K_OTA_MOVE_VENDOR := true
|
|
endif |