Patchwork [5/5] kmod: does not support static builds

login
register
mail settings
Submitter Thomas Petazzoni
Date Aug. 20, 2013, 11:03 a.m.
Message ID <1376996584-4462-6-git-send-email-thomas.petazzoni@free-electrons.com>
Download mbox | patch
Permalink /patch/268487/
State Accepted
Headers show

Comments

Thomas Petazzoni - Aug. 20, 2013, 11:03 a.m.
Since kmod 14, the support for building a static library has been
removed completely from kmod. Therefore, we mark kmod as
!BR2_PREFER_STATIC_LIB, as well as all its reverse dependencies, which
includes the option to use the "udev" /dev management method.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/kmod/Config.in | 1 +
 package/udev/Config.in | 1 +
 system/Config.in       | 1 +
 3 files changed, 3 insertions(+)
Thomas Petazzoni - Aug. 27, 2013, 4:48 p.m.
Dear Arnout Vandecappelle,

(Resending with Buildroot list in Cc)

On Wed, 21 Aug 2013 22:00:20 +0200, Arnout Vandecappelle wrote:
> On 20/08/13 13:03, Thomas Petazzoni wrote:
> > Since kmod 14, the support for building a static library has been
> > removed completely from kmod. Therefore, we mark kmod as
> > !BR2_PREFER_STATIC_LIB, as well as all its reverse dependencies, which
> > includes the option to use the "udev" /dev management method.
> >
> > Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
> 
>   I don't think that patches that fix PREFER_STATIC builds are important 
> enough to still include in 2013.08.

I agree.

> > diff --git a/package/kmod/Config.in b/package/kmod/Config.in
> > index 4965237..bd44316 100644
> > --- a/package/kmod/Config.in
> > +++ b/package/kmod/Config.in
> > @@ -1,5 +1,6 @@
> >   config BR2_PACKAGE_KMOD
> >   	bool "kmod"
> > +	depends on !BR2_PREFER_STATIC_LIB
> >   	help
> >   	  handle kernel modules
> 
>   Shouldn't you also remove the
> 
> KMOD_CONF_OPT = --disable-static --enable-shared
> 
> ?

No because the default is --enable-static --enable-shared, and the
configure script of kmod bails out with an error when --enable-static
is passed.

Thomas
Peter Korsgaard - Sept. 2, 2013, 9:32 p.m.
>>>>> "Thomas" == Thomas Petazzoni <thomas.petazzoni@free-electrons.com> writes:

 Thomas> Since kmod 14, the support for building a static library has been
 Thomas> removed completely from kmod. Therefore, we mark kmod as
 Thomas> !BR2_PREFER_STATIC_LIB, as well as all its reverse dependencies, which
 Thomas> includes the option to use the "udev" /dev management method.

 Thomas> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
 Thomas> ---
 Thomas>  package/kmod/Config.in | 1 +
 Thomas>  package/udev/Config.in | 1 +
 Thomas>  system/Config.in       | 1 +
 Thomas>  3 files changed, 3 insertions(+)

 Thomas> diff --git a/package/kmod/Config.in b/package/kmod/Config.in
 Thomas> index 4965237..bd44316 100644
 Thomas> --- a/package/kmod/Config.in
 Thomas> +++ b/package/kmod/Config.in
 Thomas> @@ -1,5 +1,6 @@
 Thomas>  config BR2_PACKAGE_KMOD
 Thomas>  	bool "kmod"
 Thomas> +	depends on !BR2_PREFER_STATIC_LIB
 Thomas>  	help
 Thomas>  	  handle kernel modules
 
 Thomas> diff --git a/package/udev/Config.in b/package/udev/Config.in
 Thomas> index dd5ad7b..d4d97c1 100644
 Thomas> --- a/package/udev/Config.in
 Thomas> +++ b/package/udev/Config.in
 Thomas> @@ -3,6 +3,7 @@ config BR2_PACKAGE_UDEV
 Thomas>  	depends on BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_UDEV
 Thomas>  	depends on BR2_LARGEFILE # util-linux
 Thomas>  	depends on BR2_USE_WCHAR # util-linux
 Thomas> +	depends on !BR2_PREFER_STATIC_LIB # kmod
 Thomas>  	select BR2_PACKAGE_UTIL_LINUX
 Thomas>  	select BR2_PACKAGE_UTIL_LINUX_LIBBLKID
 Thomas>  	select BR2_PACKAGE_KMOD
 Thomas> diff --git a/system/Config.in b/system/Config.in
 Thomas> index d41f184..55195e0 100644
 Thomas> --- a/system/Config.in
 Thomas> +++ b/system/Config.in
 Thomas> @@ -84,6 +84,7 @@ config BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_UDEV
 Thomas>  	bool "Dynamic using udev"
 Thomas>  	depends on BR2_LARGEFILE # udev
 Thomas>  	depends on BR2_USE_WCHAR # udev
 Thomas> +	depends on !BR2_PREFER_STATIC_LIB # udev -> kmod
 Thomas>  	select BR2_PACKAGE_UDEV
 
 Thomas>  comment "udev requires a toolchain with LARGEFILE + WCHAR support"

The dependency between udev handling and !BR2_PREFER_STATIC_LIB isn't
directly obvious to users, so I've added a comment - Similar to how we
do it for toolchain options.

Committed with that added, thanks.

Patch

diff --git a/package/kmod/Config.in b/package/kmod/Config.in
index 4965237..bd44316 100644
--- a/package/kmod/Config.in
+++ b/package/kmod/Config.in
@@ -1,5 +1,6 @@ 
 config BR2_PACKAGE_KMOD
 	bool "kmod"
+	depends on !BR2_PREFER_STATIC_LIB
 	help
 	  handle kernel modules
 
diff --git a/package/udev/Config.in b/package/udev/Config.in
index dd5ad7b..d4d97c1 100644
--- a/package/udev/Config.in
+++ b/package/udev/Config.in
@@ -3,6 +3,7 @@  config BR2_PACKAGE_UDEV
 	depends on BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_UDEV
 	depends on BR2_LARGEFILE # util-linux
 	depends on BR2_USE_WCHAR # util-linux
+	depends on !BR2_PREFER_STATIC_LIB # kmod
 	select BR2_PACKAGE_UTIL_LINUX
 	select BR2_PACKAGE_UTIL_LINUX_LIBBLKID
 	select BR2_PACKAGE_KMOD
diff --git a/system/Config.in b/system/Config.in
index d41f184..55195e0 100644
--- a/system/Config.in
+++ b/system/Config.in
@@ -84,6 +84,7 @@  config BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_UDEV
 	bool "Dynamic using udev"
 	depends on BR2_LARGEFILE # udev
 	depends on BR2_USE_WCHAR # udev
+	depends on !BR2_PREFER_STATIC_LIB # udev -> kmod
 	select BR2_PACKAGE_UDEV
 
 comment "udev requires a toolchain with LARGEFILE + WCHAR support"