af29205167
The recovery_toolkit/recovery_ui merge broke ninja generation for the whole tree (everything runs at analysis time, even for modules nothing builds). Fixes, in the order the errors surfaced: - BoardConfigSoong.mk: export TW_THEME=landscape_hdpi via the twrpVarsPlugin soong config namespace (RPi 4/5 are 1080p HDMI); libguitwrp's theme selection hard-exits analysis when unset - soong/copy.go: re-anchor runtime.Caller path derivation — the 'bootable' anchor never matches at vendor/pawlet/recovery_ui and the slice paniced; recovery dir is now derived relative to this file - scrypt sources.bp + libpixelflinger: hoist arch.arm.neon.* contents into plain arm blocks — the neon variant was removed in android-16 Soong (NEON is mandatory on armv7-a+) - recovery_ui/Android.bp: port twrp_defaults verbatim from android_vendor_twrp (android-14.1, build/soong) — it never lived in bootable/recovery; pure soong_config machinery, contributes no flags until twrpGlobalVars vars are set - gui/Android.bp: drop libaosprecovery from libguitwrp's shared_libs — the module doesn't exist (TWRP's forked install/*.cpp was never ported) and an undefined dep is analysis-fatal; compile is unaffected (static lib), the gap moves to link time and is documented - recovery_ui/Android.bp: librecovery_ui_pawlet_twrp shared -> static (librecovery_ui_ext absorbs TARGET_RECOVERY_UI_LIB via whole_static_libs) and libpixelflinger_twrp moved to static_libs - scrypt Android.bp + libminuitwrp_defaults.go: rewrite leftover bootable/recovery/* self-referential paths to the new vendor/pawlet locations Requires the libminadbd_headers visibility patch in the patches repo. m nothing now completes for pawlet_rpi4-bp4a-userdebug.
25 lines
1.1 KiB
Makefile
25 lines
1.1 KiB
Makefile
#
|
|
# Copyright (C) 2025 oxmc / PawletOS
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
#
|
|
# Exports build variables from Make into Soong so vendor/pawlet
|
|
# modules can reference them via soong_config_variables.
|
|
#
|
|
|
|
# Export boot control block device paths so the HAL can be
|
|
# configured at build time if needed (currently runtime via props).
|
|
$(call add_soong_config_namespace,pawlet_bootcontrol)
|
|
|
|
# RPi boot partition layout
|
|
$(call soong_config_set,pawlet_bootcontrol,misc_device,/dev/block/by-name/misc)
|
|
$(call soong_config_set,pawlet_bootcontrol,boot_a_device,/dev/block/by-name/boot_a)
|
|
$(call soong_config_set,pawlet_bootcontrol,boot_b_device,/dev/block/by-name/boot_b)
|
|
|
|
# TWRP GUI engine (recovery_ui). Its libguitwrp Soong plugin reads TWRP's
|
|
# make vars through the twrpVarsPlugin namespace and selects a theme during
|
|
# analysis — with TW_THEME unset it aborts ninja generation for the ENTIRE
|
|
# tree, even when nothing builds the module. RPi 4/5 boot HDMI at 1080p,
|
|
# so: landscape (1920 > 1080) + hdpi (width > 1280).
|
|
$(call add_soong_config_namespace,twrpVarsPlugin)
|
|
$(call soong_config_set,twrpVarsPlugin,TW_THEME,landscape_hdpi)
|