linux: fix extensions
authorYann E. MORIN <yann.morin.1998@free.fr>
Sat, 14 Mar 2015 14:25:19 +0000 (15:25 +0100)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Thu, 9 Apr 2015 20:52:20 +0000 (22:52 +0200)
Since the move to the kconfig-package infra, linux extensions are
broken.

In our linux package, extensions are applied as pre-patch hooks.

Before the kconfig-package infra, we had custom rules for the
linux-*config targets, which were of the form:

    linux-menuconfig: linux-configure
        $(MAKE) -C $(LINUX_DIR) menuconfig

This caused the linux tree to be fully configured before running the
configurators, and thus linux dependencies were entirely fullfilled, and
extensions were properly applied.

Since we migrated (in dff25ea), the kconfig-package infra introduces a
(hidden, internal) intermediate step 'kconfig-fixup' and decorelates the
kconfig-part of the configuration from the actual package-part of the
configuration:

    linux-configure -------> kconfig-fixup --> .config --> $(LINUX_CONFIG_FILE)
                        /
    linux-menuconfig --'

As thus, this (very useful!) use-case breaks (starting from a clean
Buildroot tree):

    make menuconfig
        -> enable a kernel and at least one extension
        -> save and exit
    make linux-menuconfig
        -> extensions are not available

Fix that by using the newly-introduced patch-dependencies, so that
extensions are available before we try to patch the linux kernel.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
linux/linux-ext-fbtft.mk
linux/linux-ext-rtai.mk
linux/linux-ext-xenomai.mk

index 36f4fd22dd1d3facf9c59e3b812fa03956726fe7..6892c89a4e9d67bbc072099d00b97b8f7a7c2c0e 100644 (file)
@@ -6,7 +6,7 @@
 
 ifeq ($(BR2_LINUX_KERNEL_EXT_FBTFT),y)
 # Add dependency to fbtft package (download helper for the fbtft source)
-LINUX_DEPENDENCIES += fbtft
+LINUX_PATCH_DEPENDENCIES += fbtft
 
 # for linux >= 3.15 install to drivers/video/fbdev/fbtft
 # for linux < 3.15 install to drivers/video/fbtft
index bf998d5fdd8b02c0765b7525026601fc750f54c4..942b430382976301b36d2a3f0d3e151038df42ff 100644 (file)
@@ -6,7 +6,7 @@
 
 ifeq ($(BR2_LINUX_KERNEL_EXT_RTAI),y)
 # Add dependency to RTAI (user-space) which provide kernel patches
-LINUX_DEPENDENCIES += rtai-patch
+LINUX_PATCH_DEPENDENCIES += rtai
 
 RTAI_PATCH = $(call qstrip,$(BR2_LINUX_KERNEL_EXT_RTAI_PATCH))
 
index 84d2c17f6925d6e6476db25ba146a6a645fa6401..f6a5ffd47cb8cf554decdb01137c9f710b203c1e 100644 (file)
@@ -6,7 +6,7 @@
 
 ifeq ($(BR2_LINUX_KERNEL_EXT_XENOMAI),y)
 # Add dependency to xenomai (user-space) which provide ksrc part
-LINUX_DEPENDENCIES += xenomai
+LINUX_PATCH_DEPENDENCIES += xenomai
 
 # Adeos patch version
 XENOMAI_ADEOS_PATCH = $(call qstrip,$(BR2_LINUX_KERNEL_EXT_XENOMAI_ADEOS_PATCH))