diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2017-12-19 11:28:28 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2017-12-21 10:21:00 +0000 |
commit | 4ac5511f940232a198ebc3e1c012c252d9ddc6fd (patch) | |
tree | 15384390b8dd3cbab7209138efb11d34e63812c3 | |
parent | 246dc1b5ebb170c2bfd43a1c5c48a325eba3eca4 (diff) | |
download | poky-4ac5511f940232a198ebc3e1c012c252d9ddc6fd.tar.gz |
libgfortran: Fix breakage from libbacktrace dependency
In 6.x and 7.x gcc, libgfortran now needs libbacktrace. Enable building of this
so that libgfortran builds correctly.
[YOCTO #12394]
(From OE-Core rev: 2c2f20a9756eccafac776e45e319af7666e6da96)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/recipes-devtools/gcc/libgfortran.inc | 28 |
1 files changed, 17 insertions, 11 deletions
diff --git a/meta/recipes-devtools/gcc/libgfortran.inc b/meta/recipes-devtools/gcc/libgfortran.inc index 5f5d4af758..99c192ac30 100644 --- a/meta/recipes-devtools/gcc/libgfortran.inc +++ b/meta/recipes-devtools/gcc/libgfortran.inc | |||
@@ -6,22 +6,28 @@ EXTRA_OECONF_PATHS = "\ | |||
6 | " | 6 | " |
7 | 7 | ||
8 | do_configure () { | 8 | do_configure () { |
9 | rm -rf ${B}/${TARGET_SYS}/libgfortran/ | 9 | for target in libbacktrace libgfortran |
10 | mkdir -p ${B}/${TARGET_SYS}/libgfortran/ | 10 | do |
11 | cd ${B}/${TARGET_SYS}/libgfortran/ | 11 | rm -rf ${B}/${TARGET_SYS}/$target/ |
12 | chmod a+x ${S}/libgfortran/configure | 12 | mkdir -p ${B}/${TARGET_SYS}/$target/ |
13 | relpath=${@os.path.relpath("${S}/libgfortran", "${B}/${TARGET_SYS}/libgfortran")} | 13 | cd ${B}/${TARGET_SYS}/$target/ |
14 | $relpath/configure ${CONFIGUREOPTS} ${EXTRA_OECONF} | 14 | chmod a+x ${S}/$target/configure |
15 | # Easiest way to stop bad RPATHs getting into the library since we have a | 15 | relpath=${@os.path.relpath("${S}", "${B}/${TARGET_SYS}")} |
16 | # broken libtool here | 16 | ../$relpath/$target/configure ${CONFIGUREOPTS} ${EXTRA_OECONF} |
17 | sed -i -e 's/hardcode_into_libs=yes/hardcode_into_libs=no/' ${B}/${TARGET_SYS}/libgfortran/libtool | 17 | # Easiest way to stop bad RPATHs getting into the library since we have a |
18 | # broken libtool here | ||
19 | sed -i -e 's/hardcode_into_libs=yes/hardcode_into_libs=no/' ${B}/${TARGET_SYS}/$target/libtool | ||
20 | done | ||
18 | } | 21 | } |
19 | EXTRACONFFUNCS += "extract_stashed_builddir" | 22 | EXTRACONFFUNCS += "extract_stashed_builddir" |
20 | do_configure[depends] += "${COMPILERDEP}" | 23 | do_configure[depends] += "${COMPILERDEP}" |
21 | 24 | ||
22 | do_compile () { | 25 | do_compile () { |
23 | cd ${B}/${TARGET_SYS}/libgfortran/ | 26 | for target in libbacktrace libgfortran |
24 | oe_runmake MULTIBUILDTOP=${B}/${TARGET_SYS}/libgfortran/ | 27 | do |
28 | cd ${B}/${TARGET_SYS}/$target/ | ||
29 | oe_runmake MULTIBUILDTOP=${B}/${TARGET_SYS}/$target/ | ||
30 | done | ||
25 | } | 31 | } |
26 | 32 | ||
27 | do_install () { | 33 | do_install () { |