diff --git a/srcpkgs/cross-i686-pc-linux-gnu/files/fix-glibc-2.26.patch b/srcpkgs/cross-i686-pc-linux-gnu/files/fix-glibc-2.26.patch new file mode 120000 index 0000000000..3f1aa57333 --- /dev/null +++ b/srcpkgs/cross-i686-pc-linux-gnu/files/fix-glibc-2.26.patch @@ -0,0 +1 @@ +../../gcc/patches/fix-glibc-2.26.patch \ No newline at end of file diff --git a/srcpkgs/cross-i686-pc-linux-gnu/template b/srcpkgs/cross-i686-pc-linux-gnu/template index c23704ac0c..0efa59ed8e 100644 --- a/srcpkgs/cross-i686-pc-linux-gnu/template +++ b/srcpkgs/cross-i686-pc-linux-gnu/template @@ -1,8 +1,8 @@ # Template build file for 'cross-i686-pc-linux-gnu' # -_binutils_version=2.28 +_binutils_version=2.29 _gcc_version=6.3.0 -_glibc_version=2.25 +_glibc_version=2.26 _linux_version=4.9.8 _triplet=i686-pc-linux-gnu @@ -11,7 +11,7 @@ _sysroot="/usr/${_triplet}" pkgname=cross-${_triplet} version=0.23 -revision=2 +revision=3 short_desc="GNU Cross toolchain for the ${_triplet} target (binutils/gcc/glibc)" maintainer="Juan RP " homepage="http://www.voidlinux.eu" @@ -22,9 +22,9 @@ distfiles=" ${GNU_SITE}/glibc/glibc-${_glibc_version}.tar.xz ${KERNEL_SITE}/kernel/v4.x/linux-${_linux_version}.tar.xz" checksum=" - 6297433ee120b11b4b0a1c8f3512d7d73501753142ab9e2daa13c5a3edd32a72 + 29a29549869039aad75fdf507ac30366da5ad0b974fbff4a8e7148dbf4f40ebf f06ae7f3f790fbf0f018f6d40e844451e6bc3b7bc96e128e63b09825c1f8b29f - 067bd9bb3390e79aa45911537d13c3721f1d9d3769931a30c2681bfee66f23a0 + e54e0a934cd2bc94429be79da5e9385898d2306b9eaf3c92d5a77af96190f6bd 150bb7f2dd4849b5d21b8ccd8d05294a48229e1fcb93a22e7b806a79ec0b0e45" only_for_archs="armv6l armv7l x86_64" @@ -48,6 +48,8 @@ _apply_patch() { } _binutils_build() { + local _args + [ -f ${wrksrc}/.binutils_build_done ] && return 0 cd ${wrksrc}/binutils-${_binutils_version} @@ -56,11 +58,16 @@ _binutils_build() { [ ! -d ../binutils-build ] && mkdir ../binutils-build cd ../binutils-build + _args="--prefix=/usr" + _args+=" --target=${_triplet}" + _args+=" --with-sysroot=${_sysroot}" + _args+=" --disable-nls" + _args+=" --disable-shared" + _args+=" --disable-multilib" + _args+=" --disable-werror" + _args+=" --with-system-zlib" - ../binutils-${_binutils_version}/configure \ - --prefix=/usr --target=${_triplet} \ - --with-sysroot=${_sysroot} --disable-nls --disable-shared \ - --disable-multilib --disable-werror + ../binutils-${_binutils_version}/configure ${_args} make configure-host && make ${makejobs} make install @@ -75,6 +82,7 @@ _gcc_bootstrap() { cd ${wrksrc}/gcc-${_gcc_version} _apply_patch -p0 ${FILESDIR}/libcpp-source_date_epoch.patch _apply_patch -p0 ${FILESDIR}/fix-cxxflags-passing.patch + _apply_patch -p0 ${FILESDIR}/fix-glibc-2.26.patch msg_normal "Building cross gcc bootstrap\n" @@ -294,6 +302,9 @@ do_install() { cd ${wrksrc}/gcc-build make DESTDIR=${DESTDIR} install + # move libcc1.so* to the sysroot + mv ${DESTDIR}/usr/lib/libcc1.so* ${DESTDIR}/${_sysroot}/usr/lib + # install linux API headers for x86. cd ${wrksrc}/linux-${_linux_version} make ARCH=x86 INSTALL_HDR_PATH=${DESTDIR}/${_sysroot}/usr headers_install