![Petr Vorel](/assets/img/avatar_default.png)
Backports provide drivers released on newer kernels backported for usage on older kernels. There are two versions of linux-backports: one that supports Linux kernels >= 3.0 and one supports even older kernels. We're only packaging the version that supports >= 3.0. linux-backports needs to have access to the kernel's .config to extract information it reintroduces as blind options in generated Kconfig snippets for its own menuconfig. However, Buildroot offers no way to express this kind of dependency. So we need to hand-write a dependency from linux-backports' own .config to linux' .config . Since linux.mk has not already been sourced by the time we source linux-backports.mk, we are missing the definition for LINUX_DIR, so we can not use it our rule. Fortunately, make provides so-called "secondary expansion", by which rules which dependencies include a $$-dereferenced variable wil lbe re-evaluated after all the rest of the Makefiles have been parsed. So, we use that secondary expansion to post-pone evaluation of that dependency so we can use LINUX_DIR. Note: reconstructing LINUX_DIR by hand does not work, because of the custom archives, git tree, or override-srcdir. Signed-off-by: Petr Vorel <petr.vorel@gmail.com> Cc: Arnout Vandecappelle <arnout@mind.be> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr> Reviewed-by: Romain Naour <romain.naour@openwide.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
53 lines
1.6 KiB
Plaintext
53 lines
1.6 KiB
Plaintext
comment "linux-backports needs a Linux kernel to be built"
|
|
depends on !BR2_LINUX_KERNEL
|
|
|
|
config BR2_PACKAGE_LINUX_BACKPORTS
|
|
bool "linux-backports"
|
|
depends on BR2_LINUX_KERNEL
|
|
help
|
|
The linux-backports package includes many Linux drivers from
|
|
recent kernels, backported to older ones.
|
|
|
|
This version of linux-backports supports kernels starting from 3.0.
|
|
|
|
https://backports.wiki.kernel.org
|
|
|
|
if BR2_PACKAGE_LINUX_BACKPORTS
|
|
|
|
choice
|
|
prompt "Linux kernel driver backports configuration"
|
|
default BR2_PACKAGE_LINUX_BACKPORTS_USE_DEFCONFIG
|
|
|
|
config BR2_PACKAGE_LINUX_BACKPORTS_USE_DEFCONFIG
|
|
bool "Using an in-tree defconfig file"
|
|
|
|
config BR2_PACKAGE_LINUX_BACKPORTS_USE_CUSTOM_CONFIG
|
|
bool "Using a custom (def)config file"
|
|
|
|
endchoice
|
|
|
|
config BR2_PACKAGE_LINUX_BACKPORTS_DEFCONFIG
|
|
string "Defconfig name"
|
|
depends on BR2_PACKAGE_LINUX_BACKPORTS_USE_DEFCONFIG
|
|
help
|
|
Name of the backports defconfig file to use, without the
|
|
leading defconfig-. The defconfig is located in defconfigs/
|
|
directory in the backports tree.
|
|
|
|
config BR2_PACKAGE_LINUX_BACKPORTS_CUSTOM_CONFIG_FILE
|
|
string "Configuration file path"
|
|
depends on BR2_PACKAGE_LINUX_BACKPORTS_USE_CUSTOM_CONFIG
|
|
help
|
|
Path to the backports configuration file
|
|
|
|
Note: this can be a defconfig file or a complete .config file,
|
|
which can later be saved back with make linux-update-(def)config.
|
|
|
|
config BR2_PACKAGE_LINUX_BACKPORTS_CONFIG_FRAGMENT_FILES
|
|
string "Additional configuration fragment files"
|
|
help
|
|
A space-separated list of configuration fragment files, that
|
|
will be merged to the main linux-backports configuration file.
|
|
|
|
endif # BR2_PACKAGE_LINUX_BACKPORTS
|