Patchwork [v2] gcc: add build directory to include directories

login
register
mail settings
Submitter Mark Hatle
Date May 31, 2013, 3:55 p.m.
Message ID <1370015746-22465-1-git-send-email-mark.hatle@windriver.com>
Download mbox | patch
Permalink /patch/51015/
State New
Headers show

Comments

Mark Hatle - May 31, 2013, 3:55 p.m.
From: "Roy.Li" <rongqing.li@windriver.com>

Add build directory to include directories by -I${B}/include which will
be searched before standard system include directories.

Both libunwind and gcc supply unwind.h, once gcc use libunwind's unwind.h,
the compiling will fail.

This patch is generally not applicable to the upstream as they do not
use libunwind.

Signed-off-by: Roy.Li <rongqing.li@windriver.com>
Signed-off-by: Jeff Polk <jeff.polk@windriver.com>
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
---
 meta/recipes-devtools/gcc/gcc_4.7.bb | 2 +-
 meta/recipes-devtools/gcc/gcc_4.8.bb | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
Khem Raj - June 11, 2013, 2:21 a.m.
what happens if you use --disable-libunwind-exceptions

On May 31, 2013, at 8:55 AM, Mark Hatle <mark.hatle@windriver.com> wrote:

> From: "Roy.Li" <rongqing.li@windriver.com>
> 
> Add build directory to include directories by -I${B}/include which will
> be searched before standard system include directories.
> 
> Both libunwind and gcc supply unwind.h, once gcc use libunwind's unwind.h,
> the compiling will fail.
> 
> This patch is generally not applicable to the upstream as they do not
> use libunwind.
> 
> Signed-off-by: Roy.Li <rongqing.li@windriver.com>
> Signed-off-by: Jeff Polk <jeff.polk@windriver.com>
> Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
> ---
> meta/recipes-devtools/gcc/gcc_4.7.bb | 2 +-
> meta/recipes-devtools/gcc/gcc_4.8.bb | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/meta/recipes-devtools/gcc/gcc_4.7.bb b/meta/recipes-devtools/gcc/gcc_4.7.bb
> index 9954375..f68c67a 100644
> --- a/meta/recipes-devtools/gcc/gcc_4.7.bb
> +++ b/meta/recipes-devtools/gcc/gcc_4.7.bb
> @@ -2,4 +2,4 @@ require recipes-devtools/gcc/gcc-${PV}.inc
> require gcc-configure-target.inc
> require gcc-package-target.inc
> 
> -ARCH_FLAGS_FOR_TARGET += "-isystem${STAGING_INCDIR}"
> +ARCH_FLAGS_FOR_TARGET += "-isystem${STAGING_INCDIR} -I${B}/gcc/include/ "
> diff --git a/meta/recipes-devtools/gcc/gcc_4.8.bb b/meta/recipes-devtools/gcc/gcc_4.8.bb
> index 9954375..f68c67a 100644
> --- a/meta/recipes-devtools/gcc/gcc_4.8.bb
> +++ b/meta/recipes-devtools/gcc/gcc_4.8.bb
> @@ -2,4 +2,4 @@ require recipes-devtools/gcc/gcc-${PV}.inc
> require gcc-configure-target.inc
> require gcc-package-target.inc
> 
> -ARCH_FLAGS_FOR_TARGET += "-isystem${STAGING_INCDIR}"
> +ARCH_FLAGS_FOR_TARGET += "-isystem${STAGING_INCDIR} -I${B}/gcc/include/ "
> -- 
> 1.8.3.rc1.25.g423ecb0
> 
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
Mark Hatle - June 11, 2013, 4:13 p.m.
On 6/10/13 7:21 PM, Khem Raj wrote:
> what happens if you use --disable-libunwind-exceptions

As far as I know we have not tried that.  Doesn't this change some of the 
processing though for systems that use unwind as the only way to generate proper 
back traces?

--Mark

> On May 31, 2013, at 8:55 AM, Mark Hatle <mark.hatle@windriver.com> wrote:
>
>> From: "Roy.Li" <rongqing.li@windriver.com>
>>
>> Add build directory to include directories by -I${B}/include which will
>> be searched before standard system include directories.
>>
>> Both libunwind and gcc supply unwind.h, once gcc use libunwind's unwind.h,
>> the compiling will fail.
>>
>> This patch is generally not applicable to the upstream as they do not
>> use libunwind.
>>
>> Signed-off-by: Roy.Li <rongqing.li@windriver.com>
>> Signed-off-by: Jeff Polk <jeff.polk@windriver.com>
>> Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
>> ---
>> meta/recipes-devtools/gcc/gcc_4.7.bb | 2 +-
>> meta/recipes-devtools/gcc/gcc_4.8.bb | 2 +-
>> 2 files changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/meta/recipes-devtools/gcc/gcc_4.7.bb b/meta/recipes-devtools/gcc/gcc_4.7.bb
>> index 9954375..f68c67a 100644
>> --- a/meta/recipes-devtools/gcc/gcc_4.7.bb
>> +++ b/meta/recipes-devtools/gcc/gcc_4.7.bb
>> @@ -2,4 +2,4 @@ require recipes-devtools/gcc/gcc-${PV}.inc
>> require gcc-configure-target.inc
>> require gcc-package-target.inc
>>
>> -ARCH_FLAGS_FOR_TARGET += "-isystem${STAGING_INCDIR}"
>> +ARCH_FLAGS_FOR_TARGET += "-isystem${STAGING_INCDIR} -I${B}/gcc/include/ "
>> diff --git a/meta/recipes-devtools/gcc/gcc_4.8.bb b/meta/recipes-devtools/gcc/gcc_4.8.bb
>> index 9954375..f68c67a 100644
>> --- a/meta/recipes-devtools/gcc/gcc_4.8.bb
>> +++ b/meta/recipes-devtools/gcc/gcc_4.8.bb
>> @@ -2,4 +2,4 @@ require recipes-devtools/gcc/gcc-${PV}.inc
>> require gcc-configure-target.inc
>> require gcc-package-target.inc
>>
>> -ARCH_FLAGS_FOR_TARGET += "-isystem${STAGING_INCDIR}"
>> +ARCH_FLAGS_FOR_TARGET += "-isystem${STAGING_INCDIR} -I${B}/gcc/include/ "
>> --
>> 1.8.3.rc1.25.g423ecb0
>>
>> _______________________________________________
>> Openembedded-core mailing list
>> Openembedded-core@lists.openembedded.org
>> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>
Khem Raj - June 11, 2013, 5:11 p.m.
On Jun 11, 2013, at 9:13 AM, Mark Hatle <mark.hatle@windriver.com> wrote:

>> what happens if you use --disable-libunwind-exceptions
> 
> As far as I know we have not tried that.  Doesn't this change some of the processing though for systems that use unwind as the only way to generate proper back traces?


we already disable it for gcc-runtime and libgcc recipes where it would matter too.
Peter Seebach - June 11, 2013, 10:42 p.m.
On Tue, 11 Jun 2013 10:11:46 -0700
Khem Raj <raj.khem@gmail.com> wrote:

> On Jun 11, 2013, at 9:13 AM, Mark Hatle <mark.hatle@windriver.com> wrote:
> 
> >> what happens if you use --disable-libunwind-exceptions  
> > 
> > As far as I know we have not tried that.  Doesn't this change some of the processing though for systems that use unwind as the only way to generate proper back traces?  
> 
> we already disable it for gcc-runtime and libgcc recipes where it would matter too.

For what it's worth, --disable-libunwind-exceptions doesn't seem to prevent
the failure.

In file included from /home/seebs/tct/t00/bitbake_build/tmp/work-shared/gcc-4.8.
0-r0/gcc-4.8.0/libstdc++-v3/libsupc++/eh_arm.cc:26:0:
/home/seebs/tct/t00/bitbake_build/tmp/work-shared/gcc-4.8.0-r0/gcc-4.8.0/libstdc
++-v3/libsupc++/unwind-cxx.h:92:3: error: '_Unwind_Ptr' does not name a type
[... and many, many, more]

This appears to be identical to what we get without
--disable-libunwind-exceptions. It may be that that isn't fully implemented
for libsupc++.

-s

Patch

diff --git a/meta/recipes-devtools/gcc/gcc_4.7.bb b/meta/recipes-devtools/gcc/gcc_4.7.bb
index 9954375..f68c67a 100644
--- a/meta/recipes-devtools/gcc/gcc_4.7.bb
+++ b/meta/recipes-devtools/gcc/gcc_4.7.bb
@@ -2,4 +2,4 @@  require recipes-devtools/gcc/gcc-${PV}.inc
 require gcc-configure-target.inc
 require gcc-package-target.inc
 
-ARCH_FLAGS_FOR_TARGET += "-isystem${STAGING_INCDIR}"
+ARCH_FLAGS_FOR_TARGET += "-isystem${STAGING_INCDIR} -I${B}/gcc/include/ "
diff --git a/meta/recipes-devtools/gcc/gcc_4.8.bb b/meta/recipes-devtools/gcc/gcc_4.8.bb
index 9954375..f68c67a 100644
--- a/meta/recipes-devtools/gcc/gcc_4.8.bb
+++ b/meta/recipes-devtools/gcc/gcc_4.8.bb
@@ -2,4 +2,4 @@  require recipes-devtools/gcc/gcc-${PV}.inc
 require gcc-configure-target.inc
 require gcc-package-target.inc
 
-ARCH_FLAGS_FOR_TARGET += "-isystem${STAGING_INCDIR}"
+ARCH_FLAGS_FOR_TARGET += "-isystem${STAGING_INCDIR} -I${B}/gcc/include/ "