Skip to contentSkip to conversation

gcc-cross-sdk: fix C++ headers include, bump PR.

PATCH In review Andreas Fenkart 2 participants 4 messages Jul 20, 2010

lore
Share & tools
lore
#0 lore raw

cover gcc-cross-sdk: fix C++ headers include, bump PR.

Hi

The location of C++ headers has changed in gcc-cross-sdk_4.3.x and above. See error message during packaging step:

NOTE: the following files were installed but not shipped in any package:
NOTE: /opt/angstrom/arm/arm-angstrom-linux-uclibcgnueabi/include/c++/4.3.2/ios
NOTE: /opt/angstrom/arm/arm-angstrom-linux-uclibcgnueabi/include/c++/4.3.2/map
NOTE: /opt/angstrom/arm/arm-angstrom-linux-uclibcgnueabi/include/c++/4.3.2/new
...

NOTE: the following files were installed but not shipped in any package:
NOTE:   /opt/angstrom/arm/include/c++/4.1.1/debug/deque
NOTE:   /opt/angstrom/arm/include/c++/4.1.1/debug/map.h
NOTE:   /opt/angstrom/arm/include/c++/4.1.1/debug/safe_base.h
NOTE:   /opt/angstrom/arm/include/c++/4.1.1/debug/set.h

This latter error occurs after removing the includedir directive:

recipes/gcc/gcc-package-sdk.inc +0 -1
@@ -17,10 +17,8 @@ FILES_${PN} = "\
     ${gcclibdir}/${TARGET_SYS}/${BINV}/specs \
     ${gcclibdir}/${TARGET_SYS}/${BINV}/lib* \
     ${gcclibdir}/${TARGET_SYS}/${BINV}/include* \
-    ${includedir}/c++/${BINV} \
     ${prefix}/${TARGET_SYS}/bin/* \
     ${prefix}/${TARGET_SYS}/lib/* \
 
 

My includedir definition:
export includedir="/opt/angstrom/arm/include"

This seems related to patch:
gcc-cross-sdk: Fix relocation of the toolchain and bump PR.
sha1: f8bf7421bfe8eb86a3f17f269db4fb3667260c38

The patch places C++ headers directly into /include, no longer /usr/include. So I adjusted the gcc-package-sdk.inc. I also removed the now unecessary relocation step from meta-toolchain.bb.

recipes/gcc/gcc-package-sdk.inc +1 -1
@@ -17,10 +17,8 @@ FILES_${PN} = "\
     ${prefix}/${TARGET_SYS}/bin/* \
     ${prefix}/${TARGET_SYS}/lib/* \
-    ${prefix}/${TARGET_SYS}/usr/include/* \
+    ${prefix}/${TARGET_SYS}/include/* \
     "
 

Tested on ARM:
gcc-cross-sdk_4.1.1 -- ok gcc-cross-sdk_4.2.4 -- ok gcc-cross-sdk_4.3.1 -- needs, patch gcc-cross-sdk_4.3.2 -- needs, patch gcc-cross-sdk_4.3.3 -- needs, patch gcc-cross-sdk_4.4.2 -- needs, patch

/Andreas

#1 lore raw

PATCH 1/1 gcc-cross-sdk: fix C++ headers include, bump PR.

This is a follow up on commit:
gcc-cross-sdk: Fix relocation of the toolchain and bump PR.
sha1: f8bf7421bfe8eb86a3f17f269db4fb3667260c38

---
 recipes/gcc/gcc-4.3.1.inc       |    2 +-
 recipes/gcc/gcc-4.3.2.inc       |    2 +-
 recipes/gcc/gcc-4.3.3.inc       |    2 +-
 recipes/gcc/gcc-4.3.4.inc       |    2 +-
 recipes/gcc/gcc-4.4.1.inc       |    2 +-
 recipes/gcc/gcc-4.4.2.inc       |    2 +-
 recipes/gcc/gcc-4.4.4.inc       |    2 +-
 recipes/gcc/gcc-package-sdk.inc |    2 +-
 recipes/meta/meta-toolchain.bb  |    2 --
 9 files changed, 8 insertions(+), 10 deletions(-)
recipes/gcc/gcc-4.3.1.inc +1 -1
index 3352868..c26f7aa 100644
@@ -8,7 +8,7 @@ LICENSE = "GPLv3"
 DEPENDS = "mpfr gmp"
 NATIVEDEPS = "mpfr-native gmp-native"
 
-INC_PR = "r20"
+INC_PR = "r21"
 
 SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2;name=archive \
 	file://fedora/gcc43-c++-builtin-redecl.patch;striplevel=0 \
recipes/gcc/gcc-4.3.2.inc +1 -1
index 897d4f3..2424abe 100644
@@ -8,7 +8,7 @@ LICENSE = "GPLv3"
 DEPENDS = "mpfr gmp"
 NATIVEDEPS = "mpfr-native gmp-native"
 
-INC_PR = "r10"
+INC_PR = "r11"
 
 SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2;name=archive \
 	file://fedora/gcc43-c++-builtin-redecl.patch;striplevel=0 \
recipes/gcc/gcc-4.3.3.inc +1 -1
index 77cd521..f530a6b 100644
@@ -8,7 +8,7 @@ LICENSE = "GPLv3"
 DEPENDS = "mpfr gmp"
 NATIVEDEPS = "mpfr-native gmp-native"
 
-INC_PR = "r12"
+INC_PR = "r13"
 
 SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2;name=archive \
 	file://fedora/gcc43-c++-builtin-redecl.patch;striplevel=0 \
recipes/gcc/gcc-4.3.4.inc +1 -1
index 9711813..98823ff 100644
@@ -8,7 +8,7 @@ LICENSE = "GPLv3"
 DEPENDS = "mpfr gmp"
 NATIVEDEPS = "mpfr-native gmp-native"
 
-INC_PR = "r8"
+INC_PR = "r9"
 
 SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2;name=archive \
 	file://fedora/gcc43-c++-builtin-redecl.patch;striplevel=0 \
recipes/gcc/gcc-4.4.1.inc +1 -1
index 11b1535..0a83a04 100644
@@ -8,7 +8,7 @@ LICENSE = "GPLv3"
 DEPENDS = "mpfr gmp"
 NATIVEDEPS = "mpfr-native gmp-native"
 
-INC_PR = "r8"
+INC_PR = "r9"
 
 FILESPATHPKG .= ":gcc-$PV"
 
recipes/gcc/gcc-4.4.2.inc +1 -1
index 8d14c99..eeb4740 100644
@@ -8,7 +8,7 @@ LICENSE = "GPLv3"
 DEPENDS = "mpfr gmp"
 NATIVEDEPS = "mpfr-native gmp-native"
 
-INC_PR = "r2"
+INC_PR = "r3"
 
 FILESPATHPKG .= ":gcc-$PV"
 
recipes/gcc/gcc-4.4.4.inc +1 -1
index 4dd1bf6..21ae530 100644
@@ -8,7 +8,7 @@ LICENSE = "GPLv3"
 DEPENDS = "mpfr gmp"
 NATIVEDEPS = "mpfr-native gmp-native"
 
-INC_PR = "r2"
+INC_PR = "r3"
 
 FILESPATHPKG .= ":gcc-$PV"
 
recipes/gcc/gcc-package-sdk.inc +1 -1
index dd32ec7..17ddcd5 100644
@@ -20,7 +20,7 @@ FILES_${PN} = "\
     ${includedir}/c++/${BINV} \
     ${prefix}/${TARGET_SYS}/bin/* \
     ${prefix}/${TARGET_SYS}/lib/* \
-    ${prefix}/${TARGET_SYS}/usr/include/* \
+    ${prefix}/${TARGET_SYS}/include/* \
     "
 FILES_${PN}-doc = "\
     ${infodir} \
recipes/meta/meta-toolchain.bb +0 -2
index adc057a..e392a35 100644
@@ -124,8 +124,6 @@ do_populate_sdk() {
 	# With sysroot support, gcc expects the default C++ headers to be
 	# in a specific place.
 	install -d ${SDK_OUTPUT}/${SDKPATH}/${TARGET_SYS}/include
-	mv ${SDK_OUTPUT}/${SDKPATH}/${TARGET_SYS}/usr/include/c++ \
-		${SDK_OUTPUT}/${SDKPATH}/${TARGET_SYS}/include/
 
 	# Fix or remove broken .la files
 	for i in `find ${SDK_OUTPUT}/${SDKPATH}/${TARGET_SYS} -name \*.la`; do
Signature · 1 line
1.6.6.1
#2 lore raw
In reply to Andreas Fenkart
Quoted 10 lines · Andreas Fenkart

Hi

The location of C++ headers has changed in gcc-cross-sdk_4.3.x and above. See error message during packaging step:

NOTE: the following files were installed but not shipped in any package:
NOTE: /opt/angstrom/arm/arm-angstrom-linux-uclibcgnueabi/include/c++/4.3.2/ios
NOTE: /opt/angstrom/arm/arm-angstrom-linux-uclibcgnueabi/include/c++/4.3.2/map
NOTE: /opt/angstrom/arm/arm-angstrom-linux-uclibcgnueabi/include/c++/4.3.2/new
...

I'm looking into these patches and the possible reasons for this and that to happen as it does.

Signature · 2 lines
Tom Rini
Mentor Graphics Corporation
#3 lore raw
In reply to Andreas Fenkart
Quoted 10 lines · Andreas Fenkart

Hi

The location of C++ headers has changed in gcc-cross-sdk_4.3.x and above. See error message during packaging step:

NOTE: the following files were installed but not shipped in any package:
NOTE: /opt/angstrom/arm/arm-angstrom-linux-uclibcgnueabi/include/c++/4.3.2/ios
NOTE: /opt/angstrom/arm/arm-angstrom-linux-uclibcgnueabi/include/c++/4.3.2/map
NOTE: /opt/angstrom/arm/arm-angstrom-linux-uclibcgnueabi/include/c++/4.3.2/new
...

So, what you're seeing is that we've never used the c++ headers that are spit out by the gcc-cross-sdk recipe but instead the ones from the libstdc++-dev package which comes from the 'gcc' recipe.

Just confirmed that today, meta-toolchain, DISTRO=angstrom-2008.1, MACHINE=beagleboard and a simple c++ app still build fine.

Signature · 2 lines
Tom Rini
Mentor Graphics Corporation