git: 2eefc1d92643 - main - Fix building rescue/rescue when sanitizers are enabled

Alex Richardson arichardson at FreeBSD.org
Tue Jul 6 13:29:29 UTC 2021


The branch main has been updated by arichardson:

URL: https://cgit.FreeBSD.org/src/commit/?id=2eefc1d926430dbba83128d27f8bed3c34199159

commit 2eefc1d926430dbba83128d27f8bed3c34199159
Author:     Alex Richardson <arichardson at FreeBSD.org>
AuthorDate: 2021-07-06 11:18:29 +0000
Commit:     Alex Richardson <arichardson at FreeBSD.org>
CommitDate: 2021-07-06 11:18:30 +0000

    Fix building rescue/rescue when sanitizers are enabled
    
    We have to ensure that we don't link any instrumented object files
    into rescue as it is a static executable and static binaries can't
    use the sanitizer runtime.
    
    Reviewed By:    imp
    Differential Revision: https://reviews.freebsd.org/D31044
---
 rescue/rescue/Makefile | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/rescue/rescue/Makefile b/rescue/rescue/Makefile
index 7352828a822c..f2aa614f1dfc 100644
--- a/rescue/rescue/Makefile
+++ b/rescue/rescue/Makefile
@@ -6,7 +6,12 @@
 PACKAGE=rescue
 MAN=
 MK_SSP=	no
+# Static-PIE is not supported so we should not be linking against _pie.a libs.
+# This is also needed to avoid linking against sanitizer-instrumented libraries
+# since MK_ASAN/MK_UBSAN will instrument the .pieo object files.
+MK_PIE=	no
 NO_SHARED=	yes
+CRUNCH_BUILDOPTS+=	MK_PIE=no NO_SHARED=yes
 
 PROG=	rescue
 BINDIR?=/rescue


More information about the dev-commits-src-main mailing list