diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass index db6e643148c..3114bd85832 100644 --- a/eclass/toolchain.eclass +++ b/eclass/toolchain.eclass @@ -320,7 +320,11 @@ get_gcc_src_uri() { elif [[ -n ${SNAPSHOT} ]] ; then GCC_SRC_URI="ftp://gcc.gnu.org/pub/gcc/snapshots/${SNAPSHOT}/gcc-${SNAPSHOT}.tar.bz2" else - GCC_SRC_URI="mirror://gnu/gcc/gcc-${GCC_PV}/gcc-${GCC_RELEASE_VER}.tar.bz2" + if tc_version_is_between 6.4.0 7 ; then + GCC_SRC_URI="mirror://gnu/gcc/gcc-${GCC_PV}/gcc-${GCC_RELEASE_VER}.tar.xz" + else + GCC_SRC_URI="mirror://gnu/gcc/gcc-${GCC_PV}/gcc-${GCC_RELEASE_VER}.tar.bz2" + fi # we want all branch updates to be against the main release [[ -n ${BRANCH_UPDATE} ]] && \ GCC_SRC_URI+=" $(gentoo_urls gcc-${GCC_RELEASE_VER}-branch-update-${BRANCH_UPDATE}.patch.bz2)" @@ -424,7 +428,11 @@ gcc_quick_unpack() { elif [[ -n ${SNAPSHOT} ]] ; then unpack gcc-${SNAPSHOT}.tar.bz2 elif [[ ${PV} != *9999* ]] ; then - unpack gcc-${GCC_RELEASE_VER}.tar.bz2 + if tc_version_is_between 6.4.0 7 ; then + unpack gcc-${GCC_RELEASE_VER}.tar.xz + else + unpack gcc-${GCC_RELEASE_VER}.tar.bz2 + fi # We want branch updates to be against a release tarball if [[ -n ${BRANCH_UPDATE} ]] ; then pushd "${S}" > /dev/null