diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2013-12-05 00:48:30 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2013-12-05 14:24:43 +0000 |
commit | 5bde5d9b39ea67f19a1a6aedd0c08c6cfedcbe5f (patch) | |
tree | 0dd4a18f59565236a07548ddba67d9cc52b5de07 /meta/recipes-devtools/gcc/gcc-cross.inc | |
parent | a67654e06ec8b0bda8fe953e1b5357e2d297c375 (diff) | |
download | poky-5bde5d9b39ea67f19a1a6aedd0c08c6cfedcbe5f.tar.gz |
gcc: Allow fortran to build successfully in 4.8
gcc 4.8 fortran presents some challenges:
* libquadmath headers need to be in the libexec include dir. It turns out
to be easiest just to manually do this.
* libgfortran configure needs libquadmath to be compiled. This means
a separate recipe is needed (the alternative is gross hacks)
* the libtool uses to link libgfortran doesn't have our improved rpath
handling and puts bogus RPATHS into the libraries. We can avoid this
by tweaking libtool with sed.
This patch resolves those issues. Any user of fortran does need to DEPEND
on libgfortran in order to trigger it to build but this shouldn't be a major
issue.
(From OE-Core rev: a5e7ee5770b9e0cf719c573efffd874440f74289)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/gcc/gcc-cross.inc')
-rw-r--r-- | meta/recipes-devtools/gcc/gcc-cross.inc | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-cross.inc b/meta/recipes-devtools/gcc/gcc-cross.inc index 25a3142261..5c4319fb32 100644 --- a/meta/recipes-devtools/gcc/gcc-cross.inc +++ b/meta/recipes-devtools/gcc/gcc-cross.inc | |||
@@ -165,6 +165,11 @@ do_install () { | |||
165 | rm -rf ${D}${STAGING_DIR_NATIVE}${prefix_native}/$d | 165 | rm -rf ${D}${STAGING_DIR_NATIVE}${prefix_native}/$d |
166 | done | 166 | done |
167 | 167 | ||
168 | # libquadmath headers need to be available in the gcc libexec dir | ||
169 | install -d ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/include/ | ||
170 | cp ${S}/libquadmath/quadmath.h ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/include/ | ||
171 | cp ${S}/libquadmath/quadmath_weak.h ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/include/ | ||
172 | |||
168 | # We use libiberty from binutils | 173 | # We use libiberty from binutils |
169 | find ${D}${exec_prefix}/lib -name libiberty.a | xargs rm -f | 174 | find ${D}${exec_prefix}/lib -name libiberty.a | xargs rm -f |
170 | find ${D}${exec_prefix}/lib -name libiberty.h | xargs rm -f | 175 | find ${D}${exec_prefix}/lib -name libiberty.h | xargs rm -f |