In 6.x and 7.x gcc, libgfortran now needs libbacktrace. Enable building of this
so that libgfortran builds correctly.

[YOCTO #12394]

Signed-off-by: Richard Purdie <richard.pur...@linuxfoundation.org>
---
 meta/recipes-devtools/gcc/libgfortran.inc | 28 +++++++++++++++++-----------
 1 file changed, 17 insertions(+), 11 deletions(-)

diff --git a/meta/recipes-devtools/gcc/libgfortran.inc 
b/meta/recipes-devtools/gcc/libgfortran.inc
index 5f5d4af..99c192a 100644
--- a/meta/recipes-devtools/gcc/libgfortran.inc
+++ b/meta/recipes-devtools/gcc/libgfortran.inc
@@ -6,22 +6,28 @@ EXTRA_OECONF_PATHS = "\
 "
 
 do_configure () {
-       rm -rf ${B}/${TARGET_SYS}/libgfortran/
-       mkdir -p ${B}/${TARGET_SYS}/libgfortran/
-       cd ${B}/${TARGET_SYS}/libgfortran/
-       chmod a+x ${S}/libgfortran/configure
-       relpath=${@os.path.relpath("${S}/libgfortran", 
"${B}/${TARGET_SYS}/libgfortran")}
-       $relpath/configure ${CONFIGUREOPTS} ${EXTRA_OECONF}
-       # Easiest way to stop bad RPATHs getting into the library since we have 
a
-       # broken libtool here
-       sed -i -e 's/hardcode_into_libs=yes/hardcode_into_libs=no/' 
${B}/${TARGET_SYS}/libgfortran/libtool
+       for target in libbacktrace libgfortran
+       do
+               rm -rf ${B}/${TARGET_SYS}/$target/
+               mkdir -p ${B}/${TARGET_SYS}/$target/
+               cd ${B}/${TARGET_SYS}/$target/
+               chmod a+x ${S}/$target/configure
+               relpath=${@os.path.relpath("${S}", "${B}/${TARGET_SYS}")}
+               ../$relpath/$target/configure ${CONFIGUREOPTS} ${EXTRA_OECONF}
+               # Easiest way to stop bad RPATHs getting into the library since 
we have a
+               # broken libtool here
+               sed -i -e 's/hardcode_into_libs=yes/hardcode_into_libs=no/' 
${B}/${TARGET_SYS}/$target/libtool
+       done
 }
 EXTRACONFFUNCS += "extract_stashed_builddir"
 do_configure[depends] += "${COMPILERDEP}"
 
 do_compile () {
-       cd ${B}/${TARGET_SYS}/libgfortran/
-       oe_runmake MULTIBUILDTOP=${B}/${TARGET_SYS}/libgfortran/
+       for target in libbacktrace libgfortran
+       do
+               cd ${B}/${TARGET_SYS}/$target/
+               oe_runmake MULTIBUILDTOP=${B}/${TARGET_SYS}/$target/
+       done
 }
 
 do_install () {
-- 
2.7.4

-- 
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to