Comments
Patch
new file mode 100644
@@ -0,0 +1,37 @@
+PR = "r10"
+
+LIC_FILES_CHKSUM="\
+ file://src-release;endline=17;md5=4830a9ef968f3b18dd5e9f2c00db2d35\
+ file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552\
+ file://COPYING.LIB;md5=9f604d8a4f8e74f4f5140845a21b6674\
+ file://COPYING3;md5=d32239bcb673463ab874e80d47fae504\
+ file://COPYING3.LIB;md5=6a6a8e020838b23406c81b19c1d46df6\
+ file://gas/COPYING;md5=d32239bcb673463ab874e80d47fae504\
+ file://include/COPYING;md5=59530bdf33659b29e73d4adb9f9f6552\
+ file://include/COPYING3;md5=d32239bcb673463ab874e80d47fae504\
+ file://libiberty/COPYING.LIB;md5=a916467b91076e631dd8edb7424769c7\
+ file://bfd/COPYING;md5=d32239bcb673463ab874e80d47fae504\
+ "
+
+SRC_URI = "\
+ ${GNU_MIRROR}/binutils/binutils-${PV}.tar.bz2 \
+ file://binutils-uclibc-100-uclibc-conf.patch \
+ file://binutils-uclibc-300-001_ld_makefile_patch.patch \
+ file://binutils-uclibc-300-006_better_file_error.patch \
+ file://binutils-uclibc-300-012_check_ldrunpath_length.patch \
+ file://binutils-uclibc-gas-needs-libm.patch \
+ file://binutils-x86_64_i386_biarch.patch \
+ file://libtool-2.4-update.patch \
+ file://binutils-2.19.1-ld-sysroot.patch \
+ file://libiberty_path_fix.patch \
+ file://binutils-poison.patch \
+ file://libtool-rpath-fix.patch \
+ file://clone-shadow.patch \
+ file://binutils-powerpc-e5500.patch \
+ file://binutils-armv5e.patch \
+ file://mips64-default-ld-emulation.patch \
+ file://0001-PR-ld-13470.patch \
+ "
+
+SRC_URI[md5sum] = "ee0f10756c84979622b992a4a61ea3f5"
+SRC_URI[sha256sum] = "6c7af8ed1c8cf9b4b9d6e6fe09a3e1d3d479fe63984ba8b9b26bf356b6313ca9"
@@ -5,11 +5,8 @@ PN = "binutils-cross-canadian-${TRANSLATED_TARGET_ARCH}"
BPN = "binutils"
DEPENDS = "flex-native bison-native virtual/${HOST_PREFIX}gcc-crosssdk virtual/libc-nativesdk zlib-nativesdk gettext-nativesdk"
-EXTRA_OECONF = "--with-sysroot=${SDKPATH}/sysroots/${TUNE_PKGARCH}${TARGET_VENDOR}-${TARGET_OS} \
- --program-prefix=${TARGET_PREFIX} \
- --disable-werror \
- ${@base_contains('DISTRO_FEATURES', 'ld-is-gold', '--enable-gold=default', '', d)}"
-
+EXTRA_OECONF += "--with-sysroot=${SDKPATH}/sysroots/${TUNE_PKGARCH}${TARGET_VENDOR}-${TARGET_OS} \
+ "
do_install () {
autotools_do_install
@@ -1,3 +1,3 @@
-require binutils_${PV}.bb
+require binutils.inc
+require binutils-${PV}.inc
require binutils-cross-canadian.inc
-PR = "r2"
@@ -4,14 +4,10 @@ PROVIDES = "virtual/${TARGET_PREFIX}binutils"
INHIBIT_DEFAULT_DEPS = "1"
INHIBIT_AUTOTOOLS_DEPS = "1"
-EXTRA_OECONF = "--with-sysroot=${STAGING_DIR_TARGET} \
- --program-prefix=${TARGET_PREFIX} \
+EXTRA_OECONF += "--with-sysroot=${STAGING_DIR_TARGET} \
--disable-install-libbfd \
- --disable-werror \
--enable-poison-system-directories \
- ${@base_contains('DISTRO_FEATURES', 'ld-is-gold', '--enable-gold=default', '', d)} \
- ${@base_contains('DISTRO_FEATURES', 'multiarch', '--enable-64-bit-bfd', '', d)}"
-
+ "
do_install () {
oe_runmake 'DESTDIR=${D}' install
@@ -1,2 +1,3 @@
-require binutils_${PV}.bb
+require binutils.inc
+require binutils-${PV}.inc
require binutils-cross.inc
@@ -4,9 +4,6 @@ inherit crosssdk
PROVIDES = "virtual/${TARGET_PREFIX}binutils-crosssdk"
-PR = "r2"
-
do_configure_prepend () {
sed -i 's#/usr/local/lib /lib /usr/lib#${SDKPATHNATIVE}/lib ${SDKPATHNATIVE}/usr/lib /usr/local/lib /lib /usr/lib#' ${S}/ld/configure.tgt
}
-
@@ -50,13 +50,10 @@ FILES_${PN}-dbg += "${prefix}/${TARGET_SYS}/bin/.debug"
B = "${S}/build.${HOST_SYS}.${TARGET_SYS}"
EXTRA_OECONF = "--program-prefix=${TARGET_PREFIX} \
- --enable-install-libbfd \
- --enable-shared \
--disable-werror \
+ ${@base_contains('DISTRO_FEATURES', 'ld-is-gold', '--enable-gold=default', '', d)} \
${@base_contains('DISTRO_FEATURES', 'multiarch', '--enable-64-bit-bfd', '', d)}"
-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"
@@ -124,28 +121,6 @@ do_install () {
oe_multilib_header bfd.h
}
-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 || :
-}
-
inherit update-alternatives
ALTERNATIVE_PRIORITY = "100"
@@ -1,42 +1,32 @@
require binutils.inc
+require binutils-${PV}.inc
+EXTRA_OECONF += "--with-sysroot=/ \
+ --enable-install-libbfd \
+ --enable-shared \
+ "
-PR = "r9"
+EXTRA_OECONF_virtclass-native = "--enable-target=all --enable-64-bit-bfd --enable-install-libbfd"
-LIC_FILES_CHKSUM="\
- file://src-release;endline=17;md5=4830a9ef968f3b18dd5e9f2c00db2d35\
- file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552\
- file://COPYING.LIB;md5=9f604d8a4f8e74f4f5140845a21b6674\
- file://COPYING3;md5=d32239bcb673463ab874e80d47fae504\
- file://COPYING3.LIB;md5=6a6a8e020838b23406c81b19c1d46df6\
- file://gas/COPYING;md5=d32239bcb673463ab874e80d47fae504\
- file://include/COPYING;md5=59530bdf33659b29e73d4adb9f9f6552\
- file://include/COPYING3;md5=d32239bcb673463ab874e80d47fae504\
- file://libiberty/COPYING.LIB;md5=a916467b91076e631dd8edb7424769c7\
- file://bfd/COPYING;md5=d32239bcb673463ab874e80d47fae504\
- "
+do_install_virtclass-native () {
+ autotools_do_install
-SRC_URI = "\
- ${GNU_MIRROR}/binutils/binutils-${PV}.tar.bz2 \
- file://binutils-uclibc-100-uclibc-conf.patch \
- file://binutils-uclibc-300-001_ld_makefile_patch.patch \
- file://binutils-uclibc-300-006_better_file_error.patch \
- file://binutils-uclibc-300-012_check_ldrunpath_length.patch \
- file://binutils-uclibc-gas-needs-libm.patch \
- file://binutils-x86_64_i386_biarch.patch \
- file://libtool-2.4-update.patch \
- file://binutils-2.19.1-ld-sysroot.patch \
- file://libiberty_path_fix.patch \
- file://binutils-poison.patch \
- file://libtool-rpath-fix.patch \
- file://clone-shadow.patch \
- file://binutils-powerpc-e5500.patch \
- file://binutils-armv5e.patch \
- file://mips64-default-ld-emulation.patch \
- file://0001-PR-ld-13470.patch \
- "
-
-SRC_URI[md5sum] = "ee0f10756c84979622b992a4a61ea3f5"
-SRC_URI[sha256sum] = "6c7af8ed1c8cf9b4b9d6e6fe09a3e1d3d479fe63984ba8b9b26bf356b6313ca9"
+ # 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 || :
+}
BBCLASSEXTEND = "native"
Also rearrange the recipes to have common bits in inc files and not include the target bb file everywhere. This lets us add specific options to specific recipes particularly target recipe in this case Signed-off-by: Khem Raj <raj.khem@gmail.com> --- meta/recipes-devtools/binutils/binutils-2.22.inc | 37 ++++++++++++ .../binutils/binutils-cross-canadian.inc | 7 +-- .../binutils/binutils-cross-canadian_2.22.bb | 4 +- meta/recipes-devtools/binutils/binutils-cross.inc | 8 +-- .../binutils/binutils-cross_2.22.bb | 3 +- .../binutils/binutils-crosssdk_2.22.bb | 3 - meta/recipes-devtools/binutils/binutils.inc | 27 +--------- meta/recipes-devtools/binutils/binutils_2.22.bb | 60 ++++++++----------- 8 files changed, 71 insertions(+), 78 deletions(-) create mode 100644 meta/recipes-devtools/binutils/binutils-2.22.inc