git: 9d5e42894b39 - main - net/mpich: fix build with clang 19 on i386
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 18 Sep 2024 07:26:03 UTC
The branch main has been updated by dim: URL: https://cgit.FreeBSD.org/ports/commit/?id=9d5e42894b39c428c6241efb1a053f7e571a6fee commit 9d5e42894b39c428c6241efb1a053f7e571a6fee Author: Dimitry Andric <dim@FreeBSD.org> AuthorDate: 2024-09-17 20:30:17 +0000 Commit: Dimitry Andric <dim@FreeBSD.org> CommitDate: 2024-09-18 07:24:55 +0000 net/mpich: fix build with clang 19 on i386 In bug 276035 this was already handled once, but with clang 19 on i386 we get similar link errors: ld: error: undefined reference: __addtf3 >>> referenced by lib/.libs/libmpi.so (disallowed by --no-allow-shlib-undefined) ld: error: undefined reference: __gttf2 >>> referenced by lib/.libs/libmpi.so (disallowed by --no-allow-shlib-undefined) ld: error: undefined reference: __lttf2 >>> referenced by lib/.libs/libmpi.so (disallowed by --no-allow-shlib-undefined) ld: error: undefined reference: __multf3 >>> referenced by lib/.libs/libmpi.so (disallowed by --no-allow-shlib-undefined) ld: error: undefined reference: __extendxftf2 >>> referenced by lib/.libs/libmpi.so (disallowed by --no-allow-shlib-undefined) ld: error: undefined reference: __trunctfxf2 >>> referenced by lib/.libs/libmpi.so (disallowed by --no-allow-shlib-undefined) Again the cause is that the mpich configure script detects partial float128 support on i386 (i.e. the compile doesn't immediately choke on defining variables of that type). It then enables HAVE_FLOAT128, which leads to the above errors, because compiler-rt does not support float128 on i386. PR: 281557 Approved by: laurent.chardon@gmail.com (maintainer) MFH: 2024Q3 --- net/mpich/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/mpich/Makefile b/net/mpich/Makefile index a502f2d03a8c..d9ee832c4ebe 100644 --- a/net/mpich/Makefile +++ b/net/mpich/Makefile @@ -85,7 +85,7 @@ PORTDOCS= * IGNORE= is currently not working with the L0 option. Unset L0 .endif -.if ${COMPILER_TYPE} == clang && (${COMPILER_VERSION} == 170 || ${COMPILER_VERSION} == 181 && ${ARCH} == "i386") +.if ${COMPILER_TYPE} == clang && (${COMPILER_VERSION} == 170 || ${COMPILER_VERSION} >= 181 && ${ARCH} == "i386") # linker error when compiling with llvm 17.0.6 on CURRENT - PR 276035 # To be removed when all RELEASE and CURRENT no longer need it # Error remains for i386 and llvm-181 on CURRENT