diff --git a/mk/spdk.common.mk b/mk/spdk.common.mk index 70d3249ed..26690ac9d 100644 --- a/mk/spdk.common.mk +++ b/mk/spdk.common.mk @@ -45,6 +45,10 @@ OS := $(shell uname) COMMON_CFLAGS = -g $(C_OPT) -Wall -Werror -fno-strict-aliasing -march=native -m64 -I$(SPDK_ROOT_DIR)/include +# Enable full RELRO - no lazy relocation (resolve everything at load time). +# This allows the GOT to be made read-only early in the loading process. +LDFLAGS += -Wl,-z,relro,-z,now + ifeq ($(OS),FreeBSD) LIBS += -L/usr/local/lib COMMON_CFLAGS += -I/usr/local/include