diff options
author | Michael Olbrich <m.olbrich@pengutronix.de> | 2018-10-06 21:43:30 +0200 |
---|---|---|
committer | Michael Olbrich <m.olbrich@pengutronix.de> | 2018-10-06 21:47:35 +0200 |
commit | 9c47a751759a3d39fca01e6b97f0a47799b396e8 (patch) | |
tree | 40302807a764b8152f87c0e05eb07d5785dd0bcc | |
parent | 6323439bf66f8a26e9c9ecd8cd2c12dc9f794279 (diff) | |
download | ptxdist-9c47a751759a3d39fca01e6b97f0a47799b396e8.tar.gz ptxdist-9c47a751759a3d39fca01e6b97f0a47799b396e8.tar.xz |
rules: introduce EXTRA_PACKAGES
Packages that are added to this list will be built normally during
'ptxdist go'. However, they are not installed into a root filesystem by
default.
This is useful for specialized packages that are only needed for specific
images.
Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
-rw-r--r-- | doc/multi_image_platforms.inc | 4 | ||||
-rw-r--r-- | rules/other/Toplevel.make | 7 | ||||
-rw-r--r-- | rules/post/ptxd_make_license_report.make | 16 | ||||
-rw-r--r-- | rules/post/world.make | 4 |
4 files changed, 22 insertions, 9 deletions
diff --git a/doc/multi_image_platforms.inc b/doc/multi_image_platforms.inc index 951c10779..2010f1262 100644 --- a/doc/multi_image_platforms.inc +++ b/doc/multi_image_platforms.inc @@ -44,13 +44,13 @@ There are two ways to mange the package list for the image: Manually create the package list by listing package names or using **make** macros to manipulate the default package list ``$(PTX_PACKAGES_INSTALL)``. - To add a single custom package, lazy packages can be uses. A lazy package + To add a single custom package, extra packages can be uses. An extra package is not added to ``$(PTX_PACKAGES_INSTALL)``. It is created by modifying the package rule like this: .. code-block:: make - LAZY_PACKAGES-$(PTXCONF_BOARD_A_EXTRA) += board-a-extra + EXTRA_PACKAGES-$(PTXCONF_BOARD_A_EXTRA) += board-a-extra The resulting package is then added explicitly to on image: diff --git a/rules/other/Toplevel.make b/rules/other/Toplevel.make index 82adf969f..e875d41e1 100644 --- a/rules/other/Toplevel.make +++ b/rules/other/Toplevel.make @@ -65,6 +65,10 @@ CROSS_PACKAGES-y+= $(CROSS_PACKAGES-y-y) CROSS_PACKAGES-m+= $(CROSS_PACKAGES-y-m) CROSS_PACKAGES- += $(CROSS_PACKAGES-y-) $(CROSS_PACKAGES--y) $(CROSS_PACKAGES--m) $(CROSS_PACKAGES--) +EXTRA_PACKAGES-y+= $(EXTRA_PACKAGES-y-y) +EXTRA_PACKAGES-m+= $(EXTRA_PACKAGES-y-m) +EXTRA_PACKAGES- += $(EXTRA_PACKAGES-y-) $(EXTRA_PACKAGES--y) $(EXTRA_PACKAGES--m) $(EXTRA_PACKAGES--) + LAZY_PACKAGES-y += $(LAZY_PACKAGES-y-y) LAZY_PACKAGES-m += $(LAZY_PACKAGES-y-m) LAZY_PACKAGES- += $(LAZY_PACKAGES-y-) $(LAZY_PACKAGES--y) $(LAZY_PACKAGES--m) $(LAZY_PACKAGES--) @@ -72,6 +76,7 @@ LAZY_PACKAGES- += $(LAZY_PACKAGES-y-) $(LAZY_PACKAGES--y) $(LAZY_PACKAGES--m) $( PACKAGES := $(PACKAGES-y) CROSS_PACKAGES := $(CROSS_PACKAGES-y) HOST_PACKAGES := $(HOST_PACKAGES-y) +EXTRA_PACKAGES := $(EXTRA_PACKAGES-y) LAZY_PACKAGES := $(LAZY_PACKAGES-y) # @@ -81,6 +86,7 @@ ifndef PTX_COLLECTION PACKAGES += $(PACKAGES-m) CROSS_PACKAGES += $(CROSS_PACKAGES-m) HOST_PACKAGES += $(HOST_PACKAGES-m) +EXTRA_PACKAGES += $(EXTRA_PACKAGES-m) LAZY_PACKAGES += $(LAZY_PACKAGES-m) endif @@ -88,6 +94,7 @@ PTX_PACKAGES_SELECTED := \ $(PACKAGES) \ $(CROSS_PACKAGES) \ $(HOST_PACKAGES) \ + $(EXTRA_PACKAGES) \ $(LAZY_PACKAGES) PTX_PACKAGES_INSTALL := \ diff --git a/rules/post/ptxd_make_license_report.make b/rules/post/ptxd_make_license_report.make index 4ddf83fd8..71bf1373e 100644 --- a/rules/post/ptxd_make_license_report.make +++ b/rules/post/ptxd_make_license_report.make @@ -13,18 +13,22 @@ PTX_PACKAGES_TOOLS := \ $(HOST_PACKAGES) \ $(LAZY_PACKAGES) +PTX_PACKAGES_TARGET := \ + $(PTX_PACKAGES_INSTALL) \ + $(EXTRA_PACKAGES) + PHONY += license-report license-report: \ $(REPORTDIR)/license-report.pdf \ $(REPORTDIR)/license-report-tools.pdf -$(REPORTDIR)/license-report.pdf: $(addprefix $(STATEDIR)/,$(addsuffix .report,$(PTX_PACKAGES_INSTALL))) +$(REPORTDIR)/license-report.pdf: $(addprefix $(STATEDIR)/,$(addsuffix .report,$(PTX_PACKAGES_TARGET))) @$(call targetinfo) @mkdir -p $(REPORTDIR) @$(image/env) \ ptx_license_target="$@" \ - ptxd_make_license_report $(sort $(PTX_PACKAGES_INSTALL)) + ptxd_make_license_report $(sort $(PTX_PACKAGES_TARGET)) @$(call finish) $(REPORTDIR)/license-report-tools.pdf: $(addprefix $(STATEDIR)/,$(addsuffix .report,$(PTX_PACKAGES_TOOLS))) @@ -51,12 +55,12 @@ $(PTXDIST_LICENSE_COMPLIANCE_OSS_ARCHIVE): $(addprefix $(STATEDIR)/,$(addsuffix @$(call finish) -$(RELEASEDIR)/license-compliance.pdf: $(addprefix $(STATEDIR)/,$(addsuffix .report,$(PTX_PACKAGES_INSTALL))) +$(RELEASEDIR)/license-compliance.pdf: $(addprefix $(STATEDIR)/,$(addsuffix .report,$(PTX_PACKAGES_TARGET))) @$(call targetinfo) @mkdir -p $(RELEASEDIR) @$(image/env) \ ptx_license_target="$@" \ - ptxd_make_license_compliance_pdf $(sort $(PTX_PACKAGES_INSTALL)) + ptxd_make_license_compliance_pdf $(sort $(PTX_PACKAGES_TARGET)) @$(call finish) PHONY += license-compliance-data @@ -64,12 +68,12 @@ PHONY += license-compliance-data license-compliance-data: \ $(RELEASEDIR)/license-compliance.yaml -$(RELEASEDIR)/license-compliance.yaml: $(addprefix $(STATEDIR)/,$(addsuffix .report,$(PTX_PACKAGES_INSTALL))) +$(RELEASEDIR)/license-compliance.yaml: $(addprefix $(STATEDIR)/,$(addsuffix .report,$(PTX_PACKAGES_TARGET))) @$(call targetinfo) @mkdir -p $(RELEASEDIR) @$(image/env) \ ptx_license_target="$@" \ - ptxd_make_license_compliance_yaml $(sort $(PTX_PACKAGES_INSTALL)) + ptxd_make_license_compliance_yaml $(sort $(PTX_PACKAGES_TARGET)) @$(call finish) # vim: syntax=make diff --git a/rules/post/world.make b/rules/post/world.make index 235a5f880..e592d5bc6 100644 --- a/rules/post/world.make +++ b/rules/post/world.make @@ -16,11 +16,13 @@ DEP_OUTPUT := $(STATEDIR)/depend.out WORLD_PACKAGES_TARGET := $(addprefix $(STATEDIR)/,$(addsuffix .targetinstall.post,$(PACKAGES))) WORLD_PACKAGES_HOST := $(addprefix $(STATEDIR)/,$(addsuffix .install.post,$(HOST_PACKAGES))) WORLD_PACKAGES_CROSS := $(addprefix $(STATEDIR)/,$(addsuffix .install.post,$(CROSS_PACKAGES))) +WORLD_PACKAGES_EXTRA := $(addprefix $(STATEDIR)/,$(addsuffix .install.post,$(EXTRA_PACKAGES))) $(STATEDIR)/world.targetinstall: \ $(WORLD_PACKAGES_TARGET) \ $(WORLD_PACKAGES_HOST) \ - $(WORLD_PACKAGES_CROSS) + $(WORLD_PACKAGES_CROSS) \ + $(WORLD_PACKAGES_EXTRA) @echo $(notdir $@) : $(notdir $^) >> $(DEP_OUTPUT) @$(call touch) |