summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Olbrich <m.olbrich@pengutronix.de>2018-10-06 21:43:30 +0200
committerMichael Olbrich <m.olbrich@pengutronix.de>2018-10-06 21:47:35 +0200
commit9c47a751759a3d39fca01e6b97f0a47799b396e8 (patch)
tree40302807a764b8152f87c0e05eb07d5785dd0bcc
parent6323439bf66f8a26e9c9ecd8cd2c12dc9f794279 (diff)
downloadptxdist-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.inc4
-rw-r--r--rules/other/Toplevel.make7
-rw-r--r--rules/post/ptxd_make_license_report.make16
-rw-r--r--rules/post/world.make4
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)