[oe] [PATCH, RFC] Add linux-libc-headers-native, make it default dep for native

Tom Rini tom_rini at mentor.com
Tue Jun 15 17:48:36 UTC 2010


Tom Rini wrote:
> On some host distributions the provided linux kernel headers are too old
> to compile utilities we need[1].  Given that we need these utilities to
> run things on the target the best solution is to provide
> linux-libc-headers-native.  Rather than get things into an inconsistent
> state, we make linux-libc-headers-native be a default dependency.
> 
> [1]: A prime example of this would be mtd-utils-native and UBI

ping?  The summary of the feedback, I believe would be:
- Can we just make this opt-in for distros that need it?
- Can we easily opt out if we don't?

For the second, yes, ASSUME_PROVIDED still works.  For the first, I'd 
argue that doing so is a lot harder (at least without some additional 
infrastructure and reliance on other external tools) than just adding 
another early package.

So, yay or nay?

> 
> diff --git a/classes/base.bbclass b/classes/base.bbclass
> index e0f9184..e26a45e 100644
> --- a/classes/base.bbclass
> +++ b/classes/base.bbclass
> @@ -75,6 +75,12 @@ def base_dep_prepend(d):
>          if (bb.data.getVar('HOST_SYS', d, 1) !=
>                   bb.data.getVar('BUILD_SYS', d, 1)):
>              deps += " virtual/${TARGET_PREFIX}gcc virtual/libc "
> +        elif bb.data.inherits_class('native', d) and \
> +                bb.data.getVar('PN', d, True) not in \
> +                ("linux-libc-headers-native", "quilt-native",
> +                 "unifdef-native", "shasum-native",
> +                 "stagemanager-native", "coreutils-native"):
> +            deps += " linux-libc-headers-native"
>      return deps
> 
>  DEPENDS_prepend="${@base_dep_prepend(d)} "
> diff --git a/recipes/linux-libc-headers/linux-libc-headers.inc
> b/recipes/linux-libc-headers/linux-libc-headers.inc
> index 0487e65..0b0d05a 100644
> --- a/recipes/linux-libc-headers/linux-libc-headers.inc
> +++ b/recipes/linux-libc-headers/linux-libc-headers.inc
> @@ -1,7 +1,8 @@
>  DESCRIPTION = "Sanitized set of 2.6 kernel headers for the C library's
> use."
>  SECTION = "devel"
>  LICENSE = "GPL"
> +NATIVE_INSTALL_WORKS = "1"
> +BBCLASSEXTEND = "native"
> 
>  RDEPENDS_${PN}-dev = ""
>  RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPV})"
> -
> diff --git a/recipes/linux-libc-headers/linux-libc-headers_2.6.7.0.bb
> b/recipes/linux-libc-headers/linux-libc-headers_2.6.7.0.bb
> index b66e768..0a1159a 100644
> --- a/recipes/linux-libc-headers/linux-libc-headers_2.6.7.0.bb
> +++ b/recipes/linux-libc-headers/linux-libc-headers_2.6.7.0.bb
> @@ -1,6 +1,7 @@
>  require linux-libc-headers.inc
> 
>  INHIBIT_DEFAULT_DEPS = "1"
> +NATIVE_INSTALL_WORKS = "0"
>  PR = "r4"
>  # NOTE: no need to package these headers, since the c library includes
> them.
>  PACKAGES = ""
> diff --git a/recipes/linux-libc-headers/linux-libc-headers_2.6.8.1.bb
> b/recipes/linux-libc-headers/linux-libc-headers_2.6.8.1.bb
> index 4893cab..6cbd8ba 100644
> --- a/recipes/linux-libc-headers/linux-libc-headers_2.6.8.1.bb
> +++ b/recipes/linux-libc-headers/linux-libc-headers_2.6.8.1.bb
> @@ -1,5 +1,6 @@
>  require linux-libc-headers.inc
> 
> +NATIVE_INSTALL_WORKS = "0"
>  HOMEPAGE = "http://ep09.pld-linux.org/~mmazur/linux-libc-headers/"
>  # license note from the package:
>  #   Linux-libc-headers are derived from linux kernel headers. For
> license of a


-- 
Tom Rini
Mentor Graphics Corporation




More information about the Openembedded-devel mailing list