summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/gcc
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2019-08-13 08:28:35 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2019-08-14 17:33:49 +0100
commit1dc2823d62b253a6f7d05f71426f77925523de49 (patch)
tree8210045bbff9ac6dab6021a4c0bf93743d2df59f /meta/recipes-devtools/gcc
parente64e8aa72544c1eb271411a0a3c33c9d4f5b606c (diff)
downloadpoky-1dc2823d62b253a6f7d05f71426f77925523de49.tar.gz
gcc-runtime: Move content from gcclibdir into libdir
OE does not use the traditional /usr/lib/gcc prefix to store gcc-runtime it basically is moved into libdir, however some newer files were installed by newer versions of gcc especially libgomp ( omp.h openacc.h ) into gcclibdir, so we have content in both directories, this confuses other tools which are trying to guess the gcc installation and its runtime location, since now we have two directories, the tools either choose one or other and we get inconsistent behavior, e.g. clang for aarch64 uses /usr/lib but same clang for riscv64 chose /usr/lib/gcc This change ensures that OE ends up with single valid location for gcc runtime files Move more common bits into common inc file (From OE-Core rev: e9e5744ba8b0d43c8b874d365f83071ce20bf0a1) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/gcc')
-rw-r--r--meta/recipes-devtools/gcc/gcc-runtime.inc18
-rw-r--r--meta/recipes-devtools/gcc/gcc-runtime_8.3.bb10
-rw-r--r--meta/recipes-devtools/gcc/gcc-runtime_9.1.bb10
3 files changed, 15 insertions, 23 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-runtime.inc b/meta/recipes-devtools/gcc/gcc-runtime.inc
index a5c2600d7f..22c1d78dd1 100644
--- a/meta/recipes-devtools/gcc/gcc-runtime.inc
+++ b/meta/recipes-devtools/gcc/gcc-runtime.inc
@@ -17,6 +17,12 @@ EXTRA_OECONF_PATHS = "\
17EXTRA_OECONF_append_linuxstdbase = " --enable-clocale=gnu" 17EXTRA_OECONF_append_linuxstdbase = " --enable-clocale=gnu"
18EXTRA_OECONF_append = " --cache-file=${B}/config.cache" 18EXTRA_OECONF_append = " --cache-file=${B}/config.cache"
19 19
20# Disable ifuncs for libatomic on arm conflicts -march/-mcpu
21EXTRA_OECONF_append_arm = " libat_cv_have_ifunc=no "
22
23# Building with thumb enabled on armv6t fails
24ARM_INSTRUCTION_SET_armv6 = "arm"
25
20RUNTIMELIBITM = "libitm" 26RUNTIMELIBITM = "libitm"
21RUNTIMELIBITM_arc = "" 27RUNTIMELIBITM_arc = ""
22RUNTIMELIBITM_mipsarch = "" 28RUNTIMELIBITM_mipsarch = ""
@@ -77,6 +83,11 @@ do_install () {
77 cd ${B}/${TARGET_SYS}/$d/ 83 cd ${B}/${TARGET_SYS}/$d/
78 oe_runmake 'DESTDIR=${D}' MULTIBUILDTOP=${B}/${TARGET_SYS}/$d/ install 84 oe_runmake 'DESTDIR=${D}' MULTIBUILDTOP=${B}/${TARGET_SYS}/$d/ install
79 done 85 done
86 if [ -d ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/include ]; then
87 install -d ${D}${libdir}/${TARGET_SYS}/${BINV}/include
88 mv ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/include/* ${D}${libdir}/${TARGET_SYS}/${BINV}/include
89 rmdir --ignore-fail-on-non-empty -p ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/include
90 fi
80 rm -rf ${D}${infodir}/libgomp.info ${D}${infodir}/dir 91 rm -rf ${D}${infodir}/libgomp.info ${D}${infodir}/dir
81 rm -rf ${D}${infodir}/libitm.info ${D}${infodir}/dir 92 rm -rf ${D}${infodir}/libitm.info ${D}${infodir}/dir
82 rm -rf ${D}${infodir}/libquadmath.info ${D}${infodir}/dir 93 rm -rf ${D}${infodir}/libquadmath.info ${D}${infodir}/dir
@@ -205,7 +216,7 @@ FILES_libssp-dev = "\
205 ${libdir}/libssp*.so \ 216 ${libdir}/libssp*.so \
206 ${libdir}/libssp*_nonshared.a \ 217 ${libdir}/libssp*_nonshared.a \
207 ${libdir}/libssp*.la \ 218 ${libdir}/libssp*.la \
208 ${libdir}/gcc/${TARGET_SYS}/${BINV}/include/ssp \ 219 ${libdir}/${TARGET_SYS}/${BINV}/include/ssp \
209" 220"
210SUMMARY_libssp-dev = "GNU stack smashing protection library - development files" 221SUMMARY_libssp-dev = "GNU stack smashing protection library - development files"
211FILES_libssp-staticdev = "${libdir}/libssp*.a" 222FILES_libssp-staticdev = "${libdir}/libssp*.a"
@@ -214,7 +225,7 @@ SUMMARY_libssp-staticdev = "GNU stack smashing protection library - static devel
214FILES_libquadmath = "${libdir}/libquadmath*.so.*" 225FILES_libquadmath = "${libdir}/libquadmath*.so.*"
215SUMMARY_libquadmath = "GNU quad-precision math library" 226SUMMARY_libquadmath = "GNU quad-precision math library"
216FILES_libquadmath-dev = "\ 227FILES_libquadmath-dev = "\
217 ${libdir}/gcc/${TARGET_SYS}/${BINV}/include/quadmath* \ 228 ${libdir}/${TARGET_SYS}/${BINV}/include/quadmath* \
218 ${libdir}/libquadmath*.so \ 229 ${libdir}/libquadmath*.so \
219 ${libdir}/libquadmath.la \ 230 ${libdir}/libquadmath.la \
220" 231"
@@ -239,7 +250,8 @@ FILES_libgomp-dev = "\
239 ${libdir}/libgomp*${SOLIBSDEV} \ 250 ${libdir}/libgomp*${SOLIBSDEV} \
240 ${libdir}/libgomp*.la \ 251 ${libdir}/libgomp*.la \
241 ${libdir}/libgomp.spec \ 252 ${libdir}/libgomp.spec \
242 ${libdir}/gcc/${TARGET_SYS}/${BINV}/include/omp.h \ 253 ${libdir}/${TARGET_SYS}/${BINV}/include/omp.h \
254 ${libdir}/${TARGET_SYS}/${BINV}/include/openacc.h \
243" 255"
244SUMMARY_libgomp-dev = "GNU OpenMP parallel programming library - development files" 256SUMMARY_libgomp-dev = "GNU OpenMP parallel programming library - development files"
245FILES_libgomp-staticdev = "${libdir}/libgomp*.a" 257FILES_libgomp-staticdev = "${libdir}/libgomp*.a"
diff --git a/meta/recipes-devtools/gcc/gcc-runtime_8.3.bb b/meta/recipes-devtools/gcc/gcc-runtime_8.3.bb
index a1c7a76d0b..dd430b57eb 100644
--- a/meta/recipes-devtools/gcc/gcc-runtime_8.3.bb
+++ b/meta/recipes-devtools/gcc/gcc-runtime_8.3.bb
@@ -1,12 +1,2 @@
1require recipes-devtools/gcc/gcc-${PV}.inc 1require recipes-devtools/gcc/gcc-${PV}.inc
2require gcc-runtime.inc 2require gcc-runtime.inc
3
4# Disable ifuncs for libatomic on arm conflicts -march/-mcpu
5EXTRA_OECONF_append_arm = " libat_cv_have_ifunc=no "
6
7FILES_libgomp-dev += "\
8 ${libdir}/gcc/${TARGET_SYS}/${BINV}/include/openacc.h \
9"
10
11# Building with thumb enabled on armv6t fails
12ARM_INSTRUCTION_SET_armv6 = "arm"
diff --git a/meta/recipes-devtools/gcc/gcc-runtime_9.1.bb b/meta/recipes-devtools/gcc/gcc-runtime_9.1.bb
index a1c7a76d0b..dd430b57eb 100644
--- a/meta/recipes-devtools/gcc/gcc-runtime_9.1.bb
+++ b/meta/recipes-devtools/gcc/gcc-runtime_9.1.bb
@@ -1,12 +1,2 @@
1require recipes-devtools/gcc/gcc-${PV}.inc 1require recipes-devtools/gcc/gcc-${PV}.inc
2require gcc-runtime.inc 2require gcc-runtime.inc
3
4# Disable ifuncs for libatomic on arm conflicts -march/-mcpu
5EXTRA_OECONF_append_arm = " libat_cv_have_ifunc=no "
6
7FILES_libgomp-dev += "\
8 ${libdir}/gcc/${TARGET_SYS}/${BINV}/include/openacc.h \
9"
10
11# Building with thumb enabled on armv6t fails
12ARM_INSTRUCTION_SET_armv6 = "arm"