Просмотр исходного кода

core: allow external Config.in/makefile code to be integrated

This commit allows the BR2_EXTERNAL directory to contain Config.in and
Makefile code, which gets integrated into the Buildroot build logic:

 - Buildroot automatically includes the $BR2_EXTERNAL/Config.in in the
   top-level configuration menu.

 - Buildroot automatically includes the BR2_EXTERNAL/external.mk in
   the build logic, so it can for example be used to include other .mk
   files that define package recipes.

This is typically intended to be used to create target packages in the
BR2_EXTERNAL directory, but can also be used for bootloaders, host
packages, or other custom make logic.

We also add a dummy Config.in file in support/dummy-external/ to
ensure that the source "$BR2_EXTERNAL/Config.in" line will point to an
existing file even when BR2_EXTERNAL is not used by the user.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Tested-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Acked-by: Ryan Barnett <rjbarnet@rockwellcollins.com>
Tested-by: "Samuel Martin" <s.martin49@gmail.com>
Acked-by: "Samuel Martin" <s.martin49@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Thomas Petazzoni 10 лет назад
Родитель
Сommit
8eb8aaf904
4 измененных файлов с 4 добавлено и 0 удалено
  1. 2 0
      Config.in
  2. 2 0
      Makefile
  3. 0 0
      support/dummy-external/Config.in
  4. 0 0
      support/dummy-external/external.mk

+ 2 - 0
Config.in

@@ -492,3 +492,5 @@ source "boot/Config.in"
 source "package/Config.in.host"
 
 source "Config.in.legacy"
+
+source "$BR2_EXTERNAL/Config.in"

+ 2 - 0
Makefile

@@ -364,6 +364,8 @@ include boot/common.mk
 include linux/linux.mk
 include system/system.mk
 
+include $(BR2_EXTERNAL)/external.mk
+
 TARGETS+=target-finalize
 
 ifeq ($(BR2_ENABLE_LOCALE_PURGE),y)

+ 0 - 0
support/dummy-external/Config.in


+ 0 - 0
support/dummy-external/external.mk