[openwrt/openwrt] build: introduce support to declare skip package

LEDE Commits lede-commits at lists.infradead.org
Mon Oct 28 16:08:38 PDT 2024


ansuel pushed a commit to openwrt/openwrt.git, branch main:
https://git.openwrt.org/377b66990b9718ea2a508f86b5c9f520ea31639f

commit 377b66990b9718ea2a508f86b5c9f520ea31639f
Author: Christian Marangi <ansuelsmth at gmail.com>
AuthorDate: Sat Oct 26 22:57:46 2024 +0200

    build: introduce support to declare skip package
    
    It seems some target started declaring package in DEVICE_PACKAGES just
    to call InstallDev and generate binary for the image firmware.
    
    This is very much used by layerscape target where trusted-firmware-a and
    dependency are called for final image generation.
    
    This is problematic for APK since it's more sensible to non exisiting
    package.
    
    To handle this, introduce a prefix '~' for a package that will signal to
    build the package but not install it in the final image.
    
    Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
---
 include/image.mk           | 2 +-
 scripts/target-metadata.pl | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/include/image.mk b/include/image.mk
index 4c53247eda..c476f6674f 100644
--- a/include/image.mk
+++ b/include/image.mk
@@ -326,7 +326,7 @@ ifdef CONFIG_TARGET_ROOTFS_CPIOGZ
 endif
 
 mkfs_packages = $(filter-out @%,$(PACKAGES_$(call param_get,pkg,pkg=$(target_params))))
-mkfs_packages_add = $(foreach pkg,$(filter-out -%,$(mkfs_packages)),$(pkg)$(call GetABISuffix,$(pkg)))
+mkfs_packages_add = $(foreach pkg,$(filter-out -% ~%,$(mkfs_packages)),$(pkg)$(call GetABISuffix,$(pkg)))
 mkfs_packages_remove = $(foreach pkg,$(patsubst -%,%,$(filter -%,$(mkfs_packages))),$(pkg)$(call GetABISuffix,$(pkg)))
 mkfs_cur_target_dir = $(call mkfs_target_dir,pkg=$(target_params))
 
diff --git a/scripts/target-metadata.pl b/scripts/target-metadata.pl
index e1d4ef242b..0c17e2e327 100755
--- a/scripts/target-metadata.pl
+++ b/scripts/target-metadata.pl
@@ -146,7 +146,7 @@ sub merge_package_lists($$) {
 	my %pkgs;
 
 	foreach my $pkg (@$list1, @$list2) {
-		$pkgs{$pkg} = 1;
+		$pkgs{$pkg =~ s/^~//r} = 1;
 	}
 	foreach my $pkg (keys %pkgs) {
 		push @l, $pkg unless ($pkg =~ /^-/ or $pkgs{"-$pkg"});




More information about the lede-commits mailing list