* [Buildroot] [git commit] linux: only depend on host-lzop if needed
@ 2014-03-03 21:22 Thomas Petazzoni
2014-03-04 6:37 ` Peter Korsgaard
0 siblings, 1 reply; 6+ messages in thread
From: Thomas Petazzoni @ 2014-03-03 21:22 UTC (permalink / raw)
To: buildroot
commit: http://git.buildroot.net/buildroot/commit/?id=ca80782f4571f004c2b8cf2d0e60e83343beff34
branch: http://git.buildroot.net/buildroot/commit/?id=refs/heads/master
There is no reason to always depend on host-lzop, even when the kernel
compression is not LZO.
Since LZO is not the default compression option in the kernel (and there
is not sign that will change in the foreseeable future), it will always
appear in a config file, whether it is a complete config file or it is
only a defconfig.
So, only depend on host-lzop if the LZO compression is enabled in the
kernel config file (either the defconfig or the custom config file).
This includes:
- kernel compression itself
- initrd compression
- initramfs compression
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
linux/linux.mk | 11 +++++++++--
1 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/linux/linux.mk b/linux/linux.mk
index f948e6c..cf728aa 100644
--- a/linux/linux.mk
+++ b/linux/linux.mk
@@ -41,7 +41,7 @@ endif
LINUX_PATCHES = $(call qstrip,$(BR2_LINUX_KERNEL_PATCH))
LINUX_INSTALL_IMAGES = YES
-LINUX_DEPENDENCIES += host-kmod host-lzop
+LINUX_DEPENDENCIES += host-kmod
ifeq ($(BR2_LINUX_KERNEL_UBOOT_IMAGE),y)
LINUX_DEPENDENCIES += host-uboot-tools
@@ -163,7 +163,14 @@ LINUX_POST_PATCH_HOOKS += LINUX_APPLY_PATCHES
ifeq ($(BR2_LINUX_KERNEL_USE_DEFCONFIG),y)
KERNEL_SOURCE_CONFIG = $(KERNEL_ARCH_PATH)/configs/$(call qstrip,$(BR2_LINUX_KERNEL_DEFCONFIG))_defconfig
else ifeq ($(BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG),y)
-KERNEL_SOURCE_CONFIG = $(BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE)
+KERNEL_SOURCE_CONFIG = $(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE))
+endif
+
+ifeq ($(call KCONFIG_GET_OPT,CONFIG_KERNEL_LZO,$(KERNEL_SOURCE_CONFIG)),y)
+LINUX_DEPENDENCIES += host-lzop
+endif
+ifeq ($(call KCONFIG_GET_OPT,CONFIG_RD_LZO,$(KERNEL_SOURCE_CONFIG)),y)
+LINUX_DEPENDENCIES += host-lzop
endif
define LINUX_CONFIGURE_CMDS
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [Buildroot] [git commit] linux: only depend on host-lzop if needed
2014-03-03 21:22 [Buildroot] [git commit] linux: only depend on host-lzop if needed Thomas Petazzoni
@ 2014-03-04 6:37 ` Peter Korsgaard
2014-03-04 8:14 ` Thomas Petazzoni
0 siblings, 1 reply; 6+ messages in thread
From: Peter Korsgaard @ 2014-03-04 6:37 UTC (permalink / raw)
To: buildroot
>>>>> "Thomas" == Thomas Petazzoni <thomas.petazzoni@free-electrons.com> writes:
> commit: http://git.buildroot.net/buildroot/commit/?id=ca80782f4571f004c2b8cf2d0e60e83343beff34
> branch: http://git.buildroot.net/buildroot/commit/?id=refs/heads/master
> There is no reason to always depend on host-lzop, even when the kernel
> compression is not LZO.
> Since LZO is not the default compression option in the kernel (and there
> is not sign that will change in the foreseeable future), it will always
> appear in a config file, whether it is a complete config file or it is
> only a defconfig.
> So, only depend on host-lzop if the LZO compression is enabled in the
> kernel config file (either the defconfig or the custom config file).
> This includes:
> - kernel compression itself
> - initrd compression
> - initramfs compression
> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
> ---
> linux/linux.mk | 11 +++++++++--
> 1 files changed, 9 insertions(+), 2 deletions(-)
> diff --git a/linux/linux.mk b/linux/linux.mk
> index f948e6c..cf728aa 100644
> --- a/linux/linux.mk
> +++ b/linux/linux.mk
> @@ -41,7 +41,7 @@ endif
> LINUX_PATCHES = $(call qstrip,$(BR2_LINUX_KERNEL_PATCH))
> LINUX_INSTALL_IMAGES = YES
> -LINUX_DEPENDENCIES += host-kmod host-lzop
> +LINUX_DEPENDENCIES += host-kmod
> ifeq ($(BR2_LINUX_KERNEL_UBOOT_IMAGE),y)
> LINUX_DEPENDENCIES += host-uboot-tools
> @@ -163,7 +163,14 @@ LINUX_POST_PATCH_HOOKS += LINUX_APPLY_PATCHES
> ifeq ($(BR2_LINUX_KERNEL_USE_DEFCONFIG),y)
> KERNEL_SOURCE_CONFIG = $(KERNEL_ARCH_PATH)/configs/$(call qstrip,$(BR2_LINUX_KERNEL_DEFCONFIG))_defconfig
> else ifeq ($(BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG),y)
> -KERNEL_SOURCE_CONFIG = $(BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE)
> +KERNEL_SOURCE_CONFIG = $(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE))
> +endif
> +
> +ifeq ($(call KCONFIG_GET_OPT,CONFIG_KERNEL_LZO,$(KERNEL_SOURCE_CONFIG)),y)
Doesn't this get executed very early, E.G. before the linux sources are
extracted? Does it work with configurations using a defconfig in the
kernel sources like sheevaplug_defconfig?
--
Bye, Peter Korsgaard
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] [git commit] linux: only depend on host-lzop if needed
2014-03-04 6:37 ` Peter Korsgaard
@ 2014-03-04 8:14 ` Thomas Petazzoni
2014-03-04 9:40 ` Fabio Porcedda
2014-03-04 16:35 ` Peter Korsgaard
0 siblings, 2 replies; 6+ messages in thread
From: Thomas Petazzoni @ 2014-03-04 8:14 UTC (permalink / raw)
To: buildroot
Dear Peter Korsgaard,
On Tue, 04 Mar 2014 07:37:19 +0100, Peter Korsgaard wrote:
> Doesn't this get executed very early, E.G. before the linux sources are
> extracted?
Indeed, but the configuration file is already available at this point.
It may be either a full .config, or a minimal defconfig, but in both
cases it doesn't matter. See below.
> Does it work with configurations using a defconfig in the kernel sources like sheevaplug_defconfig?
It does, as explained in the commit log: since LZO is not the default
compression, if it is chosen by the user in its kernel configuration,
it will also appear in minimal defconfigs.
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] [git commit] linux: only depend on host-lzop if needed
2014-03-04 8:14 ` Thomas Petazzoni
@ 2014-03-04 9:40 ` Fabio Porcedda
2014-03-04 9:44 ` Thomas Petazzoni
2014-03-04 16:35 ` Peter Korsgaard
1 sibling, 1 reply; 6+ messages in thread
From: Fabio Porcedda @ 2014-03-04 9:40 UTC (permalink / raw)
To: buildroot
On Tue, Mar 4, 2014 at 9:14 AM, Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote:
> Dear Peter Korsgaard,
>
> On Tue, 04 Mar 2014 07:37:19 +0100, Peter Korsgaard wrote:
>
>> Doesn't this get executed very early, E.G. before the linux sources are
>> extracted?
>
> Indeed, but the configuration file is already available at this point.
> It may be either a full .config, or a minimal defconfig, but in both
> cases it doesn't matter. See below.
>
>> Does it work with configurations using a defconfig in the kernel sources like sheevaplug_defconfig?
>
> It does, as explained in the commit log: since LZO is not the default
> compression, if it is chosen by the user in its kernel configuration,
> it will also appear in minimal defconfigs.
There are two linux defconfigs files that uses LZO as default:
$ git grep KERNEL_LZO | grep /configs
arch/arm/configs/imx_v6_v7_defconfig:CONFIG_KERNEL_LZO=y
arch/sh/configs/sdk7786_defconfig:CONFIG_KERNEL_LZO=y
If such defconfigs are used the host-lzo dependency is not added, does it?
Regards
--
Fabio Porcedda
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] [git commit] linux: only depend on host-lzop if needed
2014-03-04 9:40 ` Fabio Porcedda
@ 2014-03-04 9:44 ` Thomas Petazzoni
0 siblings, 0 replies; 6+ messages in thread
From: Thomas Petazzoni @ 2014-03-04 9:44 UTC (permalink / raw)
To: buildroot
Dear Fabio Porcedda,
On Tue, 4 Mar 2014 10:40:09 +0100, Fabio Porcedda wrote:
> There are two linux defconfigs files that uses LZO as default:
> $ git grep KERNEL_LZO | grep /configs
> arch/arm/configs/imx_v6_v7_defconfig:CONFIG_KERNEL_LZO=y
> arch/sh/configs/sdk7786_defconfig:CONFIG_KERNEL_LZO=y
>
> If such defconfigs are used the host-lzo dependency is not added, does it?
It is: that's the whole point of Yann's patch. It greps in the provided
configuration file, and if it finds that the LZO compression is
selected, it adds host-lzop to the dependencies.
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] [git commit] linux: only depend on host-lzop if needed
2014-03-04 8:14 ` Thomas Petazzoni
2014-03-04 9:40 ` Fabio Porcedda
@ 2014-03-04 16:35 ` Peter Korsgaard
1 sibling, 0 replies; 6+ messages in thread
From: Peter Korsgaard @ 2014-03-04 16:35 UTC (permalink / raw)
To: buildroot
>>>>> "Thomas" == Thomas Petazzoni <thomas.petazzoni@free-electrons.com> writes:
> Dear Peter Korsgaard,
> On Tue, 04 Mar 2014 07:37:19 +0100, Peter Korsgaard wrote:
>> Doesn't this get executed very early, E.G. before the linux sources are
>> extracted?
> Indeed, but the configuration file is already available at this point.
> It may be either a full .config, or a minimal defconfig, but in both
> cases it doesn't matter. See below.
As I explained on IRC, it isn't available if the defconfig isn't part of
buildroot but inside the linux tree (arch/$ARCH/config/foo_defconfig).
We do support such setups (and multiple defconfigs use it), and I don't
see how it can be made to work here.
--
Bye, Peter Korsgaard
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2014-03-04 16:35 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-03-03 21:22 [Buildroot] [git commit] linux: only depend on host-lzop if needed Thomas Petazzoni
2014-03-04 6:37 ` Peter Korsgaard
2014-03-04 8:14 ` Thomas Petazzoni
2014-03-04 9:40 ` Fabio Porcedda
2014-03-04 9:44 ` Thomas Petazzoni
2014-03-04 16:35 ` Peter Korsgaard
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox