summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta/classes/cross-canadian.bbclass1
-rw-r--r--meta/recipes-devtools/gcc/gcc-runtime.inc12
-rw-r--r--meta/recipes-devtools/gcc/libgcc.inc12
3 files changed, 25 insertions, 0 deletions
diff --git a/meta/classes/cross-canadian.bbclass b/meta/classes/cross-canadian.bbclass
index e07b1bdb6c..d35451dbf2 100644
--- a/meta/classes/cross-canadian.bbclass
+++ b/meta/classes/cross-canadian.bbclass
@@ -68,6 +68,7 @@ python () {
68 elif tarch == "mips64": 68 elif tarch == "mips64":
69 d.appendVar("CANADIANEXTRAOS", " linux-gnun32 linux-uclibcn32 linux-musln32") 69 d.appendVar("CANADIANEXTRAOS", " linux-gnun32 linux-uclibcn32 linux-musln32")
70 if tarch == "arm" or tarch == "armeb": 70 if tarch == "arm" or tarch == "armeb":
71 d.appendVar("CANADIANEXTRAOS", " linux-musleabi linux-uclibceabi")
71 d.setVar("TARGET_OS", "linux-gnueabi") 72 d.setVar("TARGET_OS", "linux-gnueabi")
72 else: 73 else:
73 d.setVar("TARGET_OS", "linux") 74 d.setVar("TARGET_OS", "linux")
diff --git a/meta/recipes-devtools/gcc/gcc-runtime.inc b/meta/recipes-devtools/gcc/gcc-runtime.inc
index 8639c1c49e..99f50f8066 100644
--- a/meta/recipes-devtools/gcc/gcc-runtime.inc
+++ b/meta/recipes-devtools/gcc/gcc-runtime.inc
@@ -73,9 +73,21 @@ do_install () {
73 if [ "${TARGET_VENDOR_MULTILIB_ORIGINAL}" != "" -a "${TARGET_VENDOR}" != "${TARGET_VENDOR_MULTILIB_ORIGINAL}" ]; then 73 if [ "${TARGET_VENDOR_MULTILIB_ORIGINAL}" != "" -a "${TARGET_VENDOR}" != "${TARGET_VENDOR_MULTILIB_ORIGINAL}" ]; then
74 ln -s ${TARGET_SYS} ${D}${includedir}/c++/${BINV}/${TARGET_ARCH}${TARGET_VENDOR_MULTILIB_ORIGINAL}-${TARGET_OS} 74 ln -s ${TARGET_SYS} ${D}${includedir}/c++/${BINV}/${TARGET_ARCH}${TARGET_VENDOR_MULTILIB_ORIGINAL}-${TARGET_OS}
75 fi 75 fi
76
77}
78
79do_install_append_class-target () {
76 if [ "${TARGET_OS}" = "linux-gnuspe" ]; then 80 if [ "${TARGET_OS}" = "linux-gnuspe" ]; then
77 ln -s ${TARGET_SYS} ${D}${includedir}/c++/${BINV}/${TARGET_ARCH}${TARGET_VENDOR}-linux 81 ln -s ${TARGET_SYS} ${D}${includedir}/c++/${BINV}/${TARGET_ARCH}${TARGET_VENDOR}-linux
78 fi 82 fi
83 if [ "${TCLIBC}" != "glibc" ]; then
84 case "${TARGET_OS}" in
85 "linux-musl" | "linux-uclibc" | "linux-*spe") extra_target_os="linux";;
86 "linux-musleabi" | "linux-uclibceabi") extra_target_os="linux-gnueabi";;
87 *) extra_target_os="linux";;
88 esac
89 ln -s ${TARGET_SYS} ${D}${includedir}/c++/${BINV}/${TARGET_ARCH}${TARGET_VENDOR}-$extra_target_os
90 fi
79 chown -R root:root ${D} 91 chown -R root:root ${D}
80} 92}
81 93
diff --git a/meta/recipes-devtools/gcc/libgcc.inc b/meta/recipes-devtools/gcc/libgcc.inc
index 68377869ca..4770394c42 100644
--- a/meta/recipes-devtools/gcc/libgcc.inc
+++ b/meta/recipes-devtools/gcc/libgcc.inc
@@ -2,6 +2,17 @@ require libgcc-common.inc
2 2
3DEPENDS = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++" 3DEPENDS = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++"
4 4
5do_install_append_class-target () {
6 if [ "${TCLIBC}" != "glibc" ]; then
7 case "${TARGET_OS}" in
8 "linux-musl" | "linux-uclibc" | "linux-*spe") extra_target_os="linux";;
9 "linux-musleabi" | "linux-uclibceabi") extra_target_os="linux-gnueabi";;
10 *) extra_target_os="linux";;
11 esac
12 ln -s ${TARGET_SYS} ${D}${libdir}/${TARGET_ARCH}${TARGET_VENDOR}-$extra_target_os
13 fi
14}
15
5PACKAGES = "\ 16PACKAGES = "\
6 ${PN} \ 17 ${PN} \
7 ${PN}-dev \ 18 ${PN}-dev \
@@ -19,6 +30,7 @@ FILES_${PN}-dev = "\
19 ${base_libdir}/libgcc*.so \ 30 ${base_libdir}/libgcc*.so \
20 ${@base_conditional('BASETARGET_SYS', '${TARGET_SYS}', '', '${libdir}/${BASETARGET_SYS}', d)} \ 31 ${@base_conditional('BASETARGET_SYS', '${TARGET_SYS}', '', '${libdir}/${BASETARGET_SYS}', d)} \
21 ${libdir}/${TARGET_SYS}/${BINV}* \ 32 ${libdir}/${TARGET_SYS}/${BINV}* \
33 ${libdir}/${TARGET_ARCH}${TARGET_VENDOR}* \
22" 34"
23 35
24LIBGCCBUILDTREENAME = "gcc-build-internal-" 36LIBGCCBUILDTREENAME = "gcc-build-internal-"