From 9be61ba538f6724484c61d27af20500994c69372 Mon Sep 17 00:00:00 2001 From: Bart Van Assche Date: Mon, 1 Jun 2020 02:15:47 +0000 Subject: [PATCH] Move KBUILD_EXTRA_SYMBOLS definitions into the kernel Makefiles $(KBUILD_EXTRA_SYMBOLS) is not only used at compile time but also at link time. Move the $(KBUILD_EXTRA_SYMBOLS) definitions such that it is available both at compile time and at link time. git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9000 d57e44dd-8a1f-0410-8b47-8ef2f437770f --- fcst/Makefile | 3 +-- fcst/Makefile_in-tree | 1 + iscsi-scst/Makefile | 9 ++------- iscsi-scst/kernel/Makefile | 2 ++ iscsi-scst/kernel/isert-scst/Makefile | 3 +++ qla2x00t-32gbit/qla2x00-target/Makefile | 6 ++++-- qla2x00t/Makefile | 2 ++ qla2x00t/qla2x00-target/Makefile | 9 +++++---- scst/src/Makefile | 3 +-- scst/src/dev_handlers/Makefile | 3 ++- scst_local/Makefile | 4 ++-- srpt/Makefile | 3 +-- srpt/src/Makefile | 3 +++ 13 files changed, 29 insertions(+), 22 deletions(-) diff --git a/fcst/Makefile b/fcst/Makefile index 438e14e26..ae40f0b92 100644 --- a/fcst/Makefile +++ b/fcst/Makefile @@ -63,8 +63,7 @@ INSTALL_DIR := $(INSTALL_MOD_PATH)/lib/modules/$(KVER)/extra SCST_DIR := $(shell echo "$$PWD")/../scst/src all: - $(MAKE) -C $(KDIR) M=$(shell pwd) \ - KBUILD_EXTRA_SYMBOLS=$(SCST_DIR)/Module.symvers + $(MAKE) -C $(KDIR) M=$(shell pwd) install: all KDIR=$(KDIR) ../scripts/sign-modules diff --git a/fcst/Makefile_in-tree b/fcst/Makefile_in-tree index 7b409947f..1954f60a5 100644 --- a/fcst/Makefile_in-tree +++ b/fcst/Makefile_in-tree @@ -1,3 +1,4 @@ +KBUILD_EXTRA_SYMBOLS=$(src)/../scst/src/Module.symvers ccflags-y += -I$(src)/../scst/include obj-$(CONFIG_FCST) += fcst.o diff --git a/iscsi-scst/Makefile b/iscsi-scst/Makefile index af2ce46d5..6e992e603 100644 --- a/iscsi-scst/Makefile +++ b/iscsi-scst/Makefile @@ -46,7 +46,6 @@ INFINIBAND_ENABLED = $(shell syms=$$(dirname "$(KDIR)")/modules.symbols; if [ -e all: progs mods -ISER_SYMVERS:=$(KMOD)/Module.symvers OFED_CFLAGS:= OFED_FLAVOR=$(shell if [ -e /usr/bin/ofed_info ]; then /usr/bin/ofed_info 2>/dev/null | head -n1 | sed -n 's/^\(MLNX_OFED\|OFED-internal\).*/MOFED/p;s/^OFED-.*/OFED/p'; else echo in-tree; fi) @@ -80,7 +79,6 @@ ifeq ($(OFED_FLAVOR),MOFED) -DMOFED_MAJOR=$(shell echo $(OFED_VERS) | cut -f1 -d.)\ -DMOFED_MINOR=$(shell echo $(OFED_VERS) | cut -f2 -d.) OFED_MODULE_SYMVERS:=$(OFED_DIR)/Module.symvers - ISER_SYMVERS:=$(ISER_SYMVERS) $(OFED_MODULE_SYMVERS) OFED_CONFIG:= CONFIG_DTRACE= else # Whether or not the OFED kernel-ib-devel RPM has been installed. @@ -94,12 +92,10 @@ else # BACKPORT_INCLUDES. include /usr/src/ofa_kernel/config.mk OFED_CFLAGS:=$(shell echo $(BACKPORT_INCLUDES) -I/usr/src/ofa_kernel/include) - ISER_SYMVERS:=$(ISER_SYMVERS) /usr/src/ofa_kernel/Module.symvers endif ifeq ($(OFED_COMPAT_RDMA_DEVEL_RPM_INSTALLED),true) OFED_CFLAGS:=-I/usr/src/compat-rdma/include -include /usr/src/compat-rdma/include/linux/compat-2.6.h - ISER_SYMVERS:=$(ISER_SYMVERS) /usr/src/compat-rdma/Module.symvers endif endif @@ -121,13 +117,12 @@ PRE_CFLAGS = $(shell \ ISER_CFLAGS = $(OFED_CFLAGS) -DOFED_FLAVOR=$(OFED_FLAVOR) $(PRE_CFLAGS) mods: include/iscsi_scst_itf_ver.h $(CONFTEST_OUTPUTS) - $(MAKE) -C $(KDIR) M=$(KMOD) PRE_CFLAGS="$(PRE_CFLAGS)" modules \ - KBUILD_EXTRA_SYMBOLS=$(SCST_DIR)/Module.symvers + $(MAKE) -C $(KDIR) M=$(KMOD) PRE_CFLAGS="$(PRE_CFLAGS)" modules echo "$@: INFINIBAND_ENABLED = $(INFINIBAND_ENABLED)" if $(INFINIBAND_ENABLED); then \ echo " Building against $(OFED_FLAVOR) InfiniBand kernel headers."; \ $(MAKE) -C $(KDIR) M=$(ISERTMOD) PRE_CFLAGS="$(ISER_CFLAGS)" \ - KBUILD_EXTRA_SYMBOLS="$(ISER_SYMVERS)" $(OFED_CONFIG) modules; \ + $(OFED_CONFIG) modules; \ fi progs: include/iscsi_scst_itf_ver.h diff --git a/iscsi-scst/kernel/Makefile b/iscsi-scst/kernel/Makefile index bac58cd8b..2a8c90278 100644 --- a/iscsi-scst/kernel/Makefile +++ b/iscsi-scst/kernel/Makefile @@ -20,6 +20,8 @@ # # Note 2! The CFLAGS definitions are now in the main makefile. +KBUILD_EXTRA_SYMBOLS = $(src)/../../scst/src/Module.symvers + ccflags-y += -I$(src)/../include -I$(src)/../../scst/include ccflags-y += $(call cc-option,-Wextra) \ $(call cc-option,-Wno-old-style-declaration) \ diff --git a/iscsi-scst/kernel/isert-scst/Makefile b/iscsi-scst/kernel/isert-scst/Makefile index fd82fcd5c..d7fb7f081 100644 --- a/iscsi-scst/kernel/isert-scst/Makefile +++ b/iscsi-scst/kernel/isert-scst/Makefile @@ -21,6 +21,9 @@ # Note 2! The CFLAGS definitions are now in the main makefile. LINUXINCLUDE := $(PRE_CFLAGS) $(LINUXINCLUDE) +KBUILD_EXTRA_SYMBOLS=$(src)/../../kernel/Module.symvers \ + $(shell for d in /usr/src/ofa_kernel/default/Module.symvers; do\ + [ -e $$d ] || continue; echo $$d; break; done) ccflags-y += -I$(src)/../../include -I$(src)/../../../scst/include ccflags-y += $(call cc-option,-Wextra) \ $(call cc-option,-Wno-old-style-declaration) \ diff --git a/qla2x00t-32gbit/qla2x00-target/Makefile b/qla2x00t-32gbit/qla2x00-target/Makefile index b8c7bb212..d45cfd5f2 100644 --- a/qla2x00t-32gbit/qla2x00-target/Makefile +++ b/qla2x00t-32gbit/qla2x00-target/Makefile @@ -60,6 +60,9 @@ QLA2XXX_SCST := qla2xxx_scst endif ifneq ($(PATCHLEVEL),) + +KBUILD_EXTRA_SYMBOLS = $(src)/../../scst/src/Module.symvers \ + $(src)/../Module.symvers ccflags-y += -I$(src)/../../scst/include ccflags-y += -W -Wno-unused-parameter -Wno-missing-field-initializers #ccflags-y += -DCONFIG_QLA_TGT_DEBUG_WORK_IN_THREAD @@ -85,8 +88,7 @@ INSTALL_DIR := $(INSTALL_MOD_PATH)/lib/modules/$(KVER)/extra SCST_DIR := $(shell echo "$$PWD/../../scst/src") all: $(QLA2XXX_SCST) - $(MAKE) -C $(KDIR) M=$(shell pwd) \ - KBUILD_EXTRA_SYMBOLS="$(SCST_DIR)/Module.symvers $(QLA2XXX_DIR)/Module.symvers" + $(MAKE) -C $(KDIR) M=$(shell pwd) install: all ifneq ($(BUILD_2X_MODULE),) diff --git a/qla2x00t/Makefile b/qla2x00t/Makefile index dc4be03c2..e51634e77 100644 --- a/qla2x00t/Makefile +++ b/qla2x00t/Makefile @@ -1,5 +1,7 @@ ifeq ($(BUILD_2X_MODULE),) +KBUILD_EXTRA_SYMBOLS=$(src)/../scst/Module.symvers + qla2xxx-y := qla_os.o qla_init.o qla_mbx.o qla_iocb.o qla_isr.o qla_gs.o \ qla_dbg.o qla_sup.o qla_attr.o qla_mid.o qla_dfs.o qla_bsg.o qla_nx.o diff --git a/qla2x00t/qla2x00-target/Makefile b/qla2x00t/qla2x00-target/Makefile index 1facebac4..644d89b94 100644 --- a/qla2x00t/qla2x00-target/Makefile +++ b/qla2x00t/qla2x00-target/Makefile @@ -59,6 +59,9 @@ QLA2XXX_SCST := qla2xxx_scst endif ifneq ($(PATCHLEVEL),) + +KBUILD_EXTRA_SYMBOLS = $(src)/../../scst/src/Module.symvers \ + $(src)/../Module.symvers ccflags-y += -I$(src)/../../scst/include ccflags-y += -W -Wno-unused-parameter -Wno-missing-field-initializers #ccflags-y += -DCONFIG_QLA_TGT_DEBUG_WORK_IN_THREAD @@ -84,8 +87,7 @@ INSTALL_DIR := $(INSTALL_MOD_PATH)/lib/modules/$(KVER)/extra SCST_DIR := $(shell echo "$$PWD/../../scst/src") all: $(QLA2XXX_SCST) - $(MAKE) -C $(KDIR) M=$(shell pwd) \ - KBUILD_EXTRA_SYMBOLS="$(SCST_DIR)/Module.symvers $(QLA2XXX_DIR)/Module.symvers" + $(MAKE) -C $(KDIR) M=$(shell pwd) install: all ifneq ($(BUILD_2X_MODULE),) @@ -106,8 +108,7 @@ endif ifneq ($(BUILD_2X_MODULE),) qla2xxx_scst: $(MAKE) BUILD_2X_MODULE=$(BUILD_2X_MODULE) CONFIG_SCSI_QLA2XXX_TARGET=y \ - M=$(QLA2XXX_DIR) -C $(QLA2XXX_DIR) all \ - KBUILD_EXTRA_SYMBOLS=$(QLA2XXX_DIR)/Module.symvers + M=$(QLA2XXX_DIR) -C $(QLA2XXX_DIR) all endif ########## END OUT-OF-TREE RULES ########## diff --git a/scst/src/Makefile b/scst/src/Makefile index 86e7e5739..dafc5cb3c 100644 --- a/scst/src/Makefile +++ b/scst/src/Makefile @@ -115,8 +115,7 @@ $(SCST_INTF_VER_FILE): $(SCST_INC_DIR)/scst.h $(SCST_INC_DIR)/scst_const.h $(SCS all: $(SCST_INTF_VER_FILE) $(MAKE) -C certs KDIR=$(KDIR) - $(MAKE) -C $(KDIR) M=$(shell pwd) BUILD_DEV=m \ - KBUILD_EXTRA_SYMBOLS=$(SCST_DIR)/Module.symvers + $(MAKE) -C $(KDIR) M=$(shell pwd) BUILD_DEV=m scst: $(MAKE) -C $(KDIR) M=$(shell pwd) BUILD_DEV=n diff --git a/scst/src/dev_handlers/Makefile b/scst/src/dev_handlers/Makefile index 034a2ccb2..157aaacd2 100644 --- a/scst/src/dev_handlers/Makefile +++ b/scst/src/dev_handlers/Makefile @@ -30,7 +30,8 @@ SHELL=/bin/bash ifneq ($(PATCHLEVEL),) -ccflags-y += -I$(KBUILD_EXTMOD)/../include \ +KBUILD_EXTRA_SYMBOLS=$(src)/../../Module.symvers +ccflags-y += -I$(src)/../../include \ $(call cc-option,-Wextra) \ -Wno-unused-parameter -Wno-missing-field-initializers -Wno-sign-compare #ccflags-y += -DCONFIG_DEBUG_EXT_COPY_REMAP diff --git a/scst_local/Makefile b/scst_local/Makefile index 9d54ab5f2..32207ac30 100644 --- a/scst_local/Makefile +++ b/scst_local/Makefile @@ -7,6 +7,7 @@ SHELL=/bin/bash KMOD := $(shell pwd)/kernel ifneq ($(PATCHLEVEL),) +KBUILD_EXTRA_SYMBOLS=$(src)/../scst/src/Module.symvers ccflags-y += -I$(src)/../scst/include ccflags-y += $(call cc-option,-Wextra) -Wno-unused-parameter\ -Wno-missing-field-initializers @@ -43,8 +44,7 @@ INSTALL_DIR := $(INSTALL_MOD_PATH)/lib/modules/$(KVER)/extra SCST_DIR := $(shell echo "$$PWD")/../scst/src all: - $(MAKE) -C $(KDIR) M=$(shell pwd) \ - KBUILD_EXTRA_SYMBOLS=$(SCST_DIR)/Module.symvers + $(MAKE) -C $(KDIR) M=$(shell pwd) install: all KDIR=$(KDIR) ../scripts/sign-modules diff --git a/srpt/Makefile b/srpt/Makefile index 499b4212a..67354b571 100644 --- a/srpt/Makefile +++ b/srpt/Makefile @@ -94,8 +94,7 @@ PRE_CFLAGS = $(OFED_CFLAGS) \ all: check $(CONFTEST_OUTPUTS) $(MAKE) -C $(KDIR) M=$(shell pwd)/src PRE_CFLAGS="$(PRE_CFLAGS)"\ - $(OFED_CONFIG) modules\ - KBUILD_EXTRA_SYMBOLS="$(SCST_DIR)/Module.symvers $(OFED_MODULE_SYMVERS)" + $(OFED_CONFIG) modules install: all @[ -z "$(DESTDIR)$(INSTALL_MOD_PATH)" ] && \ diff --git a/srpt/src/Makefile b/srpt/src/Makefile index c38767d9f..e5415bbbe 100644 --- a/srpt/src/Makefile +++ b/srpt/src/Makefile @@ -1,5 +1,8 @@ LINUXINCLUDE := $(PRE_CFLAGS) $(LINUXINCLUDE) CPPFLAGS := $(PRE_CFLAGS) $(CPPFLAGS) +KBUILD_EXTRA_SYMBOLS=$(src)/../../scst/src/Module.symvers \ + $(shell for d in /usr/src/ofa_kernel/default/Module.symvers; do\ + [ -e $$d ] || continue; echo $$d; break; done) ccflags-y += -I$(src)/../../scst/include #ccflags-y += -Wextra -Wno-unused-parameter