diff options
Diffstat (limited to 'meta/recipes-devtools/gcc/gcc-runtime.inc')
-rw-r--r-- | meta/recipes-devtools/gcc/gcc-runtime.inc | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-runtime.inc b/meta/recipes-devtools/gcc/gcc-runtime.inc index ad9798530f..c4e1c5b9a5 100644 --- a/meta/recipes-devtools/gcc/gcc-runtime.inc +++ b/meta/recipes-devtools/gcc/gcc-runtime.inc | |||
@@ -17,6 +17,7 @@ EXTRA_OECONF_PATHS = "\ | |||
17 | EXTRA_OECONF:append:linuxstdbase = " --enable-clocale=gnu" | 17 | EXTRA_OECONF:append:linuxstdbase = " --enable-clocale=gnu" |
18 | EXTRA_OECONF:append = " --cache-file=${B}/config.cache" | 18 | EXTRA_OECONF:append = " --cache-file=${B}/config.cache" |
19 | EXTRA_OECONF:append:libc-newlib = " --with-newlib --with-target-subdir" | 19 | EXTRA_OECONF:append:libc-newlib = " --with-newlib --with-target-subdir" |
20 | EXTRA_OECONF:append:libc-picolibc = " --with-newlib --with-target-subdir" | ||
20 | EXTRA_OECONF:append:libc-baremetal = " --with-target-subdir" | 21 | EXTRA_OECONF:append:libc-baremetal = " --with-target-subdir" |
21 | 22 | ||
22 | # Disable ifuncs for libatomic on arm conflicts -march/-mcpu | 23 | # Disable ifuncs for libatomic on arm conflicts -march/-mcpu |
@@ -27,6 +28,7 @@ DISABLE_STATIC:class-nativesdk ?= "" | |||
27 | 28 | ||
28 | # Newlib does not support symbol versioning on libsdtcc++ | 29 | # Newlib does not support symbol versioning on libsdtcc++ |
29 | SYMVERS_CONF:libc-newlib = "" | 30 | SYMVERS_CONF:libc-newlib = "" |
31 | SYMVERS_CONF:libc-picolibc = "" | ||
30 | 32 | ||
31 | # Building with thumb enabled on armv6t fails | 33 | # Building with thumb enabled on armv6t fails |
32 | ARM_INSTRUCTION_SET:armv6 = "arm" | 34 | ARM_INSTRUCTION_SET:armv6 = "arm" |
@@ -47,6 +49,7 @@ RUNTIMETARGET = "${RUNTIMELIBSSP} libstdc++-v3 libgomp libatomic ${RUNTIMELIBITM | |||
47 | " | 49 | " |
48 | # Only build libstdc++ for newlib | 50 | # Only build libstdc++ for newlib |
49 | RUNTIMETARGET:libc-newlib = "libstdc++-v3" | 51 | RUNTIMETARGET:libc-newlib = "libstdc++-v3" |
52 | RUNTIMETARGET:libc-picolibc = "libstdc++-v3" | ||
50 | 53 | ||
51 | # libiberty | 54 | # libiberty |
52 | # libgfortran needs separate recipe due to libquadmath dependency | 55 | # libgfortran needs separate recipe due to libquadmath dependency |
@@ -141,6 +144,11 @@ do_install:append:class-target () { | |||
141 | ln -sf ../${X86ARCH32}${TARGET_VENDOR}-${TARGET_OS} ${D}${includedir}/c++/${BINV}/${TARGET_ARCH}${TARGET_VENDOR}-${TARGET_OS}/32 | 144 | ln -sf ../${X86ARCH32}${TARGET_VENDOR}-${TARGET_OS} ${D}${includedir}/c++/${BINV}/${TARGET_ARCH}${TARGET_VENDOR}-${TARGET_OS}/32 |
142 | fi | 145 | fi |
143 | 146 | ||
147 | if [ "${TARGET_ARCH}" = "riscv32" -o "${TARGET_ARCH}" = "riscv64" ] && [ -z "${MULTILIB_VARIANTS}" ]; then | ||
148 | mv ${D}${includedir}/c++/${BINV}/${TARGET_SYS}/bits/* ${D}${includedir}/c++/${BINV}/bits | ||
149 | mv ${D}${includedir}/c++/${BINV}/${TARGET_SYS}/ext/* ${D}${includedir}/c++/${BINV}/ext | ||
150 | fi | ||
151 | |||
144 | if [ "${TCLIBC}" != "glibc" ]; then | 152 | if [ "${TCLIBC}" != "glibc" ]; then |
145 | case "${TARGET_OS}" in | 153 | case "${TARGET_OS}" in |
146 | "linux-musl" | "linux-*spe") extra_target_os="linux";; | 154 | "linux-musl" | "linux-*spe") extra_target_os="linux";; |
@@ -153,8 +161,9 @@ do_install:append:class-target () { | |||
153 | } | 161 | } |
154 | 162 | ||
155 | INHIBIT_DEFAULT_DEPS = "1" | 163 | INHIBIT_DEFAULT_DEPS = "1" |
156 | DEPENDS = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++ libgcc virtual/${MLPREFIX}libc" | 164 | DEPENDS = "virtual/cross-cc virtual/cross-c++ ${MLPREFIX}libgcc virtual/${MLPREFIX}libc" |
157 | PROVIDES = "virtual/${TARGET_PREFIX}compilerlibs" | 165 | DEPENDS:class-nativesdk = "virtual/nativesdk-cross-cc virtual/nativesdk-cross-c++ ${MLPREFIX}libgcc virtual/${MLPREFIX}libc" |
166 | PROVIDES = "virtual/${MLPREFIX}compilerlibs" | ||
158 | 167 | ||
159 | BBCLASSEXTEND = "nativesdk" | 168 | BBCLASSEXTEND = "nativesdk" |
160 | 169 | ||
@@ -201,6 +210,7 @@ FILES:libstdc++-dev = "\ | |||
201 | ${libdir}/libstdc++.so \ | 210 | ${libdir}/libstdc++.so \ |
202 | ${libdir}/libstdc++*.la \ | 211 | ${libdir}/libstdc++*.la \ |
203 | ${libdir}/libsupc++.la \ | 212 | ${libdir}/libsupc++.la \ |
213 | ${libdir}/libstdc++.modules.json \ | ||
204 | " | 214 | " |
205 | SUMMARY:libstdc++-dev = "GNU standard C++ library - development files" | 215 | SUMMARY:libstdc++-dev = "GNU standard C++ library - development files" |
206 | FILES:libstdc++-staticdev = "\ | 216 | FILES:libstdc++-staticdev = "\ |
@@ -289,6 +299,7 @@ do_check[prefuncs] += "extend_recipe_sysroot" | |||
289 | do_check[prefuncs] += "check_prepare" | 299 | do_check[prefuncs] += "check_prepare" |
290 | do_check[dirs] = "${WORKDIR}/dejagnu ${B}" | 300 | do_check[dirs] = "${WORKDIR}/dejagnu ${B}" |
291 | do_check[nostamp] = "1" | 301 | do_check[nostamp] = "1" |
302 | do_check[network] = "1" | ||
292 | do_check() { | 303 | do_check() { |
293 | export DEJAGNU="${WORKDIR}/dejagnu/site.exp" | 304 | export DEJAGNU="${WORKDIR}/dejagnu/site.exp" |
294 | 305 | ||