+++ /dev/null
-include binutils_${PV}.oe
-inherit cross
-PROVIDES = "virtual/${TARGET_PREFIX}binutils"
-FILESDIR = "${@os.path.dirname(oe.data.getVar('FILE',d,1))}/binutils-${PV}"
-PACKAGES = ""
-EXTRA_OECONF = "--with-sysroot=${CROSS_DIR}/${TARGET_SYS} \
- --disable-nls \
- --program-prefix=${TARGET_PREFIX}"
-
-do_stage () {
- oe_runmake install
-
- # We don't really need these, so we'll remove them...
- rm -rf ${CROSS_DIR}/lib/ldscripts
- rm -rf ${CROSS_DIR}/share/info
- rm -rf ${CROSS_DIR}/share/locale
- rm -rf ${CROSS_DIR}/share/man
- rmdir ${CROSS_DIR}/share || :
- rmdir ${CROSS_DIR}/${libdir}/gcc-lib || :
- rmdir ${CROSS_DIR}/${libdir} || :
- rmdir ${CROSS_DIR}/${prefix} || :
-
- # We want to move this into the target specific location
- mkdir -p ${CROSS_DIR}/${TARGET_SYS}/lib
- mv -f ${CROSS_DIR}/lib/libiberty.a ${CROSS_DIR}/${TARGET_SYS}/lib
- rmdir ${CROSS_DIR}/lib || :
-}
-
-do_install () {
- :
-}
-
+++ /dev/null
-include binutils_${PV}.oe
-inherit cross
-PROVIDES = "virtual/${TARGET_PREFIX}binutils"
-FILESDIR = "${@os.path.dirname(oe.data.getVar('FILE',d,1))}/binutils-${PV}"
-PACKAGES = ""
-EXTRA_OECONF = "--with-sysroot=${CROSS_DIR}/${TARGET_SYS} \
- --disable-nls \
- --program-prefix=${TARGET_PREFIX}"
-
-do_stage () {
- oe_runmake install
-
- # We don't really need these, so we'll remove them...
- rm -rf ${CROSS_DIR}/lib/ldscripts
- rm -rf ${CROSS_DIR}/share/info
- rm -rf ${CROSS_DIR}/share/locale
- rm -rf ${CROSS_DIR}/share/man
- rmdir ${CROSS_DIR}/share || :
- rmdir ${CROSS_DIR}/${libdir}/gcc-lib || :
- rmdir ${CROSS_DIR}/${libdir} || :
- rmdir ${CROSS_DIR}/${prefix} || :
-
- # We want to move this into the target specific location
- mkdir -p ${CROSS_DIR}/${TARGET_SYS}/lib
- mv -f ${CROSS_DIR}/lib/libiberty.a ${CROSS_DIR}/${TARGET_SYS}/lib
- rmdir ${CROSS_DIR}/lib || :
-}
-
-do_install () {
- :
-}
-
+++ /dev/null
-include binutils_${PV}.oe
-inherit cross
-PROVIDES = "virtual/${TARGET_PREFIX}binutils"
-FILESDIR = "${@os.path.dirname(oe.data.getVar('FILE',d,1))}/binutils-${PV}"
-PACKAGES = ""
-EXTRA_OECONF = "--with-sysroot=${CROSS_DIR}/${TARGET_SYS} \
- --disable-nls \
- --program-prefix=${TARGET_PREFIX}"
-
-do_stage () {
- oe_runmake install
-
- # We don't really need these, so we'll remove them...
- rm -rf ${CROSS_DIR}/lib/ldscripts
- rm -rf ${CROSS_DIR}/share/info
- rm -rf ${CROSS_DIR}/share/locale
- rm -rf ${CROSS_DIR}/share/man
- rmdir ${CROSS_DIR}/share || :
- rmdir ${CROSS_DIR}/${libdir}/gcc-lib || :
- rmdir ${CROSS_DIR}/${libdir} || :
- rmdir ${CROSS_DIR}/${prefix} || :
-
- # We want to move this into the target specific location
- mkdir -p ${CROSS_DIR}/${TARGET_SYS}/lib
- mv -f ${CROSS_DIR}/lib/libiberty.a ${CROSS_DIR}/${TARGET_SYS}/lib
- rmdir ${CROSS_DIR}/lib || :
-}
-
-do_install () {
- :
-}
-
+++ /dev/null
-include binutils_${PV}.oe
-inherit cross
-PROVIDES = "virtual/${TARGET_PREFIX}binutils"
-FILESDIR = "${@os.path.dirname(oe.data.getVar('FILE',d,1))}/binutils-${PV}"
-PACKAGES = ""
-EXTRA_OECONF = "--with-sysroot=${CROSS_DIR}/${TARGET_SYS} \
- --disable-nls \
- --program-prefix=${TARGET_PREFIX}"
-
-do_stage () {
- oe_runmake install
-
- # We don't really need these, so we'll remove them...
- rm -rf ${CROSS_DIR}/lib/ldscripts
- rm -rf ${CROSS_DIR}/share/info
- rm -rf ${CROSS_DIR}/share/locale
- rm -rf ${CROSS_DIR}/share/man
- rmdir ${CROSS_DIR}/share || :
- rmdir ${CROSS_DIR}/${libdir}/gcc-lib || :
- rmdir ${CROSS_DIR}/${libdir} || :
- rmdir ${CROSS_DIR}/${prefix} || :
-
- # We want to move this into the target specific location
- mkdir -p ${CROSS_DIR}/${TARGET_SYS}/lib
- mv -f ${CROSS_DIR}/lib/libiberty.a ${CROSS_DIR}/${TARGET_SYS}/lib
- rmdir ${CROSS_DIR}/lib || :
-}
-
-do_install () {
- :
-}
-
+++ /dev/null
-include binutils-uclibc_${PV}.oe
-inherit cross
-PROVIDES = "virtual/${TARGET_PREFIX}binutils"
-FILESDIR = "${@os.path.dirname(oe.data.getVar('FILE',d,1))}/binutils-${PV}"
-PACKAGES = ""
-EXTRA_OECONF = "--with-sysroot=${CROSS_DIR}/${TARGET_SYS} \
- --disable-nls \
- --program-prefix=${TARGET_PREFIX}"
-
-do_stage () {
- oe_runmake install
-
- # We don't really need these, so we'll remove them...
- rm -rf ${CROSS_DIR}/lib/ldscripts
- rm -rf ${CROSS_DIR}/share/info
- rm -rf ${CROSS_DIR}/share/locale
- rm -rf ${CROSS_DIR}/share/man
- rmdir ${CROSS_DIR}/share || :
- rmdir ${CROSS_DIR}${libdir}/gcc-lib || :
- rmdir ${CROSS_DIR}${libdir} || :
- rmdir ${CROSS_DIR}${prefix} || :
-
- # We want to move this into the target specific location
- mkdir -p ${CROSS_DIR}/${TARGET_SYS}/lib
- mv -f ${CROSS_DIR}/lib/libiberty.a ${CROSS_DIR}/${TARGET_SYS}/lib
- rmdir ${CROSS_DIR}/lib || :
-}
-
-do_install () {
- :
-}
-
+++ /dev/null
-include binutils-uclibc_${PV}.oe
-inherit cross
-PROVIDES = "virtual/${TARGET_PREFIX}binutils"
-FILESDIR = "${@os.path.dirname(oe.data.getVar('FILE',d,1))}/binutils-${PV}"
-PACKAGES = ""
-EXTRA_OECONF = "--with-sysroot=${CROSS_DIR}/${TARGET_SYS} \
- --disable-nls \
- --program-prefix=${TARGET_PREFIX}"
-
-do_stage () {
- oe_runmake install
-
- # We don't really need these, so we'll remove them...
- rm -rf ${CROSS_DIR}/lib/ldscripts
- rm -rf ${CROSS_DIR}/share/info
- rm -rf ${CROSS_DIR}/share/locale
- rm -rf ${CROSS_DIR}/share/man
- rmdir ${CROSS_DIR}/share || :
- rmdir ${CROSS_DIR}${libdir}/gcc-lib || :
- rmdir ${CROSS_DIR}${libdir} || :
- rmdir ${CROSS_DIR}${prefix} || :
-
- # We want to move this into the target specific location
- mkdir -p ${CROSS_DIR}/${TARGET_SYS}/lib
- mv -f ${CROSS_DIR}/lib/libiberty.a ${CROSS_DIR}/${TARGET_SYS}/lib
- rmdir ${CROSS_DIR}/lib || :
-}
-
-do_install () {
- :
-}
-
+++ /dev/null
-include binutils-uclibc_${PV}.oe
-inherit cross
-PROVIDES = "virtual/${TARGET_PREFIX}binutils"
-FILESDIR = "${@os.path.dirname(oe.data.getVar('FILE',d,1))}/binutils-${PV}"
-PACKAGES = ""
-EXTRA_OECONF = "--with-sysroot=${CROSS_DIR}/${TARGET_SYS} \
- --disable-nls \
- --program-prefix=${TARGET_PREFIX}"
-
-do_stage () {
- oe_runmake install
-
- # We don't really need these, so we'll remove them...
- rm -rf ${CROSS_DIR}/lib/ldscripts
- rm -rf ${CROSS_DIR}/share/info
- rm -rf ${CROSS_DIR}/share/locale
- rm -rf ${CROSS_DIR}/share/man
- rmdir ${CROSS_DIR}/share || :
- rmdir ${CROSS_DIR}${libdir}/gcc-lib || :
- rmdir ${CROSS_DIR}${libdir} || :
- rmdir ${CROSS_DIR}${prefix} || :
-
- # We want to move this into the target specific location
- mkdir -p ${CROSS_DIR}/${TARGET_SYS}/lib
- mv -f ${CROSS_DIR}/lib/libiberty.a ${CROSS_DIR}/${TARGET_SYS}/lib
- rmdir ${CROSS_DIR}/lib || :
-}
-
-do_install () {
- :
-}
-
+++ /dev/null
-include binutils-uclibc_${PV}.oe
-inherit cross
-PROVIDES = "virtual/${TARGET_PREFIX}binutils"
-FILESDIR = "${@os.path.dirname(oe.data.getVar('FILE',d,1))}/binutils-${PV}"
-PACKAGES = ""
-EXTRA_OECONF = "--with-sysroot=${CROSS_DIR}/${TARGET_SYS} \
- --disable-nls \
- --program-prefix=${TARGET_PREFIX}"
-
-do_stage () {
- oe_runmake install
-
- # We don't really need these, so we'll remove them...
- rm -rf ${CROSS_DIR}/lib/ldscripts
- rm -rf ${CROSS_DIR}/share/info
- rm -rf ${CROSS_DIR}/share/locale
- rm -rf ${CROSS_DIR}/share/man
- rmdir ${CROSS_DIR}/share || :
- rmdir ${CROSS_DIR}${libdir}/gcc-lib || :
- rmdir ${CROSS_DIR}${libdir} || :
- rmdir ${CROSS_DIR}${prefix} || :
-
- # We want to move this into the target specific location
- mkdir -p ${CROSS_DIR}/${TARGET_SYS}/lib
- mv -f ${CROSS_DIR}/lib/libiberty.a ${CROSS_DIR}/${TARGET_SYS}/lib
- rmdir ${CROSS_DIR}/lib || :
-}
-
-do_install () {
- :
-}
-
+++ /dev/null
-include binutils_${PV}.oe
-FILESDIR = "${@os.path.dirname(oe.data.getVar('FILE',d,1))}/binutils-${PV}"
-
-binutilsbuild_do_patch () {
- oenote IN binutils patch
- perl -i -p -e 's,#.*define.*ELF_DYNAMIC_INTERPRETER.*".*",#define ELF_DYNAMIC_INTERPRETER "/lib/ld-uClibc.so.0",;' `grep -lr ELF_DYNAMIC_INTERPRETER *`
-}
-
-python do_patch () {
- oe.build.exec_func('base_do_patch', d)
- oe.build.exec_func('binutilsbuild_do_patch', d)
-}
-
+++ /dev/null
-include binutils_${PV}.oe
-FILESDIR = "${@os.path.dirname(oe.data.getVar('FILE',d,1))}/binutils-${PV}"
-
-binutilsbuild_do_patch () {
- oenote IN binutils patch
- perl -i -p -e 's,#.*define.*ELF_DYNAMIC_INTERPRETER.*".*",#define ELF_DYNAMIC_INTERPRETER "/lib/ld-uClibc.so.0",;' `grep -lr ELF_DYNAMIC_INTERPRETER *`
-}
-
-python do_patch () {
- oe.build.exec_func('base_do_patch', d)
- oe.build.exec_func('binutilsbuild_do_patch', d)
-}
-
+++ /dev/null
-include binutils_${PV}.oe
-FILESDIR = "${@os.path.dirname(oe.data.getVar('FILE',d,1))}/binutils-${PV}"
-
-binutilsbuild_do_patch () {
- oenote IN binutils patch
- perl -i -p -e 's,#.*define.*ELF_DYNAMIC_INTERPRETER.*".*",#define ELF_DYNAMIC_INTERPRETER "/lib/ld-uClibc.so.0",;' `grep -lr ELF_DYNAMIC_INTERPRETER *`
-}
-
-python do_patch () {
- oe.build.exec_func('base_do_patch', d)
- oe.build.exec_func('binutilsbuild_do_patch', d)
-}
-
+++ /dev/null
-include binutils_${PV}.oe
-FILESDIR = "${@os.path.dirname(oe.data.getVar('FILE',d,1))}/binutils-${PV}"
-
-binutilsbuild_do_patch () {
- oenote IN binutils patch
- perl -i -p -e 's,#.*define.*ELF_DYNAMIC_INTERPRETER.*".*",#define ELF_DYNAMIC_INTERPRETER "/lib/ld-uClibc.so.0",;' `grep -lr ELF_DYNAMIC_INTERPRETER *`
-}
-
-python do_patch () {
- oe.build.exec_func('base_do_patch', d)
- oe.build.exec_func('binutilsbuild_do_patch', d)
-}
-
+++ /dev/null
-inherit autotools
-
-DESCRIPTION = "A GNU collection of binary utilities"
-LICENSE = "GPL"
-MAINTAINER = "Gerald Britton <gbritton@doomcom.org>"
-
-#
-# For now, we will skip building of a gcc package if it is a uclibc one
-# and our build is not a uclibc one, and we skip a glibc one if our build
-# is a uclibc build.
-#
-# See the note in gcc/gcc_3.4.0.oe
-#
-
-python __anonymous () {
- import oe, re
- uc_pkg = (re.search('uclibc', oe.data.getVar('PN', d, 1)) != None)
- uc_os = (re.match('.*uclibc$', oe.data.getVar('TARGET_OS', d, 1)) != None)
- if uc_pkg != uc_os:
- raise oe.parse.SkipPackage("incompatible with target %s" %
- oe.data.getVar('TARGET_OS', d, 1))
-}
-
-PACKAGES = "${PN} ${PN}-dev ${PN}-doc ${PN}-symlinks"
-
-FILES_${PN} = " \
- ${bindir}/${TARGET_PREFIX}*"
-
-FILES_${PN}-dev = " \
- ${includedir} \
- ${libdir}/*.a"
-
-FILES_${PN}-symlinks = " \
- ${bindir}/addr2line \
- ${bindir}/ar \
- ${bindir}/as \
- ${bindir}/ld \
- ${bindir}/nm \
- ${bindir}/objcopy \
- ${bindir}/objdump \
- ${bindir}/ranlib \
- ${bindir}/readelf \
- ${bindir}/size \
- ${bindir}/strings \
- ${bindir}/strip"
-
-SRC_URI = "http://ftp.kernel.org/pub/linux/devel/binutils/binutils-${PV}.tar.bz2 \
- file://${FILESDIR}/binutils-001_ld_makefile.patch;patch=1 \
- file://${FILESDIR}/binutils-006_better_file_error.patch;patch=1 \
- file://${FILESDIR}/binutils-009_signed_char_fix.patch;patch=1 \
- file://${FILESDIR}/binutils-012_check_ldrunpath_length.patch;patch=1 \
- file://${FILESDIR}/binutils-100_cflags_for_build.patch;patch=1 \
- file://${FILESDIR}/binutils-906-hjl_libtool_dso.patch;patch=1"
-
-S = "${WORKDIR}/binutils-${PV}"
-B = "${S}/build.${HOST_SYS}.${TARGET_SYS}"
-
-EXTRA_OECONF = "--with-sysroot=${prefix} \
- --disable-nls \
- --program-prefix=${TARGET_PREFIX}"
-
-# This is necessary due to a bug in the binutils Makefiles
-EXTRA_OEMAKE = "configure-build-libiberty all"
-
-export AR = "${HOST_PREFIX}ar"
-export AS = "${HOST_PREFIX}as"
-export LD = "${HOST_PREFIX}ld"
-export NM = "${HOST_PREFIX}nm"
-export RANLIB = "${HOST_PREFIX}ranlib"
-export OBJCOPY = "${HOST_PREFIX}objcopy"
-export OBJDUMP = "${HOST_PREFIX}objdump"
-
-export AR_FOR_TARGET = "${TARGET_PREFIX}ar"
-export AS_FOR_TARGET = "${TARGET_PREFIX}as"
-export LD_FOR_TARGET = "${TARGET_PREFIX}ld"
-export NM_FOR_TARGET = "${TARGET_PREFIX}nm"
-export RANLIB_FOR_TARGET = "${TARGET_PREFIX}ranlib"
-
-export CC_FOR_HOST = "${CCACHE} ${HOST_PREFIX}gcc"
-export CXX_FOR_HOST = "${CCACHE} ${HOST_PREFIX}gcc"
-
-export CC_FOR_BUILD = "${BUILD_CC}"
-
-export CC = "${CCACHE} ${HOST_PREFIX}gcc"
-
-do_configure () {
- oe_runconf
-}
-
-do_install () {
- autotools_do_install
-
- # We don't really need these, so we'll remove them...
- rm -rf ${D}/${libdir}/ldscripts
-
- # Install the libiberty header
- install -m 644 ${S}/include/ansidecl.h ${D}/${includedir}
- install -m 644 ${S}/include/libiberty.h ${D}/${includedir}
-
- cd ${D}/${bindir}
-
- # Symlinks for ease of running these on the native target
- for p in ${TARGET_SYS}-* ; do
- ln -sf $p `echo $p | sed -e s,${TARGET_SYS}-,,`
- done
-}
+++ /dev/null
-inherit autotools
-
-DESCRIPTION = "A GNU collection of binary utilities"
-LICENSE = "GPL"
-MAINTAINER = "Gerald Britton <gbritton@doomcom.org>"
-
-#
-# For now, we will skip building of a gcc package if it is a uclibc one
-# and our build is not a uclibc one, and we skip a glibc one if our build
-# is a uclibc build.
-#
-# See the note in gcc/gcc_3.4.0.oe
-#
-
-python __anonymous () {
- import oe, re
- uc_pkg = (re.search('uclibc', oe.data.getVar('PN', d, 1)) != None)
- uc_os = (re.match('.*uclibc$', oe.data.getVar('TARGET_OS', d, 1)) != None)
- if uc_pkg != uc_os:
- raise oe.parse.SkipPackage("incompatible with target %s" %
- oe.data.getVar('TARGET_OS', d, 1))
-}
-
-PACKAGES = "${PN} ${PN}-dev ${PN}-doc ${PN}-symlinks"
-
-FILES_${PN} = " \
- ${bindir}/${TARGET_PREFIX}*"
-
-FILES_${PN}-dev = " \
- ${includedir} \
- ${libdir}/*.a"
-
-FILES_${PN}-symlinks = " \
- ${bindir}/addr2line \
- ${bindir}/ar \
- ${bindir}/as \
- ${bindir}/ld \
- ${bindir}/nm \
- ${bindir}/objcopy \
- ${bindir}/objdump \
- ${bindir}/ranlib \
- ${bindir}/readelf \
- ${bindir}/size \
- ${bindir}/strings \
- ${bindir}/strip"
-
-SRC_URI = "http://ftp.kernel.org/pub/linux/devel/binutils/binutils-${PV}.tar.bz2 \
- file://${FILESDIR}/binutils-001_ld_makefile.patch;patch=1 \
- file://${FILESDIR}/binutils-006_better_file_error.patch;patch=1 \
- file://${FILESDIR}/binutils-009_signed_char_fix.patch;patch=1 \
- file://${FILESDIR}/binutils-012_check_ldrunpath_length.patch;patch=1 \
- file://${FILESDIR}/binutils-100_cflags_for_build.patch;patch=1 \
- file://${FILESDIR}/binutils-906-hjl_libtool_dso.patch;patch=1"
-
-S = "${WORKDIR}/binutils-${PV}"
-B = "${S}/build.${HOST_SYS}.${TARGET_SYS}"
-
-EXTRA_OECONF = "--with-sysroot=${prefix} \
- --disable-nls \
- --program-prefix=${TARGET_PREFIX}"
-
-# This is necessary due to a bug in the binutils Makefiles
-EXTRA_OEMAKE = "configure-build-libiberty all"
-
-export AR = "${HOST_PREFIX}ar"
-export AS = "${HOST_PREFIX}as"
-export LD = "${HOST_PREFIX}ld"
-export NM = "${HOST_PREFIX}nm"
-export RANLIB = "${HOST_PREFIX}ranlib"
-export OBJCOPY = "${HOST_PREFIX}objcopy"
-export OBJDUMP = "${HOST_PREFIX}objdump"
-
-export AR_FOR_TARGET = "${TARGET_PREFIX}ar"
-export AS_FOR_TARGET = "${TARGET_PREFIX}as"
-export LD_FOR_TARGET = "${TARGET_PREFIX}ld"
-export NM_FOR_TARGET = "${TARGET_PREFIX}nm"
-export RANLIB_FOR_TARGET = "${TARGET_PREFIX}ranlib"
-
-export CC_FOR_HOST = "${CCACHE} ${HOST_PREFIX}gcc"
-export CXX_FOR_HOST = "${CCACHE} ${HOST_PREFIX}gcc"
-
-export CC_FOR_BUILD = "${BUILD_CC}"
-
-export CC = "${CCACHE} ${HOST_PREFIX}gcc"
-
-do_configure () {
- oe_runconf
-}
-
-do_install () {
- autotools_do_install
-
- # We don't really need these, so we'll remove them...
- rm -rf ${D}/${libdir}/ldscripts
-
- # Install the libiberty header
- install -m 644 ${S}/include/ansidecl.h ${D}/${includedir}
- install -m 644 ${S}/include/libiberty.h ${D}/${includedir}
-
- cd ${D}/${bindir}
-
- # Symlinks for ease of running these on the native target
- for p in ${TARGET_SYS}-* ; do
- ln -sf $p `echo $p | sed -e s,${TARGET_SYS}-,,`
- done
-}
+++ /dev/null
-inherit autotools
-
-DESCRIPTION = "A GNU collection of binary utilities"
-LICENSE = "GPL"
-MAINTAINER = "Gerald Britton <gbritton@doomcom.org>"
-
-#
-# For now, we will skip building of a gcc package if it is a uclibc one
-# and our build is not a uclibc one, and we skip a glibc one if our build
-# is a uclibc build.
-#
-# See the note in gcc/gcc_3.4.0.oe
-#
-
-python __anonymous () {
- import oe, re
- uc_pkg = (re.search('uclibc', oe.data.getVar('PN', d, 1)) != None)
- uc_os = (re.match('.*uclibc$', oe.data.getVar('TARGET_OS', d, 1)) != None)
- if uc_pkg != uc_os:
- raise oe.parse.SkipPackage("incompatible with target %s" %
- oe.data.getVar('TARGET_OS', d, 1))
-}
-
-PACKAGES = "${PN} ${PN}-dev ${PN}-doc ${PN}-symlinks"
-
-FILES_${PN} = " \
- ${bindir}/${TARGET_PREFIX}*"
-
-FILES_${PN}-dev = " \
- ${includedir} \
- ${libdir}/*.a"
-
-FILES_${PN}-symlinks = " \
- ${bindir}/addr2line \
- ${bindir}/ar \
- ${bindir}/as \
- ${bindir}/ld \
- ${bindir}/nm \
- ${bindir}/objcopy \
- ${bindir}/objdump \
- ${bindir}/ranlib \
- ${bindir}/readelf \
- ${bindir}/size \
- ${bindir}/strings \
- ${bindir}/strip"
-
-SRC_URI = "http://ftp.kernel.org/pub/linux/devel/binutils/binutils-${PV}.tar.bz2 \
- file://${FILESDIR}/binutils-001_ld_makefile.patch;patch=1 \
- file://${FILESDIR}/binutils-006_better_file_error.patch;patch=1 \
- file://${FILESDIR}/binutils-009_signed_char_fix.patch;patch=1 \
- file://${FILESDIR}/binutils-012_check_ldrunpath_length.patch;patch=1 \
- file://${FILESDIR}/binutils-100_cflags_for_build.patch;patch=1"
-
-S = "${WORKDIR}/binutils-${PV}"
-B = "${S}/build.${HOST_SYS}.${TARGET_SYS}"
-
-EXTRA_OECONF = "--with-sysroot=${prefix} \
- --disable-nls \
- --program-prefix=${TARGET_PREFIX}"
-
-# This is necessary due to a bug in the binutils Makefiles
-EXTRA_OEMAKE = "configure-build-libiberty all"
-
-export AR = "${HOST_PREFIX}ar"
-export AS = "${HOST_PREFIX}as"
-export LD = "${HOST_PREFIX}ld"
-export NM = "${HOST_PREFIX}nm"
-export RANLIB = "${HOST_PREFIX}ranlib"
-export OBJCOPY = "${HOST_PREFIX}objcopy"
-export OBJDUMP = "${HOST_PREFIX}objdump"
-
-export AR_FOR_TARGET = "${TARGET_PREFIX}ar"
-export AS_FOR_TARGET = "${TARGET_PREFIX}as"
-export LD_FOR_TARGET = "${TARGET_PREFIX}ld"
-export NM_FOR_TARGET = "${TARGET_PREFIX}nm"
-export RANLIB_FOR_TARGET = "${TARGET_PREFIX}ranlib"
-
-export CC_FOR_HOST = "${CCACHE} ${HOST_PREFIX}gcc"
-export CXX_FOR_HOST = "${CCACHE} ${HOST_PREFIX}gcc"
-
-export CC_FOR_BUILD = "${BUILD_CC}"
-
-export CC = "${CCACHE} ${HOST_PREFIX}gcc"
-
-do_configure () {
- oe_runconf
-}
-
-do_install () {
- autotools_do_install
-
- # We don't really need these, so we'll remove them...
- rm -rf ${D}/${libdir}/ldscripts
-
- # Install the libiberty header
- install -m 644 ${S}/include/ansidecl.h ${D}/${includedir}
- install -m 644 ${S}/include/libiberty.h ${D}/${includedir}
-
- cd ${D}/${bindir}
-
- # Symlinks for ease of running these on the native target
- for p in ${TARGET_SYS}-* ; do
- ln -sf $p `echo $p | sed -e s,${TARGET_SYS}-,,`
- done
-}
+++ /dev/null
-inherit autotools
-
-DESCRIPTION = "A GNU collection of binary utilities"
-LICENSE = "GPL"
-MAINTAINER = "Gerald Britton <gbritton@doomcom.org>"
-
-#
-# For now, we will skip building of a gcc package if it is a uclibc one
-# and our build is not a uclibc one, and we skip a glibc one if our build
-# is a uclibc build.
-#
-# See the note in gcc/gcc_3.4.0.oe
-#
-
-python __anonymous () {
- import oe, re
- uc_pkg = (re.search('uclibc', oe.data.getVar('PN', d, 1)) != None)
- uc_os = (re.match('.*uclibc$', oe.data.getVar('TARGET_OS', d, 1)) != None)
- if uc_pkg != uc_os:
- raise oe.parse.SkipPackage("incompatible with target %s" %
- oe.data.getVar('TARGET_OS', d, 1))
-}
-
-PACKAGES = "${PN} ${PN}-dev ${PN}-doc ${PN}-symlinks"
-
-FILES_${PN} = " \
- ${bindir}/${TARGET_PREFIX}*"
-
-FILES_${PN}-dev = " \
- ${includedir} \
- ${libdir}/*.a"
-
-FILES_${PN}-symlinks = " \
- ${bindir}/addr2line \
- ${bindir}/ar \
- ${bindir}/as \
- ${bindir}/ld \
- ${bindir}/nm \
- ${bindir}/objcopy \
- ${bindir}/objdump \
- ${bindir}/ranlib \
- ${bindir}/readelf \
- ${bindir}/size \
- ${bindir}/strings \
- ${bindir}/strip"
-
-SRC_URI = "http://ftp.kernel.org/pub/linux/devel/binutils/binutils-${PV}.tar.bz2 \
- file://${FILESDIR}/binutils-001_ld_makefile.patch;patch=1 \
- file://${FILESDIR}/binutils-006_better_file_error.patch;patch=1 \
- file://${FILESDIR}/binutils-009_signed_char_fix.patch;patch=1 \
- file://${FILESDIR}/binutils-012_check_ldrunpath_length.patch;patch=1 \
- file://${FILESDIR}/binutils-100_cflags_for_build.patch;patch=1"
-
-S = "${WORKDIR}/binutils-${PV}"
-B = "${S}/build.${HOST_SYS}.${TARGET_SYS}"
-
-EXTRA_OECONF = "--with-sysroot=${prefix} \
- --disable-nls \
- --program-prefix=${TARGET_PREFIX}"
-
-# This is necessary due to a bug in the binutils Makefiles
-EXTRA_OEMAKE = "configure-build-libiberty all"
-
-export AR = "${HOST_PREFIX}ar"
-export AS = "${HOST_PREFIX}as"
-export LD = "${HOST_PREFIX}ld"
-export NM = "${HOST_PREFIX}nm"
-export RANLIB = "${HOST_PREFIX}ranlib"
-export OBJCOPY = "${HOST_PREFIX}objcopy"
-export OBJDUMP = "${HOST_PREFIX}objdump"
-
-export AR_FOR_TARGET = "${TARGET_PREFIX}ar"
-export AS_FOR_TARGET = "${TARGET_PREFIX}as"
-export LD_FOR_TARGET = "${TARGET_PREFIX}ld"
-export NM_FOR_TARGET = "${TARGET_PREFIX}nm"
-export RANLIB_FOR_TARGET = "${TARGET_PREFIX}ranlib"
-
-export CC_FOR_HOST = "${CCACHE} ${HOST_PREFIX}gcc"
-export CXX_FOR_HOST = "${CCACHE} ${HOST_PREFIX}gcc"
-
-export CC_FOR_BUILD = "${BUILD_CC}"
-
-export CC = "${CCACHE} ${HOST_PREFIX}gcc"
-
-do_configure () {
- oe_runconf
-}
-
-do_install () {
- autotools_do_install
-
- # We don't really need these, so we'll remove them...
- rm -rf ${D}/${libdir}/ldscripts
-
- # Install the libiberty header
- install -m 644 ${S}/include/ansidecl.h ${D}/${includedir}
- install -m 644 ${S}/include/libiberty.h ${D}/${includedir}
-
- cd ${D}/${bindir}
-
- # Symlinks for ease of running these on the native target
- for p in ${TARGET_SYS}-* ; do
- ln -sf $p `echo $p | sed -e s,${TARGET_SYS}-,,`
- done
-}
+inherit autotools
+
+DESCRIPTION = "A GNU collection of binary utilities"
+LICENSE = "GPL"
+MAINTAINER = "Gerald Britton <gbritton@doomcom.org>"
+
+PACKAGES = "${PN} ${PN}-dev ${PN}-doc ${PN}-symlinks"
+
+FILES_${PN} = " \
+ ${bindir}/${TARGET_PREFIX}*"
+
+FILES_${PN}-dev = " \
+ ${includedir} \
+ ${libdir}/*.a"
+
+FILES_${PN}-symlinks = " \
+ ${bindir}/addr2line \
+ ${bindir}/ar \
+ ${bindir}/as \
+ ${bindir}/ld \
+ ${bindir}/nm \
+ ${bindir}/objcopy \
+ ${bindir}/objdump \
+ ${bindir}/ranlib \
+ ${bindir}/readelf \
+ ${bindir}/size \
+ ${bindir}/strings \
+ ${bindir}/strip"
+
+SRC_URI = \
+ "http://ftp.kernel.org/pub/linux/devel/binutils/binutils-${PV}.tar.bz2 \
+ file://${FILESDIR}/binutils-001_ld_makefile.patch;patch=1 \
+ file://${FILESDIR}/binutils-006_better_file_error.patch;patch=1 \
+ file://${FILESDIR}/binutils-009_signed_char_fix.patch;patch=1 \
+ file://${FILESDIR}/binutils-100_cflags_for_build.patch;patch=1 \
+ file://${FILESDIR}/binutils-2.15.90.0.3-uclibc-100-conf.patch;patch=1 \
+ file://${FILESDIR}/binutils-2.15.90.0.3-uclibc-200-build_modules.patch;patch=1"
+
+S = "${WORKDIR}/binutils-${PV}"
+B = "${S}/build.${HOST_SYS}.${TARGET_SYS}"
+
+EXTRA_OECONF = "--with-sysroot=${prefix} \
+ --disable-nls \
+ --program-prefix=${TARGET_PREFIX}"
+
+# This is necessary due to a bug in the binutils Makefiles
+EXTRA_OEMAKE = "configure-build-libiberty all"
+
+export AR = "${HOST_PREFIX}ar"
+export AS = "${HOST_PREFIX}as"
+export LD = "${HOST_PREFIX}ld"
+export NM = "${HOST_PREFIX}nm"
+export RANLIB = "${HOST_PREFIX}ranlib"
+export OBJCOPY = "${HOST_PREFIX}objcopy"
+export OBJDUMP = "${HOST_PREFIX}objdump"
+
+export AR_FOR_TARGET = "${TARGET_PREFIX}ar"
+export AS_FOR_TARGET = "${TARGET_PREFIX}as"
+export LD_FOR_TARGET = "${TARGET_PREFIX}ld"
+export NM_FOR_TARGET = "${TARGET_PREFIX}nm"
+export RANLIB_FOR_TARGET = "${TARGET_PREFIX}ranlib"
+
+export CC_FOR_HOST = "${CCACHE} ${HOST_PREFIX}gcc"
+export CXX_FOR_HOST = "${CCACHE} ${HOST_PREFIX}gcc"
+
+export CC_FOR_BUILD = "${BUILD_CC}"
+
+export CC = "${CCACHE} ${HOST_PREFIX}gcc"
+
+do_configure () {
+ oe_runconf
+}
+
+do_install () {
+ autotools_do_install
+
+ # We don't really need these, so we'll remove them...
+ rm -rf ${D}/${libdir}/ldscripts
+
+ # Install the libiberty header
+ install -m 644 ${S}/include/ansidecl.h ${D}/${includedir}
+ install -m 644 ${S}/include/libiberty.h ${D}/${includedir}
+
+ cd ${D}/${bindir}
+
+ # Symlinks for ease of running these on the native target
+ for p in ${TARGET_SYS}-* ; do
+ ln -sf $p `echo $p | sed -e s,${TARGET_SYS}-,,`
+ done
+}
+include gcc-cross_${PV}.oe
+
+DEPENDS = "virtual/${TARGET_PREFIX}binutils virtual/${TARGET_PREFIX}libc-initial"
+PROVIDES = "virtual/${TARGET_PREFIX}gcc-initial"
+
+EXTRA_OECONF = "--with-local-prefix=${CROSS_DIR}/${TARGET_SYS} \
+ --with-newlib \
+ --disable-nls \
+ --disable-shared \
+ --disable-threads \
+ --disable-multilib \
+ --enable-__cxa_atexit \
+ --enable-languages=c \
+ --enable-target-optspace \
+ --program-prefix=${TARGET_PREFIX}"
+
+do_stage_prepend () {
+ mkdir -p ${CROSS_DIR}/lib/gcc-lib/${TARGET_SYS}/${PV}
+ ln -sf libgcc.a ${CROSS_DIR}/lib/gcc-lib/${TARGET_SYS}/${PV}/libgcc_eh.a
+}
+
+# Override the method from gcc-cross so we don't try to install libgcc
+do_install () {
+ oe_runmake 'DESTDIR=${D}' install
+}
+include gcc-cross_${PV}.oe
+
+DEPENDS = "virtual/${TARGET_PREFIX}binutils virtual/${TARGET_PREFIX}libc-initial"
+PROVIDES = "virtual/${TARGET_PREFIX}gcc-initial"
+
+PACKAGES = ""
+
+EXTRA_OECONF = "--with-local-prefix=${CROSS_DIR}/${TARGET_SYS} \
+ --with-newlib \
+ --disable-nls \
+ --disable-shared \
+ --disable-threads \
+ --disable-multilib \
+ --enable-__cxa_atexit \
+ --enable-languages=c \
+ --enable-target-optspace \
+ --program-prefix=${TARGET_PREFIX}"
+
+do_stage_prepend () {
+ mkdir -p ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${PV}
+ ln -sf libgcc.a ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${PV}/libgcc_eh.a
+}
+
+# Override the method from gcc-cross so we don't try to install libgcc
+do_install () {
+ oe_runmake 'DESTDIR=${D}' install
+}
+
+++ /dev/null
-include gcc_${PV}.oe
-inherit cross
-FILESDIR = "${@os.path.dirname(oe.data.getVar('FILE',d,1))}/gcc-${PV}"
-
-DEPENDS = "virtual/${TARGET_PREFIX}binutils glibc patcher-native"
-PROVIDES = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++"
-
-PACKAGES = ""
-INHIBIT_PACKAGE_STRIP = 1
-
-EXTRA_OECONF = "--with-local-prefix=${CROSS_DIR}/${TARGET_SYS} \
- --with-gxx-include-dir=${CROSS_DIR}/${TARGET_SYS}/include/c++ \
- --with-headers=${CROSS_DIR}/${TARGET_SYS}/include \
- --disable-nls \
- --enable-threads=posix \
- --enable-symvers=gnu \
- --enable-__cxa_atexit \
- --enable-languages=c,c++ \
- --enable-shared \
- --enable-c99 \
- --enable-long-long \
- --program-prefix=${TARGET_PREFIX}"
-
-export CPPFLAGS = ""
-export CXXFLAGS = ""
-export CFLAGS = ""
-export LDFLAGS = ""
-
-do_configure () {
- export CC="${BUILD_CC}"
- export AR="${TARGET_SYS}-ar"
- export RANLIB="${TARGET_SYS}-ranlib"
- export LD="${TARGET_SYS}-ld"
- export NM="${TARGET_SYS}-nm"
- rm -f ${CROSS_DIR}/lib/gcc-lib/${TARGET_SYS}/${PV}/libgcc_eh.a
- oe_runconf
-}
-
-do_compile_prepend () {
- export CC="${BUILD_CC}"
- export AR_FOR_TARGET="${TARGET_SYS}-ar"
- export RANLIB_FOR_TARGET="${TARGET_SYS}-ranlib"
- export LD_FOR_TARGET="${TARGET_SYS}-ld"
- export NM_FOR_TARGET="${TARGET_SYS}-nm"
- export CC_FOR_TARGET="${CCACHE} ${TARGET_SYS}-gcc"
-}
-
-do_stage_append () {
- for d in info man share/doc share/locale ; do
- rm -rf ${CROSS_DIR}/$d
- done
-
- # These aren't useful on the cross toolchain
- rm -f ${CROSS_DIR}/bin/*gcov
- rm -f ${CROSS_DIR}/bin/*gccbug
-
- # Fix a few include links so cross builds are happier
- if [ ! -e ${STAGING_INCDIR}/c++ ]; then
- mkdir -p ${STAGING_INCDIR}
- ln -sf ${CROSS_DIR}/${TARGET_SYS}/include/c++ \
- ${STAGING_INCDIR}/
- fi
-
- # We use libiberty from binutils
- rm -f ${CROSS_DIR}/lib/libiberty.a
-
- # We probably don't need these
- rmdir ${CROSS_DIR}/include || :
-
- # We don't really need to keep this around
- rm -rf ${CROSS_DIR}/share
-}
-
-# Kill the install so we get no packages (we're the cross compiler)
-do_install () {
- :
-}
-
inherit cross
FILESDIR = "${@os.path.dirname(oe.data.getVar('FILE',d,1))}/gcc-${PV}"
-DEPENDS = "virtual/${TARGET_PREFIX}binutils glibc patcher-native"
+DEPENDS = "virtual/${TARGET_PREFIX}binutils virtual/${TARGET_PREFIX}libc-for-gcc"
PROVIDES = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++"
PACKAGES = "libgcc"
EXTRA_OECONF = "--with-local-prefix=${CROSS_DIR}/${TARGET_SYS} \
--with-gxx-include-dir=${CROSS_DIR}/${TARGET_SYS}/include/c++ \
--disable-nls \
+ --with-gnu-ld \
+ --enable-multilib \
--enable-threads=posix \
--enable-symvers=gnu \
--enable-__cxa_atexit \
--enable-shared \
--enable-c99 \
--enable-long-long \
- --program-prefix=${TARGET_PREFIX} \
- ${@['--with-headers=${CROSS_DIR}/${TARGET_SYS}/include', '']['${BUILD_SYS}' == '${HOST_SYS}']}"
+ --enable-target-optspace \
+ --program-prefix=${TARGET_PREFIX}"
FILES_libgcc = "/lib/libgcc_s.so.*"
inherit cross
FILESDIR = "${@os.path.dirname(oe.data.getVar('FILE',d,1))}/gcc-${PV}"
-DEPENDS = "virtual/${TARGET_PREFIX}binutils virtual/${TARGET_PREFIX}libc-for-gcc patcher-native"
+DEPENDS = "virtual/${TARGET_PREFIX}binutils virtual/${TARGET_PREFIX}libc-for-gcc"
PROVIDES = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++"
# Files for these are defined in the main gcc.oe
EXTRA_OECONF = "--with-local-prefix=${CROSS_DIR}/${TARGET_SYS} \
--with-gxx-include-dir=${CROSS_DIR}/${TARGET_SYS}/include/c++ \
--disable-nls \
+ --with-gnu-ld \
+ --enable-multilib \
--enable-threads=posix \
--enable-symvers=gnu \
--enable-__cxa_atexit \
--enable-shared \
--enable-c99 \
--enable-long-long \
+ --enable-target-optspace \
--program-prefix=${TARGET_PREFIX}"
export CPPFLAGS = ""
+++ /dev/null
-inherit cross
-include gcc-uclibc_${PV}.oe
-
-DEPENDS = "virtual/${TARGET_PREFIX}binutils uclibc patcher-native"
-PROVIDES = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++"
-
-PACKAGES = ""
-INHIBIT_PACKAGE_STRIP = 1
-
-EXTRA_OECONF = "--with-local-prefix=${CROSS_DIR}/local \
- --with-gxx-include-dir=${CROSS_DIR}/${TARGET_SYS}/include/c++ \
- --enable-target-optspace \
- --disable-nls \
- --with-gnu-ld \
- --disable-__cxa_atexit \
- --enable-languages=c,c++ \
- --enable-shared \
- --enable-multilib \
- --enable-threads=posix \
- --program-prefix=${TARGET_PREFIX}"
-
-export CPPFLAGS = ""
-export CXXFLAGS = ""
-export CFLAGS = ""
-export LDFLAGS = ""
-
-do_configure () {
- export CC="${BUILD_CC}"
- export AR="${TARGET_SYS}-ar"
- export RANLIB="${TARGET_SYS}-ranlib"
- export LD="${TARGET_SYS}-ld"
- export NM="${TARGET_SYS}-nm"
- oe_runconf
-}
-
-do_compile_prepend () {
- export CC="${BUILD_CC}"
- export AR_FOR_TARGET="${TARGET_SYS}-ar"
- export RANLIB_FOR_TARGET="${TARGET_SYS}-ranlib"
- export LD_FOR_TARGET="${TARGET_SYS}-ld"
- export NM_FOR_TARGET="${TARGET_SYS}-nm"
- export CC_FOR_TARGET="${CCACHE} ${TARGET_SYS}-gcc"
-}
-
-do_stage_append () {
- for d in info man share/doc share/locale ; do
- rm -rf ${CROSS_DIR}/$d
- done
-
- # These aren't useful on the cross toolchain
- rm -f ${CROSS_DIR}/bin/*gcov
- rm -f ${CROSS_DIR}/bin/*gccbug
-
- # Fix a few include links so cross builds are happier
- if [ ! -e ${STAGING_INCDIR}/c++ ]; then
- mkdir -p ${STAGING_INCDIR}
- ln -sf ${CROSS_DIR}/${TARGET_SYS}/include/c++ \
- ${STAGING_INCDIR}/
- fi
-
- # We use libiberty from binutils
- rm -f ${CROSS_DIR}/lib/libiberty.a
-
- # We probably don't need this
- rmdir ${CROSS_DIR}/include || :
-
- # We don't really need to keep this around
- rm -rf ${CROSS_DIR}/share
-}
-
-# Kill the install so we get no packages (we're the cross compiler)
-do_install () {
- :
-}
-
+++ /dev/null
-inherit cross
-include gcc-uclibc_${PV}.oe
-
-DEPENDS = "virtual/${TARGET_PREFIX}binutils uclibc patcher-native"
-PROVIDES = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++"
-
-PACKAGES = ""
-INHIBIT_PACKAGE_STRIP = 1
-
-EXTRA_OECONF = "--with-local-prefix=${CROSS_DIR}/local \
- --with-gxx-include-dir=${CROSS_DIR}/${TARGET_SYS}/include/c++ \
- --enable-target-optspace \
- --disable-nls \
- --with-gnu-ld \
- --disable-__cxa_atexit \
- --enable-languages=c,c++ \
- --enable-shared \
- --enable-threads \
- --enable-multilib \
- --program-prefix=${TARGET_PREFIX}"
-
-export CPPFLAGS = ""
-export CXXFLAGS = ""
-export CFLAGS = ""
-export LDFLAGS = ""
-
-do_configure () {
- export CC="${BUILD_CC}"
- export AR="${TARGET_SYS}-ar"
- export RANLIB="${TARGET_SYS}-ranlib"
- export LD="${TARGET_SYS}-ld"
- export NM="${TARGET_SYS}-nm"
- oe_runconf
-}
-
-do_compile_prepend () {
- export CC="${BUILD_CC}"
- export AR_FOR_TARGET="${TARGET_SYS}-ar"
- export RANLIB_FOR_TARGET="${TARGET_SYS}-ranlib"
- export LD_FOR_TARGET="${TARGET_SYS}-ld"
- export NM_FOR_TARGET="${TARGET_SYS}-nm"
- export CC_FOR_TARGET="${CCACHE} ${TARGET_SYS}-gcc"
-}
-
-do_stage_append () {
- for d in info man share/doc share/locale ; do
- rm -rf ${CROSS_DIR}/$d
- done
-
- # These aren't useful on the cross toolchain
- rm -f ${CROSS_DIR}/bin/*gcov
- rm -f ${CROSS_DIR}/bin/*gccbug
-
- # Fix a few include links so cross builds are happier
- if [ ! -e ${STAGING_INCDIR}/c++ ]; then
- mkdir -p ${STAGING_INCDIR}
- ln -sf ${CROSS_DIR}/${TARGET_SYS}/include/c++ \
- ${STAGING_INCDIR}/
- fi
-
- # We use libiberty from binutils
- rm -f ${CROSS_DIR}/lib/libiberty.a
-
- # We probably don't need this
- rmdir ${CROSS_DIR}/include || :
-
- # We don't really need to keep this around
- rm -rf ${CROSS_DIR}/share
-}
-
-# Kill the install so we get no packages (we're the cross compiler)
-do_install () {
- :
-}
-
+++ /dev/null
-inherit cross
-include gcc-uclibc_${PV}.oe
-
-DEPENDS = "virtual/${TARGET_PREFIX}binutils uclibc patcher-native"
-PROVIDES = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++"
-
-# Files for these are defined in the main gcc.oe
-PACKAGES = "libgcc libstdc++ libg2c"
-INHIBIT_PACKAGE_STRIP = 1
-
-EXTRA_OECONF = "--with-local-prefix=${CROSS_DIR}/local \
- --with-gxx-include-dir=${CROSS_DIR}/${TARGET_SYS}/include/c++ \
- --enable-target-optspace \
- --disable-nls \
- --with-gnu-ld \
- --disable-__cxa_atexit \
- --enable-languages=c,c++,f77 \
- --enable-shared \
- --enable-threads \
- --enable-multilib \
- --program-prefix=${TARGET_PREFIX}"
-
-export CPPFLAGS = ""
-export CXXFLAGS = ""
-export CFLAGS = ""
-export LDFLAGS = ""
-
-do_configure () {
- oe_runconf
-}
-
-do_compile_prepend () {
- export CC="${BUILD_CC}"
- export AR_FOR_TARGET="${TARGET_SYS}-ar"
- export RANLIB_FOR_TARGET="${TARGET_SYS}-ranlib"
- export LD_FOR_TARGET="${TARGET_SYS}-ld"
- export NM_FOR_TARGET="${TARGET_SYS}-nm"
- export CC_FOR_TARGET="${CCACHE} ${TARGET_SYS}-gcc"
-}
-
-do_stage_append () {
- for d in info man share/doc share/locale ; do
- rm -rf ${CROSS_DIR}/$d
- done
-
- # These aren't useful on the cross toolchain
- rm -f ${CROSS_DIR}/bin/*gcov
- rm -f ${CROSS_DIR}/bin/*gccbug
-
- # Fix a few include links so cross builds are happier
- if [ ! -e ${STAGING_INCDIR}/c++ ]; then
- mkdir -p ${STAGING_INCDIR}
- ln -sf ${CROSS_DIR}/${TARGET_SYS}/include/c++ \
- ${STAGING_INCDIR}/
- fi
-
- # We use libiberty from binutils
- rm -f ${CROSS_DIR}/lib/libiberty.a
-
- # We probably don't need this
- rmdir ${CROSS_DIR}/include || :
-
- # We don't really need to keep this around
- rm -rf ${CROSS_DIR}/share
-}
-
-do_install () {
- oe_runmake 'DESTDIR=${D}' install
-
- # Move libgcc_s into /lib
- mkdir -p ${D}/lib
- if [ -f ${D}/lib/libgcc_s.so.? ]; then
- # Already in the right location
- :
- elif [ -f ${D}/${prefix}/lib/libgcc_s.so.? ]; then
- mv -f ${D}/${prefix}/lib/libgcc_s.so.* ${D}/lib
- else
- mv -f ${D}/${prefix}/*/lib/libgcc_s.so.* ${D}/lib
- fi
-
- # Move libstdc++ and libg2c into libdir (resetting our prefix to /usr
- TGT_LIBDIR=`echo ${libdir} | sed -e 's,${CROSS_DIR},/usr,'`
- mkdir -p ${D}/${TGT_LIBDIR}
- mv -f ${D}/${prefix}/*/lib/libstdc++.so.* ${D}/${TGT_LIBDIR}
- mv -f ${D}/${prefix}/*/lib/libg2c.so.* ${D}/${TGT_LIBDIR}
-
- # Manually run the target stripper since we won't get it run by
- # the packaging.
- ${TARGET_PREFIX}strip ${D}/${TGT_LIBDIR}/libstdc++.so.*
- ${TARGET_PREFIX}strip ${D}/${TGT_LIBDIR}/libg2c.so.*
- ${TARGET_PREFIX}strip ${D}/libgcc_s.so.*
-}
-
+++ /dev/null
-include gcc_${PV}.oe
-FILESDIR = "${@os.path.dirname(oe.data.getVar('FILE',d,1))}/gcc-${PV}"
-
-DESCRIPTION = "The GNU cc and gcc C compilers (uclibc)."
-LICENSE = "GPL"
-MAINTAINER = "Gerald Britton <gbritton@doomcom.org>"
-
-DEPENDS = "uclibc"
-
-PACKAGES = "${PN} ${PN}-symlinks \
- ${PN}-c++ ${PN}-c++-symlinks \
- uclibc-libgcc uclibc-libstdc++ uclibc-libstdc++-dev \
- ${PN}-doc"
-
-# The rest of these are properly defined in gcc_${PV}.oe
-FILES_uclibc-libgcc = "${FILES_libgcc}"
-FILES_uclibc-libstdc++ = "${FILES_libstdc++}"
-FILES_uclibc-libstdc++-dev = "${includedir}/c++/${PV}-uclibc \
- ${libdir}/libstdc++.so \
- ${libdir}/libstdc++.la \
- ${libdir}/libstdc++.a \
- ${libdir}/libsupc++.la \
- ${libdir}/libsupc++.a"
-
-EXTRA_OECONF = "--with-local-prefix=${prefix}/local \
- --with-gxx-include-dir=${includedir}/c++/${PV}-uclibc \
- --enable-target-optspace \
- --disable-nls \
- --with-gnu-ld \
- --disable-__cxa_atexit \
- --enable-languages=c,c++ \
- --enable-shared \
- --enable-multilib \
- --enable-threads=posix \
- --program-prefix=${TARGET_PREFIX}"
-
-gccbuild_do_patch () {
- #
- # Hack things to use the correct shared lib loader
- #
- LIST=`grep -lr -- "-dynamic-linker.*\.so[\.0-9]*" .`
- if [ -n "$LIST" ] ; then
- perl -i -p -e "s,-dynamic-linker.*\.so[\.0-9]*},-dynamic-linker /lib/ld-uClibc.so.0},;" $LIST
- fi
-
- #
- # Prevent system glibc start files from leaking in uninvited...
- #
- perl -i -p -e "s,standard_startfile_prefix_1 = \".*,standard_startfile_prefix_1 = \"${CROSS_DIR}/${TARGET_SYS}/lib/\";,;" gcc/gcc.c
- perl -i -p -e "s,standard_startfile_prefix_2 = \".*,standard_startfile_prefix_2 = \"${CROSS_DIR}/${TARGET_SYS}/usr/lib/\";,;" gcc/gcc.c
-
- #
- # Prevent system glibc include files from leaking in uninvited...
- #
- perl -i -p -e "s,^NATIVE_SYSTEM_HEADER_DIR.*,NATIVE_SYSTEM_HEADER_DIR=${CROSS_DIR}/${TARGET_SYS}/include,;" gcc/Makefile.in
- perl -i -p -e "s,^CROSS_SYSTEM_HEADER_DIR.*,CROSS_SYSTEM_HEADER_DIR=${CROSS_DIR}/${TARGET_SYS}/include,;" gcc/Makefile.in
- perl -i -p -e "s,^#define.*STANDARD_INCLUDE_DIR.*,#define STANDARD_INCLUDE_DIR \"${CROSS_DIR}/${TARGET_SYS}/include\",;" gcc/cppdefault.h
-
- #
- # Prevent system glibc libraries from being found by collect2
- # when it calls locatelib() and rummages about the system looking
- # for libraries with the correct name...
- #
- perl -i -p -e "s,\"/lib,\"${CROSS_DIR}/${TARGET_SYS}/lib,g;" \
- gcc/collect2.c
- perl -i -p -e "s,\"/usr/,\"${CROSS_DIR}/${TARGET_SYS}/usr/,g;" \
- gcc/collect2.c
-
- #
- # Prevent gcc from using the unwind-dw2-fde-glibc code
- #
- perl -i -p -e "s,^#ifndef inhibit_libc,#define inhibit_libc\n#ifndef inhibit_libc,g;" gcc/unwind-dw2-fde-glibc.c
-}
-
-python do_patch () {
- oe.build.exec_func('base_do_patch', d)
- oe.build.exec_func('gccbuild_do_patch', d)
-}
-
+++ /dev/null
-include gcc_${PV}.oe
-FILESDIR = "${@os.path.dirname(oe.data.getVar('FILE',d,1))}/gcc-${PV}"
-
-DESCRIPTION = "The GNU cc and gcc C compilers (uclibc)."
-LICENSE = "GPL"
-MAINTAINER = "Gerald Britton <gbritton@doomcom.org>"
-
-DEPENDS = "uclibc"
-
-PACKAGES = "${PN} ${PN}-symlinks \
- ${PN}-c++ ${PN}-c++-symlinks \
- uclibc-libgcc uclibc-libstdc++ uclibc-libstdc++-dev \
- ${PN}-doc"
-
-# The rest of these are properly defined in gcc_${PV}.oe
-FILES_uclibc-libgcc = "${FILES_libgcc}"
-FILES_uclibc-libstdc++ = "${FILES_libstdc++}"
-FILES_uclibc-libstdc++-dev = "${includedir}/c++/${PV}-uclibc \
- ${libdir}/libstdc++.so \
- ${libdir}/libstdc++.la \
- ${libdir}/libstdc++.a \
- ${libdir}/libsupc++.la \
- ${libdir}/libsupc++.a"
-
-# Additional patches
-SRC_URI_append = " \
- file://${FILESDIR}/gcc-uclibc-3.3-100-conf.patch;patch=1 \
- file://${FILESDIR}/gcc-uclibc-3.3-110-conf.patch;patch=1 \
- file://${FILESDIR}/gcc-uclibc-3.3-120-softfloat.patch;patch=1 \
- file://${FILESDIR}/gcc-uclibc-3.3-200-code.patch;patch=1"
-
-EXTRA_OECONF = "--with-local-prefix=${prefix}/local \
- --with-gxx-include-dir=${includedir}/c++/${PV}-uclibc \
- --enable-target-optspace \
- --disable-nls \
- --with-gnu-ld \
- --disable-__cxa_atexit \
- --enable-languages=c,c++ \
- --enable-shared \
- --enable-multilib \
- --enable-threads=posix \
- --program-prefix=${TARGET_PREFIX}"
-
-gccbuild_do_patch () {
- #
- # Hack things to use the correct shared lib loader
- #
- LIST=`grep -lr -- "-dynamic-linker.*\.so[\.0-9]*" .`
- if [ -n "$LIST" ] ; then
- perl -i -p -e "s,-dynamic-linker.*\.so[\.0-9]*},-dynamic-linker /lib/ld-uClibc.so.0},;" $LIST
- fi
-
- #
- # Prevent system glibc start files from leaking in uninvited...
- #
- perl -i -p -e "s,standard_startfile_prefix_1 = \".*,standard_startfile_prefix_1 = \"${CROSS_DIR}/${TARGET_SYS}/lib/\";,;" gcc/gcc.c
- perl -i -p -e "s,standard_startfile_prefix_2 = \".*,standard_startfile_prefix_2 = \"${CROSS_DIR}/${TARGET_SYS}/usr/lib/\";,;" gcc/gcc.c
-
- #
- # Prevent system glibc include files from leaking in uninvited...
- #
- perl -i -p -e "s,^NATIVE_SYSTEM_HEADER_DIR.*,NATIVE_SYSTEM_HEADER_DIR=${CROSS_DIR}/${TARGET_SYS}/include,;" gcc/Makefile.in
- perl -i -p -e "s,^CROSS_SYSTEM_HEADER_DIR.*,CROSS_SYSTEM_HEADER_DIR=${CROSS_DIR}/${TARGET_SYS}/include,;" gcc/Makefile.in
- perl -i -p -e "s,^#define.*STANDARD_INCLUDE_DIR.*,#define STANDARD_INCLUDE_DIR \"${CROSS_DIR}/${TARGET_SYS}/include\",;" gcc/cppdefault.h
-
- #
- # Prevent system glibc libraries from being found by collect2
- # when it calls locatelib() and rummages about the system looking
- # for libraries with the correct name...
- #
- perl -i -p -e "s,\"/lib,\"${CROSS_DIR}/${TARGET_SYS}/lib,g;" \
- gcc/collect2.c
- perl -i -p -e "s,\"/usr/,\"${CROSS_DIR}/${TARGET_SYS}/usr/,g;" \
- gcc/collect2.c
-
- #
- # Prevent gcc from using the unwind-dw2-fde-glibc code
- #
- perl -i -p -e "s,^#ifndef inhibit_libc,#define inhibit_libc\n#ifndef inhibit_libc,g;" gcc/unwind-dw2-fde-glibc.c
-}
-
-python do_patch () {
- oe.build.exec_func('base_do_patch', d)
- oe.build.exec_func('gccbuild_do_patch', d)
-}
-
+++ /dev/null
-inherit autotools
-
-DESCRIPTION = "The GNU cc and gcc C compilers."
-LICENSE = "GPL"
-MAINTAINER = "Gerald Britton <gbritton@doomcom.org>"
-
-#
-# For now, we will skip building of a gcc package if it is a uclibc one
-# and our build is not a uclibc one, and we skip a glibc one if our build
-# is a uclibc build.
-#
-# See the note in gcc/gcc_3.4.0.oe
-#
-
-python __anonymous () {
- import oe, re
- uc_pkg = (re.search('uclibc', oe.data.getVar('PN', d, 1)) != None)
- uc_os = (re.match('.*uclibc$', oe.data.getVar('TARGET_OS', d, 1)) != None)
- if uc_pkg != uc_os:
- raise oe.parse.SkipPackage("incompatible with target %s" %
- oe.data.getVar('TARGET_OS', d, 1))
-}
-
-DEPENDS = "glibc"
-
-PACKAGES = "${PN} ${PN}-symlinks \
- ${PN}-c++ ${PN}-c++-symlinks \
- libgcc libstdc++ libstdc++-dev \
- ${PN}-doc"
-
-FILES_${PN} = "${bindir}/${TARGET_PREFIX}gcc \
- ${bindir}/${TARGET_PREFIX}cpp \
- ${bindir}/${TARGET_PREFIX}gcov \
- ${bindir}/${TARGET_PREFIX}gccbug \
- ${libdir}/gcc-lib/${TARGET_SYS}/${PV}/cc1 \
- ${libdir}/gcc-lib/${TARGET_SYS}/${PV}/collect2 \
- ${libdir}/gcc-lib/${TARGET_SYS}/${PV}/crt* \
- ${libdir}/gcc-lib/${TARGET_SYS}/${PV}/specs \
- ${libdir}/gcc-lib/${TARGET_SYS}/${PV}/lib* \
- ${libdir}/gcc-lib/${TARGET_SYS}/${PV}/include"
-
-FILES_${PN}-symlinks = "${bindir}/cc \
- ${bindir}/gcc \
- ${bindir}/cpp \
- ${bindir}/gcov \
- ${bindir}/gccbug"
-
-FILES_${PN}-c++ = "${bindir}/${TARGET_PREFIX}g++ \
- ${libdir}/gcc-lib/${TARGET_SYS}/${PV}/cc1plus"
-
-FILES_${PN}-c++-symlinks = "${bindir}/c++ \
- ${bindir}/g++"
-
-FILES_libgcc = "/lib/libgcc_s.so.*"
-
-FILES_libstdc++ = "${libdir}/libstdc++.so.*"
-
-FILES_libstdc++-dev = "${includedir}/c++/${PV} \
- ${libdir}/libstdc++.so \
- ${libdir}/libstdc++.la \
- ${libdir}/libstdc++.a \
- ${libdir}/libsupc++.la \
- ${libdir}/libsupc++.a"
-
-FILES_${PN}-doc = "${infodir} \
- ${mandir} \
- ${libdir}/gcc-lib/${TARGET_SYS}/${PV}/include/README"
-
-SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
- file://${FILESDIR}/gcc-001-disable-mathf.patch;patch=1 \
- file://${FILESDIR}/gcc-006-include-search.patch;patch=1 \
- file://${FILESDIR}/gcc-810-libstd++-locale.patch;patch=1 \
- file://${FILESDIR}/libibery-crosstool.patch;patch=1;pnum=1"
-
-MIRRORS_prepend () {
-${GNU_MIRROR}/gcc/releases/ http://gcc.get-software.com/releases/
-}
-
-S = "${WORKDIR}/gcc-${PV}"
-B = "${S}/build.${HOST_SYS}.${TARGET_SYS}"
-
-EXTRA_OECONF = "--with-local-prefix=${prefix}/local \
- --with-gxx-include-dir=${includedir}/c++/${PV} \
- --enable-target-optspace \
- --disable-nls \
- --with-gnu-ld \
- --disable-__cxa_atexit \
- --enable-languages=c,c++ \
- --enable-shared \
- --enable-multilib \
- --program-prefix=${TARGET_PREFIX}"
-
-do_configure () {
- # Setup these vars for cross building only
- if [ "${BUILD_SYS}" != "${HOST_SYS}" ]; then
- export CC_FOR_TARGET="${CCACHE} ${HOST_PREFIX}gcc"
- export GCC_FOR_TARGET="${CCACHE} ${HOST_PREFIX}gcc"
- export CXX_FOR_TARGET="${CCACHE} ${HOST_PREFIX}g++"
- export AS_FOR_TARGET="${HOST_PREFIX}as"
- export LD_FOR_TARGET="${HOST_PREFIX}ld"
- export NM_FOR_TARGET="${HOST_PREFIX}nm"
- export AR_FOR_TARGET="${HOST_PREFIX}ar"
- export RANLIB_FOR_TARGET="${HOST_PREFIX}ranlib"
- fi
- oe_runconf
-}
-
-do_install () {
- autotools_do_install
-
- # Cleanup some of the gcc-lib stuff
- rm -rf ${D}/${libdir}/gcc-lib/${TARGET_SYS}/${PV}/install-tools
-
- # Move libgcc_s into /lib
- mkdir -p ${D}/lib
- mv -f ${D}/${libdir}/libgcc_s.so.* ${D}/lib
- rm -f ${D}/${libdir}/libgcc_s.so
- ln -sf `echo ${libdir}/gcc-lib/${TARGET_SYS}/${PV} | tr -s / |
- sed -e 's,^/,,' -e 's,[^/]*,..,g'`/lib/libgcc_s.so.? \
- ${D}/${libdir}/gcc-lib/${TARGET_SYS}/${PV}/libgcc_s.so
-
- # Cleanup manpages..
- rm -rf ${D}/${mandir}/man7
- mv ${D}/${mandir}/man1/cpp.1 \
- ${D}/${mandir}/man1/${TARGET_SYS}-cpp.1
- mv ${D}/${mandir}/man1/gcov.1 \
- ${D}/${mandir}/man1/${TARGET_SYS}-gcov.1
-
- # We use libiberty from binutils
- rm -f ${D}/${libdir}/libiberty.a
-
- cd ${D}/${bindir}
-
- # We care about g++ not c++
- rm -f *c++
-
- # We don't care about the gcc-<version> ones for this
- rm -f *gcc-?.?*
-
- # These sometimes show up, they are strange, we remove them
- rm -f ${TARGET_ARCH}-*${TARGET_ARCH}-*
-
- # Symlinks so we can use these trivially on the target
- ln -sf ${TARGET_SYS}-g++ g++
- ln -sf ${TARGET_SYS}-gcc gcc
- ln -sf g++ c++
- ln -sf gcc cc
-}
LICENSE = "GPL"
MAINTAINER = "Gerald Britton <gbritton@doomcom.org>"
-#
-# For now, we will skip building of a gcc package if it is a uclibc one
-# and our build is not a uclibc one, and we skip a glibc one if our build
-# is a uclibc build.
-#
-# See the note in gcc/gcc_3.4.0.oe
-#
-
-python __anonymous () {
- import oe, re
- uc_pkg = (re.search('uclibc', oe.data.getVar('PN', d, 1)) != None)
- uc_os = (re.match('.*uclibc$', oe.data.getVar('TARGET_OS', d, 1)) != None)
- if uc_pkg != uc_os:
- raise oe.parse.SkipPackage("incompatible with target %s" %
- oe.data.getVar('TARGET_OS', d, 1))
-}
-
-DEPENDS = "glibc"
-
PACKAGES = "${PN} ${PN}-symlinks \
${PN}-c++ ${PN}-c++-symlinks \
libgcc libstdc++ libstdc++-dev \
file://${FILESDIR}/arm-ldm-peephole.patch;patch=1;pnum=0 \
file://${FILESDIR}/libibery-crosstool.patch;patch=1;pnum=1 \
file://${FILESDIR}/reverse-compare.patch;patch=1 \
- file://${FILESDIR}/gcc34-15089.patch;patch=1"
+ file://${FILESDIR}/gcc34-15089.patch;patch=1 \
+ file://${FILESDIR}/gcc-uclibc-3.3-100-conf.patch;patch=1 \
+ file://${FILESDIR}/gcc-uclibc-3.3-110-conf.patch;patch=1 \
+ file://${FILESDIR}/gcc-uclibc-3.3-120-softfloat.patch;patch=1 \
+ file://${FILESDIR}/gcc-uclibc-3.3-200-code.patch;patch=1"
MIRRORS_prepend () {
${GNU_MIRROR}/gcc/releases/ http://gcc.get-software.com/releases/
}
+gccbuild_uclibc_do_patch () {
+ #
+ # Hack things to use the correct shared lib loader
+ #
+ #LIST=`grep -lr -- "-dynamic-linker.*\.so[\.0-9]*" .`
+ #if [ -n "$LIST" ] ; then
+ # perl -i -p -e "s,-dynamic-linker.*\.so[\.0-9]*},-dynamic-linker /lib/ld-uClibc.so.0},;" $LIST
+ #fi
+
+ #
+ # Prevent system glibc start files from leaking in uninvited...
+ #
+ perl -i -p -e "s,standard_startfile_prefix_1 = \".*,standard_startfile_prefix_1 = \"${CROSS_DIR}/${TARGET_SYS}/lib/\";,;" gcc/gcc.c
+ perl -i -p -e "s,standard_startfile_prefix_2 = \".*,standard_startfile_prefix_2 = \"${CROSS_DIR}/${TARGET_SYS}/usr/lib/\";,;" gcc/gcc.c
+
+ #
+ # Prevent system glibc include files from leaking in uninvited...
+ #
+ perl -i -p -e "s,^NATIVE_SYSTEM_HEADER_DIR.*,NATIVE_SYSTEM_HEADER_DIR=${CROSS_DIR}/${TARGET_SYS}/include,;" gcc/Makefile.in
+ perl -i -p -e "s,^CROSS_SYSTEM_HEADER_DIR.*,CROSS_SYSTEM_HEADER_DIR=${CROSS_DIR}/${TARGET_SYS}/include,;" gcc/Makefile.in
+ perl -i -p -e "s,^#define.*STANDARD_INCLUDE_DIR.*,#define STANDARD_INCLUDE_DIR \"${CROSS_DIR}/${TARGET_SYS}/include\",;" gcc/cppdefault.h
+
+ #
+ # Prevent system glibc libraries from being found by collect2
+ # when it calls locatelib() and rummages about the system looking
+ # for libraries with the correct name...
+ #
+ perl -i -p -e "s,\"/lib,\"${CROSS_DIR}/${TARGET_SYS}/lib,g;" \
+ gcc/collect2.c
+ perl -i -p -e "s,\"/usr/,\"${CROSS_DIR}/${TARGET_SYS}/usr/,g;" \
+ gcc/collect2.c
+
+ #
+ # Prevent gcc from using the unwind-dw2-fde-glibc code
+ #
+ perl -i -p -e "s,^#ifndef inhibit_libc,#define inhibit_libc\n#ifndef inhibit_libc,g;" gcc/unwind-dw2-fde-glibc.c
+}
+
+python do_patch () {
+ import oe, re
+ oe.build.exec_func('base_do_patch', d)
+ if (re.match('.*uclibc$', oe.data.getVar('TARGET_OS', d, 1)) != None):
+ oe.build.exec_func('gccbuild_uclibc_do_patch', d)
+}
+
S = "${WORKDIR}/gcc-${PV}"
B = "${S}/build.${HOST_SYS}.${TARGET_SYS}"
EXTRA_OECONF = "--with-local-prefix=${prefix}/local \
- --with-gxx-include-dir=${includedir}/c++/${PV} \
- --enable-target-optspace \
- --disable-nls \
- --with-gnu-ld \
- --disable-__cxa_atexit \
- --enable-languages=c,c++ \
- --enable-shared \
- --enable-multilib \
- --program-prefix=${TARGET_PREFIX}"
+ --with-gxx-include-dir=${includedir}/c++/${PV} \
+ --enable-target-optspace \
+ --disable-nls \
+ --with-gnu-ld \
+ --disable-__cxa_atexit \
+ --enable-languages=c,c++,f77 \
+ --enable-shared \
+ --enable-multilib \
+ --enable-threads=posix \
+ --program-prefix=${TARGET_PREFIX}"
do_configure () {
# Setup these vars for cross building only
LICENSE = "GPL"
MAINTAINER = "Gerald Britton <gbritton@doomcom.org>"
-#
-# TODO: For shared setups with both uclibc and glibc, libstdc++ and the
-# fortran (libg2c, libfrtbegin) will need to be moved into separate
-# per-compiler paths. Shared libraries will also need some
-# separation. This will also require changes to the dynamic linkers
-# for the two libc's to support selection of appropriate libraries.
-#
-# This affects: binutils, gcc, uclibc, glibc
-#
-# For now, we will skip building of a gcc package if it is a uclibc one
-# and our build is not a uclibc one, and we skip a glibc one if our build
-# is a uclibc build.
-#
-
-python __anonymous () {
- import oe, re
- uc_pkg = (re.search('uclibc', oe.data.getVar('PN', d, 1)) != None)
- uc_os = (re.match('.*uclibc$', oe.data.getVar('TARGET_OS', d, 1)) != None)
- if uc_pkg != uc_os:
- raise oe.parse.SkipPackage("incompatible with target %s" %
- oe.data.getVar('TARGET_OS', d, 1))
-}
-
-DEPENDS = "glibc"
-
# libgcc libstdc++ libg2c are listed in our FILES_*, but are actually
# packaged in the respective cross packages.
PACKAGES = "${PN} ${PN}-symlinks \
file://${FILESDIR}/gcc34-arm-ldm.patch;patch=1 \
file://${FILESDIR}/gcc34-arm-ldm-peephole.patch;patch=1 \
file://${FILESDIR}/gcc34-arm-tune.patch;patch=1 \
- file://${FILESDIR}/gcc34-15089.patch;patch=1"
+ file://${FILESDIR}/gcc34-15089.patch;patch=1 \
+ file://${FILESDIR}/gcc-uclibc-3.4.0-100-conf.patch;patch=1 \
+ file://${FILESDIR}/gcc-uclibc-3.4.0-120-softfloat.patch;patch=1 \
+ file://${FILESDIR}/gcc-uclibc-3.4.0-200-code.patch;patch=1"
MIRRORS_prepend () {
${GNU_MIRROR}/gcc/releases/ http://gcc.get-software.com/releases/
}
+gccbuild_uclibc_do_patch () {
+ #
+ # Hack things to use the correct shared lib loader
+ #
+ #LIST=`grep -lr -- "-dynamic-linker.*\.so[\.0-9]*" .`
+ #if [ -n "$LIST" ] ; then
+ # perl -i -p -e "s,-dynamic-linker.*\.so[\.0-9]*},-dynamic-linker /lib/ld-uClibc.so.0},;" $LIST
+ #fi
+
+ #
+ # Prevent system glibc start files from leaking in uninvited...
+ #
+ perl -i -p -e "s,standard_startfile_prefix_1 = \".*,standard_startfile_prefix_1 = \"${CROSS_DIR}/${TARGET_SYS}/lib/\";,;" gcc/gcc.c
+ perl -i -p -e "s,standard_startfile_prefix_2 = \".*,standard_startfile_prefix_2 = \"${CROSS_DIR}/${TARGET_SYS}/usr/lib/\";,;" gcc/gcc.c
+
+ #
+ # Prevent system glibc include files from leaking in uninvited...
+ #
+ perl -i -p -e "s,^NATIVE_SYSTEM_HEADER_DIR.*,NATIVE_SYSTEM_HEADER_DIR=${CROSS_DIR}/${TARGET_SYS}/include,;" gcc/Makefile.in
+ perl -i -p -e "s,^CROSS_SYSTEM_HEADER_DIR.*,CROSS_SYSTEM_HEADER_DIR=${CROSS_DIR}/${TARGET_SYS}/include,;" gcc/Makefile.in
+ perl -i -p -e "s,^#define.*STANDARD_INCLUDE_DIR.*,#define STANDARD_INCLUDE_DIR \"${CROSS_DIR}/${TARGET_SYS}/include\",;" gcc/cppdefault.h
+
+ #
+ # Prevent system glibc libraries from being found by collect2
+ # when it calls locatelib() and rummages about the system looking
+ # for libraries with the correct name...
+ #
+ perl -i -p -e "s,\"/lib,\"${CROSS_DIR}/${TARGET_SYS}/lib,g;" \
+ gcc/collect2.c
+ perl -i -p -e "s,\"/usr/,\"${CROSS_DIR}/${TARGET_SYS}/usr/,g;" \
+ gcc/collect2.c
+
+ #
+ # Prevent gcc from using the unwind-dw2-fde-glibc code
+ #
+ perl -i -p -e "s,^#ifndef inhibit_libc,#define inhibit_libc\n#ifndef inhibit_libc,g;" gcc/unwind-dw2-fde-glibc.c
+}
+
+python do_patch () {
+ import oe, re
+ oe.build.exec_func('base_do_patch', d)
+ if (re.match('.*uclibc$', oe.data.getVar('TARGET_OS', d, 1)) != None):
+ oe.build.exec_func('gccbuild_uclibc_do_patch', d)
+}
+
S = "${WORKDIR}/gcc-${PV}"
B = "${S}/build.${HOST_SYS}.${TARGET_SYS}"
--enable-languages=c,c++,f77 \
--enable-shared \
--enable-multilib \
+ --enable-threads=posix \
--program-prefix=${TARGET_PREFIX}"
do_configure () {
include glibc_${PV}.oe
DEPENDS = ""
-PROVIDES = "virtual/glibc-headers"
+PROVIDES = "virtual/${TARGET_PREFIX}libc-initial"
FILESDIR = "${@os.path.dirname(oe.data.getVar('FILE',d,1))}/glibc-${PV}"
S = "${WORKDIR}/glibc-${PV}"
include glibc_${PV}.oe
DEPENDS = ""
-PROVIDES = "virtual/glibc-headers"
+PROVIDES = "virtual/${TARGET_PREFIX}libc-initial"
FILESDIR = "${@os.path.dirname(oe.data.getVar('FILE',d,1))}/glibc-cvs"
PACKAGES = ""
FILESDIR = "${@os.path.dirname(oe.data.getVar('FILE',d,1))}/uclibc-${PV}"
DEPENDS = ""
+PROVIDES = "virtual/${TARGET_PREFIX}libc-initial"
PACKAGES = ""
do_stage() {
oe.data.getVar('TARGET_OS', d, 1))
}
-PROVIDES = "virtual/libc"
+PROVIDES = "virtual/libc virtual/${TARGET_PREFIX}libc-for-gcc"
DEPENDS = "virtual/${TARGET_PREFIX}binutils \
virtual/${TARGET_PREFIX}gcc-initial"