diff mbox

Fix selection of bootloaders from $(BR2_EXTERNAL)

Message ID 1436722021-6478-1-git-send-email-arnout@mind.be
State Accepted
Headers show

Commit Message

Arnout Vandecappelle July 12, 2015, 5:27 p.m. UTC
From: Eric Le Bihan <eric.le.bihan.dev@free.fr>

If a package is based on "generic-package", pkg-generic.mk will compute
the name of the Kconfig variable to use for checking if this package has
been selected by the user.

Unfortunately, this mechanism does not take into account the case where
a bootloader is declared in a $(BR2_EXTERNAL)/boot directory.

So, even if the bootloader has been selected, it will not be added to
$(TARGETS) and will not be built.

This patch fixes this issue.

[Arnout: use single filter line, also apply this to toolchain]

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Cc: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
---
v2: [Arnout]
  - Use a single filter line instead of copying it for BR2_EXTERNAL
    (Suggested by Thomas DS)
  - Add the same feature to toolchain (Suggested by Thomas DS)
---
 package/pkg-generic.mk | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Thomas De Schampheleire July 12, 2015, 7:03 p.m. UTC | #1
On Sun, Jul 12, 2015 at 7:27 PM, Arnout Vandecappelle (Essensium/Mind)
<arnout@mind.be> wrote:
> From: Eric Le Bihan <eric.le.bihan.dev@free.fr>
>
> If a package is based on "generic-package", pkg-generic.mk will compute
> the name of the Kconfig variable to use for checking if this package has
> been selected by the user.
>
> Unfortunately, this mechanism does not take into account the case where
> a bootloader is declared in a $(BR2_EXTERNAL)/boot directory.
>
> So, even if the bootloader has been selected, it will not be added to
> $(TARGETS) and will not be built.
>
> This patch fixes this issue.
>
> [Arnout: use single filter line, also apply this to toolchain]
>
> Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
> Cc: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>

Reviewed-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Thomas Petazzoni July 12, 2015, 7:54 p.m. UTC | #2
Dear Arnout Vandecappelle (Essensium/Mind),

On Sun, 12 Jul 2015 19:27:01 +0200, Arnout Vandecappelle
(Essensium/Mind) wrote:
> From: Eric Le Bihan <eric.le.bihan.dev@free.fr>
> 
> If a package is based on "generic-package", pkg-generic.mk will compute
> the name of the Kconfig variable to use for checking if this package has
> been selected by the user.
> 
> Unfortunately, this mechanism does not take into account the case where
> a bootloader is declared in a $(BR2_EXTERNAL)/boot directory.
> 
> So, even if the bootloader has been selected, it will not be added to
> $(TARGETS) and will not be built.
> 
> This patch fixes this issue.
> 
> [Arnout: use single filter line, also apply this to toolchain]
> 
> Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
> Cc: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
> ---
> v2: [Arnout]
>   - Use a single filter line instead of copying it for BR2_EXTERNAL
>     (Suggested by Thomas DS)
>   - Add the same feature to toolchain (Suggested by Thomas DS)
> ---
>  package/pkg-generic.mk | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)

Applied, thanks.

Thomas
diff mbox

Patch

diff --git a/package/pkg-generic.mk b/package/pkg-generic.mk
index 7000975..84c76e9 100644
--- a/package/pkg-generic.mk
+++ b/package/pkg-generic.mk
@@ -642,9 +642,9 @@  $$($(2)_TARGET_DIRCLEAN):		PKG=$(2)
 # kernel case, the bootloaders case, and the normal packages case.
 ifeq ($(1),linux)
 $(2)_KCONFIG_VAR = BR2_LINUX_KERNEL
-else ifneq ($$(filter boot/%,$(pkgdir)),)
+else ifneq ($$(filter boot/% $(BR2_EXTERNAL)/boot/%,$(pkgdir)),)
 $(2)_KCONFIG_VAR = BR2_TARGET_$(2)
-else ifneq ($$(filter toolchain/%,$(pkgdir)),)
+else ifneq ($$(filter toolchain/% $(BR2_EXTERNAL)/toolchain/%,$(pkgdir)),)
 $(2)_KCONFIG_VAR = BR2_$(2)
 else
 $(2)_KCONFIG_VAR = BR2_PACKAGE_$(2)