[gnome-continuous-yocto/gnomeostree-3.28-rocko: 6758/8267] gcc-cross: Fix linker and fortran symlinks
- From: Emmanuele Bassi <ebassi src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-continuous-yocto/gnomeostree-3.28-rocko: 6758/8267] gcc-cross: Fix linker and fortran symlinks
- Date: Sun, 17 Dec 2017 05:17:39 +0000 (UTC)
commit 1131e79540e1ba5d8562b13810f073e2e2efa7dc
Author: Khem Raj <raj khem gmail com>
Date: Tue Jul 11 07:05:46 2017 -0700
gcc-cross: Fix linker and fortran symlinks
If we used -fuse-ld gcc option, then it does not work
ending in
collect2: fatal error: cannot find 'ld'
compilation terminated.
This is because we are not creating proper symlinks for BFD
and Gold linker in gcc installation
Secondly, we end up with dangling fortran compiler symlinks
if fortran is not enabled when confguring gcc, therefore
create these symlinks only when fortran support is enabled
in gcc
(From OE-Core rev: f84614c082406287e608860741a82edd2f3c9bca)
Signed-off-by: Khem Raj <raj khem gmail com>
Signed-off-by: Ross Burton <ross burton intel com>
Signed-off-by: Richard Purdie <richard purdie linuxfoundation org>
meta/recipes-devtools/gcc/gcc-cross.inc | 10 ++++++----
1 files changed, 6 insertions(+), 4 deletions(-)
---
diff --git a/meta/recipes-devtools/gcc/gcc-cross.inc b/meta/recipes-devtools/gcc/gcc-cross.inc
index b08bc19..1e184a6 100644
--- a/meta/recipes-devtools/gcc/gcc-cross.inc
+++ b/meta/recipes-devtools/gcc/gcc-cross.inc
@@ -161,17 +161,19 @@ do_install () {
install -d ${D}${target_base_libdir}
install -d ${D}${target_libdir}
-
+
# Link gfortran to g77 to satisfy not-so-smart configure or hard coded g77
# gfortran is fully backwards compatible. This is a safe and practical solution.
- ln -sf ${STAGING_DIR_NATIVE}${prefix_native}/bin/${TARGET_PREFIX}gfortran
${STAGING_DIR_NATIVE}${prefix_native}/bin/${TARGET_PREFIX}g77 || true
+ if [ -n "${@d.getVar('FORTRAN')}" ]; then
+ ln -sf ${STAGING_DIR_NATIVE}${prefix_native}/bin/${TARGET_PREFIX}gfortran
${STAGING_DIR_NATIVE}${prefix_native}/bin/${TARGET_PREFIX}g77 || true
+ fortsymlinks="g77 gfortran"
+ fi
-
# Insert symlinks into libexec so when tools without a prefix are searched for, the correct ones are
# found. These need to be relative paths so they work in different locations.
dest=${D}${libexecdir}/gcc/${TARGET_SYS}/${BINV}/
install -d $dest
- for t in ar as ld nm objcopy objdump ranlib strip g77 gcc cpp gfortran; do
+ for t in ar as ld ld.bfd ld.gold nm objcopy objdump ranlib strip gcc cpp $fortsymlinks; do
ln -sf ${BINRELPATH}/${TARGET_PREFIX}$t $dest$t
ln -sf ${BINRELPATH}/${TARGET_PREFIX}$t ${dest}${TARGET_PREFIX}$t
done
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]