Skip to contentSkip to conversation

gcc: add build directory to include directories

PATCH In review Mark Hatle 3 participants 5 messages May 31, 2013 – Jun 11, 2013

lore
Share & tools
lore

Mark Hatle

author
#0 lore raw

PATCH v2 1/1 gcc: add build directory to include directories

From: "Roy.Li" <[email protected]>

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.

---
 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(-)
meta/recipes-devtools/gcc/gcc_4.7.bb +1 -1
index 9954375..f68c67a 100644
@@ -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/ "
meta/recipes-devtools/gcc/gcc_4.8.bb +1 -1
index 9954375..f68c67a 100644
@@ -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/ "
Signature · 1 line
1.8.3.rc1.25.g423ecb0
#1 lore raw

what happens if you use --disable-libunwind-exceptions

Quoted 46 lines · Mark Hatle

From: "Roy.Li" <[email protected]>

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.

---
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(-)
meta/recipes-devtools/gcc/gcc_4.7.bb +0 -0
index 9954375..f68c67a 100644
@@ -2,4 +2,4 @@ require recipes-devtools/gcc/gcc-${PV}.inc

require gcc-configure-target.inc
require gcc-package-target.inc

meta/recipes-devtools/gcc/gcc_4.7.bb +1 -1
-ARCH_FLAGS_FOR_TARGET += "-isystem${STAGING_INCDIR}"
+ARCH_FLAGS_FOR_TARGET += "-isystem${STAGING_INCDIR} -I${B}/gcc/include/ "
meta/recipes-devtools/gcc/gcc_4.8.bb +0 -0
index 9954375..f68c67a 100644
@@ -2,4 +2,4 @@ require recipes-devtools/gcc/gcc-${PV}.inc

require gcc-configure-target.inc
require gcc-package-target.inc

meta/recipes-devtools/gcc/gcc_4.8.bb +1 -1
-ARCH_FLAGS_FOR_TARGET += "-isystem${STAGING_INCDIR}"
+ARCH_FLAGS_FOR_TARGET += "-isystem${STAGING_INCDIR} -I${B}/gcc/include/ "
Signature · 6 lines
1.8.3.rc1.25.g423ecb0

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core
author
#2 lore raw
Quoted 1 line · Khem Raj

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

Quoted 49 lines · Mark Hatle
Quoted 47 lines

From: "Roy.Li" <[email protected]>

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.

---
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(-)
meta/recipes-devtools/gcc/gcc_4.7.bb +0 -0
index 9954375..f68c67a 100644
@@ -2,4 +2,4 @@ require recipes-devtools/gcc/gcc-${PV}.inc

require gcc-configure-target.inc
require gcc-package-target.inc

meta/recipes-devtools/gcc/gcc_4.7.bb +1 -1
-ARCH_FLAGS_FOR_TARGET += "-isystem${STAGING_INCDIR}"
+ARCH_FLAGS_FOR_TARGET += "-isystem${STAGING_INCDIR} -I${B}/gcc/include/ "
meta/recipes-devtools/gcc/gcc_4.8.bb +0 -0
index 9954375..f68c67a 100644
@@ -2,4 +2,4 @@ require recipes-devtools/gcc/gcc-${PV}.inc

require gcc-configure-target.inc
require gcc-package-target.inc

meta/recipes-devtools/gcc/gcc_4.8.bb +1 -2
-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
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core

#3 lore raw
Quoted 3 lines · Mark Hatle
Quoted 1 line

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.

#4 lore raw
Quoted 7 lines · On Tue, 11 Jun 2013 10:11:46 -0700 Khem Raj <[email protected]> wrote:
Quoted 3 lines · Mark Hatle
Quoted 1 line

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

Signature · 1 line
Listen, get this.  Nobody with a good compiler needs to be justified.