From 09bdfbd968af1f07b1578a5459608ca7c8ab6bc8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=BCrgen=20Buchm=C3=BCller?= Date: Wed, 11 Apr 2018 10:50:57 +0200 Subject: [PATCH] gcc: cross build gcc-fortran MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Closes: #13319 Signed-off-by: Jürgen Buchmüller --- srcpkgs/gcc/template | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/srcpkgs/gcc/template b/srcpkgs/gcc/template index a0e0a817173..50ad9171559 100644 --- a/srcpkgs/gcc/template +++ b/srcpkgs/gcc/template @@ -7,7 +7,7 @@ _isl_version=0.16.1 pkgname=gcc version=${_majorver}.0 -revision=1 +revision=2 short_desc="The GNU C Compiler" maintainer="Juan RP " homepage="http://gcc.gnu.org" @@ -40,16 +40,17 @@ depends="binutils libgcc-devel-${version}_${revision} subpackages="libgcc libgomp libgomp-devel libatomic libatomic-devel" subpackages+=" libssp libssp-devel" -if [ -n "$CHROOT_READY" -a -z "$CROSS_BUILD" ]; then - subpackages+=" gcc-fortran gcc-objc gcc-objc++" - subpackages+=" libgfortran-devel libgfortran" - subpackages+=" libobjc-devel libobjc" - case "$XBPS_TARGET_MACHINE" in +if [ -n "$CHROOT_READY" ]; then + subpackages+=" gcc-fortran libgfortran-devel libgfortran" + if [ -z "$CROSS_BUILD" ]; then + subpackages+=" gcc-objc gcc-objc++ libobjc-devel libobjc" + case "$XBPS_TARGET_MACHINE" in *-musl) # Go won't link for musl libc ;; *) subpackages+=" gcc-go gcc-go-tools libgo-devel libgo" ;; - esac + esac + fi fi subpackages+=" libstdc++-devel libstdc++ libgcc-devel" @@ -73,9 +74,11 @@ case "$XBPS_TARGET_MACHINE" in mipselhf-musl) _triplet="mipsel-linux-muslhf";; esac case "$XBPS_TARGET_MACHINE" in - *-musl) depends+=" musl-devel";; + *-musl) depends+=" musl-devel";; aarch64) depends+=" glibc-devel";; - *) subpackages+=" libsanitizer libsanitizer-devel"; depends+=" glibc-devel";; + *) depends+=" glibc-devel" + subpackages+=" libsanitizer libsanitizer-devel" + ;; esac case "$XBPS_TARGET_MACHINE" in i686*|x86_64*) @@ -89,6 +92,10 @@ case "$XBPS_TARGET_MACHINE" in x86_64*|i686) subpackages+=" libitm libitm-devel libmpx libmpx-devel";; *) subpackages+=" libitm libitm-devel";; esac +if [ -n "$CROSS_BUILD" ]; then + hostmakedepends+=" cross-${_triplet}" + export GFORTRAN_FOR_TARGET=" ${_triplet}-gfortran" +fi post_extract() { mkdir -p ${wrksrc}/{gmp,mpfr,mpc,isl} @@ -128,7 +135,7 @@ do_configure() { _langs="c,c++,lto" fi - if [ "$CROSS_BUILD" ]; then + if [ -n "$CROSS_BUILD" ]; then export CC_FOR_TARGET="$CC" export GCC_FOR_TARGET="$CC" export CXX_FOR_TARGET="$CXX" @@ -137,6 +144,7 @@ do_configure() { _args+=" --host=$XBPS_CROSS_TRIPLET" _args+=" --with-build-sysroot=${XBPS_CROSS_BASE}" _args+=" --enable-sjlj-exceptions=no" + _langs+=",fortran" else if [ -z "$CHROOT_READY" ]; then export LD_LIBRARY_PATH="${XBPS_MASTERDIR}/usr/lib"