[oe-commits] Khem Raj : gcc: Package libstdc++ gdb python helpers into dev package
git version control
git at git.openembedded.org
Thu Jul 28 12:51:37 UTC 2011
Module: openembedded.git
Branch: sledz/maintenance
Commit: 105d881227d06f31c180dffb777ee63361b2f2b8
URL: http://git.openembedded.org/?p=openembedded.git&a=commit;h=105d881227d06f31c180dffb777ee63361b2f2b8
Author: Khem Raj <raj.khem at gmail.com>
Date: Thu Jun 9 12:27:32 2011 -0700
gcc: Package libstdc++ gdb python helpers into dev package
People are seeing these errrors from ldconfig
libstdc++.so.6.0.14-gdb.py is not an ELF file - it has the wrong magic
bytes at the start.
this file is moved into gdb's autoload directory
if it exists there then gdb will find it when debugging
and it wont be in the paths where ldconfig looks for
libraries.
Signed-off-by: Khem Raj <raj.khem at gmail.com>
Tested-by: Philip Balister <philip at balister.org>
Signed-off-by: Koen Kooi <koen at dominion.thruhere.net>
---
recipes/gcc/gcc-4.3.3.inc | 2 +-
recipes/gcc/gcc-4.5.inc | 3 +--
recipes/gcc/gcc-package-cross.inc | 8 +++++++-
recipes/gcc/gcc-package-target.inc | 4 ++++
4 files changed, 13 insertions(+), 4 deletions(-)
diff --git a/recipes/gcc/gcc-4.3.3.inc b/recipes/gcc/gcc-4.3.3.inc
index 649fdfe..8b6ffe5 100644
--- a/recipes/gcc/gcc-4.3.3.inc
+++ b/recipes/gcc/gcc-4.3.3.inc
@@ -8,7 +8,7 @@ LICENSE = "GPLv3"
DEPENDS = "mpfr gmp"
NATIVEDEPS = "mpfr-native gmp-native"
-INC_PR = "r23"
+INC_PR = "r24"
SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2;name=archive \
file://fedora/gcc43-c++-builtin-redecl.patch;striplevel=0 \
diff --git a/recipes/gcc/gcc-4.5.inc b/recipes/gcc/gcc-4.5.inc
index 0a43bc7..dbd9693 100644
--- a/recipes/gcc/gcc-4.5.inc
+++ b/recipes/gcc/gcc-4.5.inc
@@ -7,8 +7,7 @@ LICENSE = "GPLv3"
DEPENDS = "mpfr gmp libmpc libelf"
NATIVEDEPS = "mpfr-native gmp-native libmpc-native"
-
-INC_PR = "r33"
+INC_PR = "r37"
SRCREV = "170443"
PV = "4.5"
diff --git a/recipes/gcc/gcc-package-cross.inc b/recipes/gcc/gcc-package-cross.inc
index f9a7eeb..1533069 100644
--- a/recipes/gcc/gcc-package-cross.inc
+++ b/recipes/gcc/gcc-package-cross.inc
@@ -4,7 +4,7 @@ PACKAGE_STRIP = "no"
SHLIBSDIR = "${STAGING_DIR_TARGET}/shlibs"
-PACKAGES = "libgcc libssp libstdc++ libg2c libgfortran"
+PACKAGES = "libgcc libssp libstdc++ libg2c libgfortran libstdc++-dev libgcc-dev"
# Called from within gcc-cross, so libdir is set wrong
FILES_libg2c = "${target_libdir}/libg2c.so.*"
@@ -18,6 +18,7 @@ FILES_libgcc-dev = "${target_libdir}/libgcc_s.so"
FILES_libstdc++ = "${target_libdir}/libstdc++.so.*"
+FILES_libstdc++-dev = "${target_datadir}/gdb/auto-load/${libdir}/libstdc++.so.*-gdb.py*"
do_install () {
oe_runmake 'DESTDIR=${D}' install
install -d ${D}${target_base_libdir}
@@ -68,5 +69,10 @@ GROUP ( libgcc_s.so.1 libgcc.a )" > ${D}${target_libdir}/libgcc_s.so
# We use libiberty from binutils or binutils-cross
rm -f ${D}${libdir}/libiberty.a
rm -f ${D}${target_libdir}/libiberty.a
+ if [ -f ${D}${target_libdir}/libstdc++.so.*-gdb.py ]; then
+ # move the gdb python helpers to gdb auto-load directory
+ install -d ${D}${target_datadir}/gdb/auto-load${target_libdir}
+ mv -f ${D}${target_libdir}/libstdc++.so.*-gdb.py* ${D}${target_datadir}/gdb/auto-load${target_libdir}
+ fi
}
diff --git a/recipes/gcc/gcc-package-target.inc b/recipes/gcc/gcc-package-target.inc
index 438c314..33567da 100644
--- a/recipes/gcc/gcc-package-target.inc
+++ b/recipes/gcc/gcc-package-target.inc
@@ -82,6 +82,7 @@ FILES_libstdc++-dev = "\
${libdir}/libstdc++.a \
${libdir}/libsupc++.la \
${libdir}/libsupc++.a \
+ ${datadir}/gdb/auto-load${libdir}/libstdc++.so.*-gdb.py* \
"
FILES_libgfortran-dev = "${libdir}/libgfortran.a \
@@ -168,4 +169,7 @@ GROUP ( libgcc_s.so.1 libgcc.a )" > ${D}${libdir}/libgcc_s.so
# Remove precompiled c++ headers as they are really big
rm -rf ${D}${includedir}/c++/${BINV}/${TARGET_SYS}/bits/*.gch
+ # move the gdb python helpers to gdb auto-load directory
+ install -d ${D}${datadir}/gdb/auto-load/${libdir}
+ mv ${D}${libdir}/libstdc++.so.*-gdb.py* ${D}${datadir}/gdb/auto-load${libdir}
}
More information about the Openembedded-commits
mailing list