summaryrefslogtreecommitdiff
path: root/meta
diff options
context:
space:
mode:
Diffstat (limited to 'meta')
-rw-r--r--meta/packages/binutils/binutils-cross-canadian.inc10
-rw-r--r--meta/packages/binutils/binutils.inc24
-rw-r--r--meta/packages/binutils/binutils_2.20.1.bb2
3 files changed, 32 insertions, 4 deletions
diff --git a/meta/packages/binutils/binutils-cross-canadian.inc b/meta/packages/binutils/binutils-cross-canadian.inc
index 23dfa161e..04fa6e2de 100644
--- a/meta/packages/binutils/binutils-cross-canadian.inc
+++ b/meta/packages/binutils/binutils-cross-canadian.inc
@@ -13,8 +13,10 @@ do_install () {
ln -sf "${bindir}/`basename $l`" "${D}${prefix}/${TARGET_SYS}/bin/`basename $l | sed -e 's,${TARGET_PREFIX},,'`"
done
- # Install the libiberty header
- install -d ${D}${includedir}
- install -m 644 ${S}/include/ansidecl.h ${D}${includedir}
- install -m 644 ${S}/include/libiberty.h ${D}${includedir}
+ # We're not interested in the libs or headers, these would come from the
+ # nativesdk or target version of the binutils recipe
+ rm -f ${D}${libdir}/libbfd*
+ rm -f ${D}${libdir}/libiberty*
+ rm -f ${D}${libdir}/libopcodes*
+ rm -f ${D}${includedir}/*.h
}
diff --git a/meta/packages/binutils/binutils.inc b/meta/packages/binutils/binutils.inc
index 98ddbcfdd..89c952b1c 100644
--- a/meta/packages/binutils/binutils.inc
+++ b/meta/packages/binutils/binutils.inc
@@ -39,8 +39,11 @@ FILES_${PN}-symlinks = " \
B = "${S}/build.${HOST_SYS}.${TARGET_SYS}"
EXTRA_OECONF = "--program-prefix=${TARGET_PREFIX} \
+ --enable-install-libbfd \
--enable-shared"
+EXTRA_OECONF_virtclass-native = "--enable-target=all --enable-64-bit-bfd --enable-install-libbfd"
+
# This is necessary due to a bug in the binutils Makefiles
# EXTRA_OEMAKE = "configure-build-libiberty all"
@@ -108,6 +111,27 @@ do_install () {
rm ${D}${bindir}/ar ${D}${bindir}/strings
}
+do_install_virtclass-native () {
+ autotools_do_install
+
+ # Install the libiberty header
+ install -d ${D}${includedir}
+ install -m 644 ${S}/include/ansidecl.h ${D}${includedir}
+ install -m 644 ${S}/include/libiberty.h ${D}${includedir}
+
+ # We only want libiberty, libbfd and libopcodes
+ rm -rf ${D}${bindir}
+ rm -rf ${D}${prefix}/${TARGET_SYS}
+ rm -rf ${D}${prefix}/lib/ldscripts
+ rm -rf ${D}${prefix}/share/info
+ rm -rf ${D}${prefix}/share/locale
+ rm -rf ${D}${prefix}/share/man
+ rmdir ${D}${prefix}/share || :
+ rmdir ${D}/${libdir}/gcc-lib || :
+ rmdir ${D}/${libdir}64/gcc-lib || :
+ rmdir ${D}/${libdir} || :
+ rmdir ${D}/${libdir}64 || :
+}
pkg_postinst_${PN}-symlinks () {
update-alternatives --install ${bindir}/ar ar ${TARGET_SYS}-ar 100
diff --git a/meta/packages/binutils/binutils_2.20.1.bb b/meta/packages/binutils/binutils_2.20.1.bb
index 3197b5efb..a533bd8bb 100644
--- a/meta/packages/binutils/binutils_2.20.1.bb
+++ b/meta/packages/binutils/binutils_2.20.1.bb
@@ -31,3 +31,5 @@ SRC_URI = "\
SRC_URI += "\
file://binutils-2.16.1-e300c2c3.patch \
"
+
+BBCLASSEXTEND = "native"