package/pkg-generic: add check that target variant is defined before host variant
authorThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Sun, 29 Apr 2018 12:15:22 +0000 (14:15 +0200)
committerThomas Petazzoni <thomas.petazzoni@bootlin.com>
Mon, 30 Apr 2018 15:43:49 +0000 (17:43 +0200)
Update the documentation accordingly.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[yann.morin.1998@free.fr: slight rephrasing in error message, update manual]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
docs/manual/adding-packages-generic.txt
package/pkg-generic.mk

index 62906d92bbe3f8e8f71b01efc52fa1cfb81f0bae..7e1f2467529c1567ad7246f73adc55da7a2e2895 100644 (file)
@@ -179,8 +179,10 @@ some tools to be installed on the host. If the package name is
 variables of other packages, if they depend on +libfoo+ or
 +host-libfoo+.
 
-The call to the +generic-package+ and/or +host-generic-package+ macro *must* be
-at the end of the +.mk+ file, after all variable definitions.
+The call to the +generic-package+ and/or +host-generic-package+ macro
+*must* be at the end of the +.mk+ file, after all variable definitions.
+The call to +host-generic-package+ *must* be after the call to
++generic-package+, if any.
 
 For the target package, the +generic-package+ uses the variables defined by
 the .mk file and prefixed by the uppercased package name:
index 1c9dd1d7347a6f47aa41a319d6fac9a49d30a50e..bd47ca1964cc0487dfb4d64b18b4ef139036384e 100644 (file)
@@ -646,6 +646,12 @@ $(2)_POST_LEGAL_INFO_HOOKS      ?=
 $(2)_TARGET_FINALIZE_HOOKS      ?=
 $(2)_ROOTFS_PRE_CMD_HOOKS       ?=
 
+ifeq ($$($(2)_TYPE),target)
+ifneq ($$(HOST_$(2)_KCONFIG_VAR),)
+$$(error "Package $(1) defines host variant before target variant!")
+endif
+endif
+
 # human-friendly targets and target sequencing
 $(1):                  $(1)-install