git: 6354328d5f77 - main - devel/llvm12: address build issues in some configs

Brooks Davis brooks at FreeBSD.org
Mon May 3 17:39:08 UTC 2021


The branch main has been updated by brooks:

URL: https://cgit.FreeBSD.org/ports/commit/?id=6354328d5f77001b261a22475dbf4f465d3e4758

commit 6354328d5f77001b261a22475dbf4f465d3e4758
Author:     Brooks Davis <brooks at FreeBSD.org>
AuthorDate: 2021-05-03 17:13:52 +0000
Commit:     Brooks Davis <brooks at FreeBSD.org>
CommitDate: 2021-05-03 17:35:40 +0000

    devel/llvm12: address build issues in some configs
    
    In some cases (notably when LLDB is not selected), COMPILER_RT fails to
    build owing to not finding unwind.h.  Add USES=localbase to COMPILER_RT
    to address this.[0]
    
    When building on amd64 without /usr/lib32 compat libraries installed,
    COMPILER_RT doesn't build i386 sanitizer libs.  Detect this case and
    don't add to plist.[1]
    
    Submitted by:   Tatsuki Makino [0]
    PR:             254048 [0], 255527 [1]
    MFH:            2020Q2
---
 devel/llvm12/Makefile | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/devel/llvm12/Makefile b/devel/llvm12/Makefile
index d8f7bddbaa66..7f371832fed3 100644
--- a/devel/llvm12/Makefile
+++ b/devel/llvm12/Makefile
@@ -117,6 +117,8 @@ COMPILER_RT_DESC=	Sanitizer libraries
 # but this seems to work as a workaround...
 COMPILER_RT_BUILD_DEPENDS=	libunwind>0:devel/libunwind
 COMPILER_RT_CMAKE_ON=	-DCOMPILER_RT_INSTALL_PATH=${LLVM_PREFIX}/lib/clang/${LLVM_RELEASE}
+# Allow unwind.h to be found reliably
+COMPILER_RT_USES=	localbase
 COMPILER_RT_PLIST_FILES=${_COMPILER_RT_LIBS:S|^|${_CRTLIBDIR}/|} \
 			${_COMPILER_RT_BLACKLISTS:S|^|${_CRTBLDIR}/|}
 DOCS_BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}sphinx>=0,1:textproc/py-sphinx@${PY_FLAVOR} \
@@ -381,7 +383,6 @@ _COMPILER_RT_LIBS_i386= \
 _COMPILER_RT_BLACKLISTS+=	asan_blacklist.txt
 _COMPILER_RT_BLACKLISTS+=	msan_blacklist.txt
 _COMPILER_RT_LIBS= \
-	${_COMPILER_RT_LIBS_i386} \
 	libclang_rt.asan-preinit-x86_64.a \
 	libclang_rt.asan-x86_64.a \
 	libclang_rt.asan-x86_64.a.syms \
@@ -420,6 +421,9 @@ _COMPILER_RT_LIBS= \
 	libclang_rt.xray-fdr-x86_64.a \
 	libclang_rt.xray-profiling-x86_64.a \
 	libclang_rt.xray-x86_64.a
+.if exists(/usr/lib32/libc.so.7)
+_COMPILER_RT_LIBS+=	${_COMPILER_RT_LIBS_i386}
+.endif
 .endif
 .if ${ARCH} == "i386"
 _COMPILER_RT_BLACKLISTS+=	asan_blacklist.txt


More information about the dev-commits-ports-all mailing list