projects-dir.mk: Add JW_PKG_PY_REQUIRED_OS_PKG

Add and use JW_PKG_PY_REQUIRED_OS_PKG. The variable and its use effectively
ties more targets to act on the same package set as the make all, influenced
by the contents of $(PKG_RELATIONS_BUILD):

  echo-build-deps
  echo-install-deps
  echo-release-deps
  pkg-install-build-deps
  pkg-install-release-deps

Signed-off-by: Jan Lindemann <jan@janware.com>
This commit is contained in:
Jan Lindemann 2026-09-22 09:16:42 +02:00
commit fa8b9d5156
Signed by: Jan Lindemann
GPG key ID: 3750640C9E25DD61

View file

@ -126,6 +126,7 @@ endif
JW_PKG_PY_PROJECTS = $(JW_PKG_PY) projects
PKG_RELATIONS_BUILD ?= requires
JW_PKG_PY_BUILD = $(JW_PKG_PY_PROJECTS) build --pkg-relations "$(PKG_RELATIONS_BUILD)" $(JW_PKG_PY_EXTRA_BUILD_OPTS)
JW_PKG_PY_REQUIRED_OS_PKG = $(JW_PKG_PY_PROJECTS) required-os-pkg --quote --skip-excluded --pkg-relations "$(PKG_RELATIONS_BUILD)"
PKG_MANAGER ?= $(TIME) $(JW_PKG_PY) --interactive=$(INTERACTIVE) pkg
ifneq ($(origin PROJECTS_DIR_REMOTE_BASE),undefined)
@ -199,13 +200,13 @@ build-order-%: $(filter-out $(UNAVAILABLE_TARGETS),pull.done)
build-order: build-order-all
echo-build-deps:
$(Q)$(JW_PKG_PY_PROJECTS) required-os-pkg --quote --skip-excluded "build" $(TARGET_PROJECTS)
$(Q)$(JW_PKG_PY_REQUIRED_OS_PKG) "build" $(TARGET_PROJECTS)
echo-install-deps:
$(Q)$(JW_PKG_PY_PROJECTS) required-os-pkg --quote --skip-excluded "build,run" $(TARGET_PROJECTS)
$(Q)$(JW_PKG_PY_REQUIRED_OS_PKG) "build,run" $(TARGET_PROJECTS)
echo-release-deps:
$(Q)$(JW_PKG_PY_PROJECTS) required-os-pkg --quote --skip-excluded "build,run,release" $(TARGET_PROJECTS)
$(Q)$(JW_PKG_PY_REQUIRED_OS_PKG) "build,run,release" $(TARGET_PROJECTS)
echo-os:
$(Q)$(JW_PKG_PY) platform info
@ -262,10 +263,10 @@ pkg-manager-dup:
$(PKG_MANAGER) dup
pkg-install-build-deps:
$(PKG_MANAGER) install $(shell $(JW_PKG_PY_PROJECTS) required-os-pkg --quote --skip-excluded "build" $(TARGET_PROJECTS))
$(PKG_MANAGER) install $(shell $(JW_PKG_PY_REQUIRED_OS_PKG) "build" $(TARGET_PROJECTS))
pkg-install-release-deps:
$(PKG_MANAGER) install $(shell $(JW_PKG_PY_PROJECTS) required-os-pkg --quote --skip-excluded "build,run,release" $(TARGET_PROJECTS))
$(PKG_MANAGER) install $(shell $(JW_PKG_PY_REQUIRED_OS_PKG) "build,run,release" $(TARGET_PROJECTS))
pkg-release-reinstall: $(PREREQ_RELEASE)