commit:     0e3008ddccb1bccfa7225fb20a9db7694d2752d9
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 30 10:21:26 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Nov 30 10:37:38 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0e3008dd

sys-libs/newlib: pass -Wa,--no-verify for nvptx

nvptx-tools performs verification if CUDA is installed, otherwise it
skips it. newlib fails to build with that veriifcation, so punt
it for now.

Bug: https://bugs.gentoo.org/945296
Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-libs/newlib/newlib-4.4.0.20231231.ebuild | 24 ++++++++++++++++++++++++
 sys-libs/newlib/newlib-9999.ebuild           | 24 ++++++++++++++++++++++++
 2 files changed, 48 insertions(+)

diff --git a/sys-libs/newlib/newlib-4.4.0.20231231.ebuild 
b/sys-libs/newlib/newlib-4.4.0.20231231.ebuild
index d29d3f10e0d1..8b83f40af6e9 100644
--- a/sys-libs/newlib/newlib-4.4.0.20231231.ebuild
+++ b/sys-libs/newlib/newlib-4.4.0.20231231.ebuild
@@ -85,6 +85,12 @@ src_configure() {
 
        export "CFLAGS_FOR_TARGET=${CFLAGS_ORIG} ${CFLAGS_FULL}"
        export "CCASFLAGS=${CCASFLAGS_ORIG} ${CFLAGS_FULL}"
+
+       [[ ${CTARGET} == nvptx* ]] && {
+               CFLAGS_FOR_TARGET+=" -Wa,--no-verify"
+               CCASFLAGS+=" -Wa,--no-verify"
+       }
+
        ECONF_SOURCE=${S} \
        econf \
                $(use_enable unicode newlib-mb) \
@@ -98,6 +104,12 @@ src_configure() {
                cd "${NEWLIBNANOBUILD}" || die
                export "CFLAGS_FOR_TARGET=${CFLAGS_ORIG} ${CFLAGS_NANO}"
                export "CCASFLAGS=${CCASFLAGS_ORIG} ${CFLAGS_NANO}"
+
+               [[ ${CTARGET} == nvptx* ]] && {
+                       CFLAGS_FOR_TARGET+=" -Wa,--no-verify"
+                       CCASFLAGS+=" -Wa,--no-verify"
+               }
+
                ECONF_SOURCE=${S} \
                econf \
                        $(use_enable unicode newlib-mb) \
@@ -118,11 +130,23 @@ src_configure() {
 src_compile() {
        export "CFLAGS_FOR_TARGET=${CFLAGS_ORIG} ${CFLAGS_FULL}"
        export "CCASFLAGS=${CCASFLAGS_ORIG} ${CFLAGS_FULL}"
+
+       [[ ${CTARGET} == nvptx* ]] && {
+               CFLAGS_FOR_TARGET+=" -Wa,--no-verify"
+               CCASFLAGS+=" -Wa,--no-verify"
+       }
+
        emake -C "${NEWLIBBUILD}"
 
        if use nano ; then
                export "CFLAGS_FOR_TARGET=${CFLAGS_ORIG} ${CFLAGS_NANO}"
                export "CCASFLAGS=${CCASFLAGS_ORIG} ${CFLAGS_NANO}"
+
+               [[ ${CTARGET} == nvptx* ]] && {
+                       CFLAGS_FOR_TARGET+=" -Wa,--no-verify"
+                       CCASFLAGS+=" -Wa,--no-verify"
+               }
+
                emake -C "${NEWLIBNANOBUILD}"
        fi
 }

diff --git a/sys-libs/newlib/newlib-9999.ebuild 
b/sys-libs/newlib/newlib-9999.ebuild
index d29d3f10e0d1..8b83f40af6e9 100644
--- a/sys-libs/newlib/newlib-9999.ebuild
+++ b/sys-libs/newlib/newlib-9999.ebuild
@@ -85,6 +85,12 @@ src_configure() {
 
        export "CFLAGS_FOR_TARGET=${CFLAGS_ORIG} ${CFLAGS_FULL}"
        export "CCASFLAGS=${CCASFLAGS_ORIG} ${CFLAGS_FULL}"
+
+       [[ ${CTARGET} == nvptx* ]] && {
+               CFLAGS_FOR_TARGET+=" -Wa,--no-verify"
+               CCASFLAGS+=" -Wa,--no-verify"
+       }
+
        ECONF_SOURCE=${S} \
        econf \
                $(use_enable unicode newlib-mb) \
@@ -98,6 +104,12 @@ src_configure() {
                cd "${NEWLIBNANOBUILD}" || die
                export "CFLAGS_FOR_TARGET=${CFLAGS_ORIG} ${CFLAGS_NANO}"
                export "CCASFLAGS=${CCASFLAGS_ORIG} ${CFLAGS_NANO}"
+
+               [[ ${CTARGET} == nvptx* ]] && {
+                       CFLAGS_FOR_TARGET+=" -Wa,--no-verify"
+                       CCASFLAGS+=" -Wa,--no-verify"
+               }
+
                ECONF_SOURCE=${S} \
                econf \
                        $(use_enable unicode newlib-mb) \
@@ -118,11 +130,23 @@ src_configure() {
 src_compile() {
        export "CFLAGS_FOR_TARGET=${CFLAGS_ORIG} ${CFLAGS_FULL}"
        export "CCASFLAGS=${CCASFLAGS_ORIG} ${CFLAGS_FULL}"
+
+       [[ ${CTARGET} == nvptx* ]] && {
+               CFLAGS_FOR_TARGET+=" -Wa,--no-verify"
+               CCASFLAGS+=" -Wa,--no-verify"
+       }
+
        emake -C "${NEWLIBBUILD}"
 
        if use nano ; then
                export "CFLAGS_FOR_TARGET=${CFLAGS_ORIG} ${CFLAGS_NANO}"
                export "CCASFLAGS=${CCASFLAGS_ORIG} ${CFLAGS_NANO}"
+
+               [[ ${CTARGET} == nvptx* ]] && {
+                       CFLAGS_FOR_TARGET+=" -Wa,--no-verify"
+                       CCASFLAGS+=" -Wa,--no-verify"
+               }
+
                emake -C "${NEWLIBNANOBUILD}"
        fi
 }

Reply via email to