diff --git a/share/mk/bsd.sys.mk b/share/mk/bsd.sys.mk --- a/share/mk/bsd.sys.mk +++ b/share/mk/bsd.sys.mk @@ -368,8 +368,9 @@ .if ${LD} != "ld" && (${CC:[1]:H} != ${LD:[1]:H} || ${LD:[1]:T} != "ld") # Add -fuse-ld=${LD} if $LD is in a different directory or not called "ld". .if ${COMPILER_TYPE} == "clang" -# Note: Clang does not like relative paths for ld so we map ld.lld -> lld. -.if ${COMPILER_VERSION} >= 120000 +# Note: old Clang does not like relative paths for ld so we map ld.lld -> lld. +.if ${COMPILER_VERSION} >= 190000 +.elif ${COMPILER_VERSION} >= 120000 LDFLAGS+= --ld-path=${LD:[1]:S/^ld.//1W} .else LDFLAGS+= -fuse-ld=${LD:[1]:S/^ld.//1W} diff --git a/sys/conf/kern.mk b/sys/conf/kern.mk --- a/sys/conf/kern.mk +++ b/sys/conf/kern.mk @@ -383,8 +383,9 @@ .if ${LD} != "ld" && (${CC:[1]:H} != ${LD:[1]:H} || ${LD:[1]:T} != "ld") # Add -fuse-ld=${LD} if $LD is in a different directory or not called "ld". .if ${COMPILER_TYPE} == "clang" -# Note: Clang does not like relative paths for ld so we map ld.lld -> lld. -.if ${COMPILER_VERSION} >= 120000 +# Note: old Clang does not like relative paths for ld so we map ld.lld -> lld. +.if ${COMPILER_VERSION} >= 190000 +.elif ${COMPILER_VERSION} >= 120000 CCLDFLAGS+= --ld-path=${LD:[1]:S/^ld.//1W} .else CCLDFLAGS+= -fuse-ld=${LD:[1]:S/^ld.//1W}