toplevel.mk: implement logic to invalidate targetinfo with some config
authorChristian Marangi <ansuelsmth@gmail.com>
Fri, 24 May 2024 18:13:49 +0000 (20:13 +0200)
committerChristian Marangi <ansuelsmth@gmail.com>
Tue, 11 Jun 2024 21:58:16 +0000 (23:58 +0200)
commit9a52ec4fa0921cacf4c909ed1f542aab8f7502e6
tree8038ec3c4468b88b16ac698602637a96eafa82ab
parent98703bf45833b915a0b835ae7ab7d419244a8840
toplevel.mk: implement logic to invalidate targetinfo with some config

Implement some logic to invalidate targetinfo files in tmp with the
changing of some config.

Some config might affect DEFAULT_PACKAGES list but DEFAULT_PACKAGES is
only evaluated once. This cause the interesting scenario where someone
install feeds packages, targetinfo is evaluated in tmp and then add some
config like CONFIG_USE_APK. Using make defconfig will still select OPKG
as default package as DEFAULT_PACKAGES in targetinfo has been already
evaluated in the feeds install and is never updated.

To handle this add some logic in toplevel.mk to cache the current state
of these special config and wipe targetinfo when these change.

This cause the targetinfo to be reevaluated and handle this REALLY
corner case.

Link: https://github.com/openwrt/openwrt/pull/15543
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
include/target.mk
include/toplevel.mk