diff options
author | Georgy Yakovlev <gyakovlev@gentoo.org> | 2022-11-30 10:23:39 -0800 |
---|---|---|
committer | Georgy Yakovlev <gyakovlev@gentoo.org> | 2022-12-04 14:20:45 -0800 |
commit | bc0ab18a5714c4867f7cd42631b44f541d9f4aa1 (patch) | |
tree | 22a1effcc91484b4cc148377eb9ce6ca0dd62e30 /eclass/toolchain.eclass | |
parent | app-text/poppler: add 22.12.0 (diff) | |
download | gentoo-bc0ab18a5714c4867f7cd42631b44f541d9f4aa1.tar.gz gentoo-bc0ab18a5714c4867f7cd42631b44f541d9f4aa1.tar.bz2 gentoo-bc0ab18a5714c4867f7cd42631b44f541d9f4aa1.zip |
eclass/toolchain.eclass: add USE=ieee-long-double for sys-devel/gcc
Bug: https://bugs.gentoo.org/882815
Signed-off-by: Georgy Yakovlev <gyakovlev@gentoo.org>
Diffstat (limited to 'eclass/toolchain.eclass')
-rw-r--r-- | eclass/toolchain.eclass | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass index f3989ad8b6e6..3841379f94ca 100644 --- a/eclass/toolchain.eclass +++ b/eclass/toolchain.eclass @@ -277,6 +277,7 @@ if [[ ${PN} != kgcc64 && ${PN} != gcc-* ]] ; then tc_version_is_at_least 10 && IUSE+=" zstd" TC_FEATURES+=( zstd ) tc_version_is_at_least 11 && IUSE+=" valgrind" TC_FEATURES+=( valgrind ) tc_version_is_at_least 11 && IUSE+=" custom-cflags" + tc_version_is_at_least 12 && IUSE+=" ieee-long-double" tc_version_is_at_least 12.99 && IUSE+=" default-znow" tc_version_is_at_least 12.99 && IUSE+=" default-stack-clash-protection" fi @@ -1326,6 +1327,13 @@ toolchain_src_configure() { # - bug #704784 # - https://gcc.gnu.org/PR93157 [[ ${CTARGET} == powerpc64-*-musl ]] && confgcc+=( --with-abi=elfv2 ) + + if in_iuse ieee-long-double; then + # musl requires 64-bit long double, not IBM double-double or IEEE quad. + if [[ ${CTARGET} == powerpc64le-*-gnu ]]; then + use ieee-long-double && confgcc+=( --with-long-double-format=ieee ) + fi + fi ;; riscv) # Add --with-abi flags to set default ABI |