linux: allow br2-externals to provide their own Linux extensions
Signed-off-by: McCabe, Robert J <robert.mccabe@rockwellcollins.com> Acked-by: Yann E. MORIN <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
parent
a07dd0e0f5
commit
c26eafa96c
@ -219,6 +219,12 @@ BR2_ROOTFS_OVERLAY=$(BR2_EXTERNAL_BAR_42_PATH)/board/<boardname>/overlay/
|
||||
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE=$(BR2_EXTERNAL_BAR_42_PATH)/board/<boardname>/kernel.config
|
||||
----
|
||||
|
||||
===== Additional Linux kernel extensions
|
||||
|
||||
Additional Linux kernel extensions (see xref:linux-kernel-ext[]) can
|
||||
be added by storing them in the `linux/` directory at the root of a
|
||||
br2-external tree.
|
||||
|
||||
===== Example layout
|
||||
|
||||
Here is an example layout using all features of br2-external (the sample
|
||||
@ -315,6 +321,14 @@ illustration, of course):
|
||||
| |$(eval $(toolchain-external-package))
|
||||
| `----
|
||||
|
|
||||
|- linux/Config.ext.in
|
||||
| |config BR2_LINUX_KERNEL_EXT_EXAMPLE_DRIVER
|
||||
| | bool "example-external-driver"
|
||||
| | help
|
||||
| | Example external driver
|
||||
| |---
|
||||
|- linux/linux-ext-example-driver.mk
|
||||
|
|
||||
|- configs/my-board_defconfig
|
||||
| |BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_BAR_42_PATH)/patches/"
|
||||
| |BR2_ROOTFS_OVERLAY="$(BR2_EXTERNAL_BAR_42_PATH)/board/my-board/overlay/"
|
||||
|
@ -514,14 +514,19 @@ endef
|
||||
#
|
||||
# Note: our package infrastructure uses the full-path of the last-scanned
|
||||
# Makefile to determine what package we're currently defining, using the
|
||||
# last directory component in the path. As such, including other Makefile,
|
||||
# like below, before we call one of the *-package macro is usally not
|
||||
# working.
|
||||
# last directory component in the path. As such, including other Makefiles,
|
||||
# like below, before we call one of the *-package macros usually doesn't
|
||||
# work.
|
||||
# However, since the files we include here are in the same directory as
|
||||
# the current Makefile, we are OK. But this is a hard requirement: files
|
||||
# included here *must* be in the same directory!
|
||||
# included here *must* either be in this same directory OR within a
|
||||
# another directory with the name "linux" (in the BR2_EXTERNAL case).
|
||||
include $(sort $(wildcard linux/linux-ext-*.mk))
|
||||
|
||||
# Import linux-kernel-extensions from br2-externals
|
||||
include $(sort $(wildcard $(foreach ext,$(BR2_EXTERNAL_DIRS), \
|
||||
$(ext)/linux/linux-ext-*.mk)))
|
||||
|
||||
LINUX_PATCH_DEPENDENCIES += $(foreach ext,$(LINUX_EXTENSIONS),\
|
||||
$(if $(BR2_LINUX_KERNEL_EXT_$(call UPPERCASE,$(ext))),$(ext)))
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user