Patchwork [4/5] gcc-cross-initial: Stage self sufficient fixed limits.h

login
register
mail settings
Submitter Khem Raj
Date July 24, 2012, 3:04 p.m.
Message ID <e25e076b849d26a9f823536a1b0491a929d270ae.1343142062.git.raj.khem@gmail.com>
Download mbox | patch
Permalink /patch/32947/
State Accepted
Commit eeb445ecbc651ad614a4fc492039bdad0747d45d
Headers show

Comments

Khem Raj - July 24, 2012, 3:04 p.m.
currently gcc installs a limits.h which references to another
limits.h which it expects from target sysroot and that header
in target sysroot will come from eglibc. So we need to break
this catch-22 and hence we install a self sufficient limits.h
which is then happy when referenced and doesnt complain about
missing limits.h from target sysroot.

This is mostly used when eglibc-initial configure is run

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta/recipes-devtools/gcc/gcc-4.7.inc           |    2 +-
 meta/recipes-devtools/gcc/gcc-cross-initial.inc |   10 ++++++++++
 2 files changed, 11 insertions(+), 1 deletion(-)
Otavio Salvador - July 24, 2012, 4:54 p.m.
On Tue, Jul 24, 2012 at 12:04 PM, Khem Raj <raj.khem@gmail.com> wrote:
> --- a/meta/recipes-devtools/gcc/gcc-cross-initial.inc
> +++ b/meta/recipes-devtools/gcc/gcc-cross-initial.inc
> @@ -27,3 +27,13 @@ EXTRA_OECONF = "--with-newlib \
>  do_compile () {
>      oe_runmake all-gcc all-target-libgcc
>  }
> +# fixed limits.h infact includes the so called real limits.h
> +# which should come from libc but when we build libc-initial
> +# then bunch of configure tests include fixed limits.h which in turn
> +# includes real limits.h but this real limits.h is not staged yet
> +# so we overwirte the generated include-fixed/limits.h for gcc-cross-initial
> +# to get rid references to real limits.h
> +
> +do_install_append1() {
> +    cp gcc/include-fixed/limits.h ${D}${gcclibdir}/${TARGET_SYS}/${BINV}/include-fixed/limits.h
> +}

It'd be better to have the comment together with install_append1; not
the compile method.

Patch

diff --git a/meta/recipes-devtools/gcc/gcc-4.7.inc b/meta/recipes-devtools/gcc/gcc-4.7.inc
index 43d77ec..709d7d8 100644
--- a/meta/recipes-devtools/gcc/gcc-4.7.inc
+++ b/meta/recipes-devtools/gcc/gcc-4.7.inc
@@ -1,6 +1,6 @@ 
 require gcc-common.inc
 
-PR = "r7"
+PR = "r8"
 
 # Third digit in PV should be incremented after a minor release
 # happens from this branch on gcc e.g. currently its 4.7.1
diff --git a/meta/recipes-devtools/gcc/gcc-cross-initial.inc b/meta/recipes-devtools/gcc/gcc-cross-initial.inc
index 93a6d78..aee46a6 100644
--- a/meta/recipes-devtools/gcc/gcc-cross-initial.inc
+++ b/meta/recipes-devtools/gcc/gcc-cross-initial.inc
@@ -27,3 +27,13 @@  EXTRA_OECONF = "--with-newlib \
 do_compile () {
     oe_runmake all-gcc all-target-libgcc
 }
+# fixed limits.h infact includes the so called real limits.h
+# which should come from libc but when we build libc-initial
+# then bunch of configure tests include fixed limits.h which in turn
+# includes real limits.h but this real limits.h is not staged yet
+# so we overwirte the generated include-fixed/limits.h for gcc-cross-initial
+# to get rid references to real limits.h
+
+do_install_append1() {
+    cp gcc/include-fixed/limits.h ${D}${gcclibdir}/${TARGET_SYS}/${BINV}/include-fixed/limits.h
+}