From 469884765efe2df126f6242ed1b4c77df412a655 Mon Sep 17 00:00:00 2001 From: John Baldwin Date: Mon, 9 Dec 2019 18:58:14 +0000 Subject: MFH: r518116 Use clang 7 as compiler on 11.x and 12.x to fix build. clang 8 and later error for duplicate definitions of enum values. mdb depends on having identical but duplicate definitions. This was fixed differently in 13 with a change to the kernel, but that change is disruptive and cannot be easily backported. Reported by: pkg-fallout, Attila Nagy Approved by: bdrewery Differential Revision: https://reviews.freebsd.org/D22486 Approved by: ports-secteam (joneum) --- devel/mdb/Makefile | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/devel/mdb/Makefile b/devel/mdb/Makefile index 1e5968658d48..bc73a80b5fa2 100644 --- a/devel/mdb/Makefile +++ b/devel/mdb/Makefile @@ -9,7 +9,7 @@ COMMENT= Solaris Modular Debugger LICENSE= CDDL -USES= uidfix +USES= compiler uidfix USE_GITHUB= yes GH_ACCOUNT= bsdjhb @@ -31,6 +31,15 @@ CFLAGS+= -DMDB_PREFIX=\\\"${PREFIX}\\\" -g IGNORE= requires full source tree with CDDL sources .endif +.if ${OSVERSION} < 1300015 && ${COMPILER_TYPE} == "clang" && \ + ${COMPILER_VERSION} >= 80 +# clang 8 cannot compile due to enum redefinitions in kernel.h +BUILD_DEPENDS+= ${LOCALBASE}/bin/clang70:devel/llvm70 +CPP= ${LOCALBASE}/bin/clang-cpp70 +CC= ${LOCALBASE}/bin/clang70 +CXX= ${LOCALBASE}/bin/clang++70 +.endif + pre-install: ${MKDIR} ${STAGEDIR}${PREFIX}/lib/mdb/kvm/${MACHINE_ARCH} -- cgit v1.2.3