aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Baldwin <jhb@FreeBSD.org>2023-07-01 19:23:00 +0000
committerJohn Baldwin <jhb@FreeBSD.org>2023-07-01 19:23:00 +0000
commitda3096a92d2c1c06b25613444d9b369475d50321 (patch)
treeb3753b923cf449003dee3b21ef9a884cadb7a4cc
parentcc4f247fb9468bbece5286557ab2d6810704aaf3 (diff)
downloadsrc-da3096a92d2c1c06b25613444d9b369475d50321.tar.gz
src-da3096a92d2c1c06b25613444d9b369475d50321.zip
rdrand_rng: Build with -fPIC on i386 when using GCC.
ld.bfd requires an R_386_PLT32 relocation for calls to ifuncs rather than R_386_PC32. (lld permits R_386_PC32.) Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D40811
-rw-r--r--sys/modules/rdrand_rng/Makefile5
1 files changed, 5 insertions, 0 deletions
diff --git a/sys/modules/rdrand_rng/Makefile b/sys/modules/rdrand_rng/Makefile
index 7f14c080a260..3fdecd64f78f 100644
--- a/sys/modules/rdrand_rng/Makefile
+++ b/sys/modules/rdrand_rng/Makefile
@@ -8,4 +8,9 @@ SRCS+= bus_if.h device_if.h
CFLAGS+= -I${SRCTOP}/sys
+# ld.bfd doesn't support ifuncs invoked non-PIC
+.if ${MACHINE_CPUARCH} == "i386"
+CFLAGS.gcc= -fPIC
+.endif
+
.include <bsd.kmod.mk>