From 458f4722bf974c7fa7961952fcaee146f5a97708 Mon Sep 17 00:00:00 2001 From: Dimitry Andric Date: Mon, 17 Apr 2023 18:25:30 +0200 Subject: [PATCH] Suppress lld 16 errors about multiply defined symbols in rescue lld >= 16 became more strict about multiply defined symbols. Since there are many of those in crunchgen'd programs, turn off the check when linking the rescue binary. MFC after: 1 week --- rescue/rescue/Makefile | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/rescue/rescue/Makefile b/rescue/rescue/Makefile index 2360bf83b781..1f4db1d06b15 100644 --- a/rescue/rescue/Makefile +++ b/rescue/rescue/Makefile @@ -13,6 +13,12 @@ MK_PIE= no NO_SHARED= yes CRUNCH_BUILDOPTS+= MK_PIE=no NO_SHARED=yes +# lld >= 16 became more strict about multiply defined symbols. Since there are +# many of those in crunchgen'd programs, turn off the check. +.if ${LINKER_TYPE} == "lld" && ${LINKER_VERSION} >= 160000 +LDFLAGS+= -Wl,--allow-multiple-definition +.endif + PROG= rescue BINDIR?=/rescue