From 621523db6238fff5362aded06abc6c9e78170a22 Mon Sep 17 00:00:00 2001 From: David Given Date: Sun, 31 Mar 2024 21:30:26 +0200 Subject: [PATCH] Try not to build fallback packages unless necessary. --- build/pkg.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/build/pkg.py b/build/pkg.py index f7677bca..8b41a9f4 100644 --- a/build/pkg.py +++ b/build/pkg.py @@ -16,9 +16,6 @@ HOST_PACKAGES := $(shell $(HOST_PKG_CONFIG) --list-all | cut -d' ' -f1 | sort) @Rule def package(self, name, package=None, fallback: Target = None): - self.ins = [] - self.outs = [] - emit("ifeq ($(filter %s, $(PACKAGES)),)" % package) if fallback: emit( @@ -29,7 +26,7 @@ def package(self, name, package=None, fallback: Target = None): f"PACKAGE_LDFLAGS_{package} := ", bubbledattrsof(fallback, "caller_ldflags"), ) - self.outs = filenamesof(fallback) + emit(f"PACKAGE_DEPS_{package} := ", filenamesof(fallback)) else: emit(f"$(error Required package '{package}' not installed.)") emit("else") @@ -39,6 +36,7 @@ def package(self, name, package=None, fallback: Target = None): emit( f"PACKAGE_LDFLAGS_{package} := $(shell $(PKG_CONFIG) --libs {package})" ) + emit(f"PACKAGE_DEPS_{package} :=") emit("endif") self.attr.caller_cflags = [f"$(PACKAGE_CFLAGS_{package})"] @@ -46,6 +44,9 @@ def package(self, name, package=None, fallback: Target = None): self.traits.add("clibrary") self.traits.add("cheaders") + self.ins = [] + self.outs = [f"$(PACKAGE_DEPS_{package})"] + @Rule def hostpackage(self, name, package=None, fallback: Target = None):