mirror of
https://github.com/SCST-project/scst.git
synced 2026-05-14 09:11:27 +00:00
Makefiles: Use KBUILD_EXTRA_SYMBOLS instead of copying Module.symvers
Copying Module.symvers is the oldest supported method for building external kernel modules that depend on another external kernel module. Since support for that method will be removed from Linux kernel v5.5, use KBUILD_EXTRA_SYMBOLS instead to specify the external symbols SCST kernel modules depend on. Support for KBUILD_EXTRA_SYMBOLS was introduced in upstream kernel v2.6.26 so this patch drops support for kernels before v2.6.26. git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8686 d57e44dd-8a1f-0410-8b47-8ef2f437770f
This commit is contained in:
@@ -67,8 +67,9 @@ SCST_DIR := $(shell echo "$$PWD")/../scst/src
|
||||
MODULE_SYMVERS:=$(shell if [ -e "$(KDIR)/Modules.symvers" ]; then \
|
||||
echo Modules.symvers; else echo Module.symvers; fi)
|
||||
|
||||
all: $(MODULE_SYMVERS)
|
||||
$(MAKE) -C $(KDIR) M=$(shell pwd)
|
||||
all:
|
||||
$(MAKE) -C $(KDIR) M=$(shell pwd) \
|
||||
KBUILD_EXTRA_SYMBOLS=$(SCST_DIR)/$(MODULE_SYMVERS)
|
||||
|
||||
install: all
|
||||
KDIR=$(KDIR) ../scripts/sign-modules
|
||||
@@ -80,9 +81,6 @@ ins:
|
||||
./config
|
||||
insmod fcst.ko
|
||||
|
||||
$(MODULE_SYMVERS): $(SCST_DIR)/$(MODULE_SYMVERS)
|
||||
cp $< $@
|
||||
|
||||
uninstall:
|
||||
rm -f $(INSTALL_DIR)/$(MODULE_NAME).ko
|
||||
-/sbin/depmod -b $(INSTALL_MOD_PATH)/ -a $(KVER)
|
||||
|
||||
@@ -51,7 +51,7 @@ MODULE_SYMVERS:=$(shell if [ -e "$(KDIR)/Modules.symvers" ]; then \
|
||||
|
||||
all: progs mods
|
||||
|
||||
ISER_SYMVERS:=$(KMOD)/$(MODULE_SYMVERS)
|
||||
ISER_SYMVERS:=$(SCST_DIR)/$(MODULE_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)
|
||||
@@ -84,7 +84,7 @@ ifeq ($(OFED_FLAVOR),MOFED)
|
||||
-include $(OFED_DIR)/include/linux/compat-2.6.h \
|
||||
-DMOFED_MAJOR=$(shell echo $(OFED_VERS) | cut -f1 -d.)\
|
||||
-DMOFED_MINOR=$(shell echo $(OFED_VERS) | cut -f2 -d.)
|
||||
ISER_SYMVERS:="$(ISER_SYMVERS) $(OFED_DIR)/$(MODULE_SYMVERS)"
|
||||
ISER_SYMVERS:=$(ISER_SYMVERS) $(OFED_DIR)/$(MODULE_SYMVERS)
|
||||
OFED_CONFIG:= CONFIG_DTRACE=
|
||||
else
|
||||
# Whether or not the OFED kernel-ib-devel RPM has been installed.
|
||||
@@ -98,12 +98,12 @@ 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)"
|
||||
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)"
|
||||
ISER_SYMVERS:=$(ISER_SYMVERS) /usr/src/compat-rdma/$(MODULE_SYMVERS)
|
||||
endif
|
||||
endif
|
||||
|
||||
@@ -124,13 +124,14 @@ PRE_CFLAGS = $(shell \
|
||||
|
||||
ISER_CFLAGS = $(OFED_CFLAGS) -DOFED_FLAVOR=$(OFED_FLAVOR) $(PRE_CFLAGS)
|
||||
|
||||
mods: include/iscsi_scst_itf_ver.h $(MODULE_SYMVERS) $(CONFTEST_OUTPUTS)
|
||||
$(MAKE) -C $(KDIR) M=$(KMOD) PRE_CFLAGS="$(PRE_CFLAGS)" modules
|
||||
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)
|
||||
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; \
|
||||
KBUILD_EXTRA_SYMBOLS="$(ISER_SYMVERS)" $(OFED_CONFIG) modules; \
|
||||
fi
|
||||
|
||||
progs: include/iscsi_scst_itf_ver.h
|
||||
@@ -171,10 +172,6 @@ uninstall:
|
||||
$(INSTALL_DIR)/isert-scst.ko
|
||||
-/sbin/depmod -b $(INSTALL_MOD_PATH)/ -a $(KVER)
|
||||
|
||||
$(MODULE_SYMVERS): $(SCST_DIR)/$(MODULE_SYMVERS)
|
||||
cp $< kernel/
|
||||
if $(INFINIBAND_ENABLED); then cp $< kernel/isert-scst; fi
|
||||
|
||||
clean:
|
||||
$(MAKE) -C usr $@
|
||||
$(MAKE) -C $(KDIR) M=$(KMOD) $@
|
||||
|
||||
@@ -84,18 +84,14 @@ INSTALL_DIR := $(INSTALL_MOD_PATH)/lib/modules/$(KVER)/extra
|
||||
|
||||
SCST_DIR := $(shell echo "$$PWD/../../scst/src")
|
||||
|
||||
ifneq ($(BUILD_2X_MODULE),)
|
||||
# We need to make qla2xxx_scst before Module.symvers
|
||||
.NOTPARALLEL:
|
||||
endif
|
||||
|
||||
# The file Modules.symvers has been renamed in the 2.6.18 kernel to
|
||||
# Module.symvers. Find out which name to use by looking in $(KDIR).
|
||||
MODULE_SYMVERS:=$(shell if [ -e "$(KDIR)/Modules.symvers" ]; then \
|
||||
echo Modules.symvers; else echo Module.symvers; fi)
|
||||
|
||||
all: $(QLA2XXX_SCST) $(MODULE_SYMVERS)
|
||||
$(MAKE) -C $(KDIR) M=$(shell pwd)
|
||||
all: $(QLA2XXX_SCST)
|
||||
$(MAKE) -C $(KDIR) M=$(shell pwd) \
|
||||
KBUILD_EXTRA_SYMBOLS="$(SCST_DIR)/$(MODULE_SYMVERS) $(QLA2XXX_DIR)/$(MODULE_SYMVERS)"
|
||||
|
||||
install: all
|
||||
ifneq ($(BUILD_2X_MODULE),)
|
||||
@@ -119,12 +115,6 @@ qla2xxx_scst:
|
||||
M=$(QLA2XXX_DIR) -C $(QLA2XXX_DIR) all
|
||||
endif
|
||||
|
||||
$(MODULE_SYMVERS): $(SCST_DIR)/$(MODULE_SYMVERS)
|
||||
cp $< .
|
||||
ifneq ($(BUILD_2X_MODULE),)
|
||||
cat $(QLA2XXX_DIR)/$(MODULE_SYMVERS) >>$(MODULE_SYMVERS)
|
||||
endif
|
||||
|
||||
########## END OUT-OF-TREE RULES ##########
|
||||
endif
|
||||
|
||||
|
||||
@@ -83,18 +83,14 @@ INSTALL_DIR := $(INSTALL_MOD_PATH)/lib/modules/$(KVER)/extra
|
||||
|
||||
SCST_DIR := $(shell echo "$$PWD/../../scst/src")
|
||||
|
||||
ifneq ($(BUILD_2X_MODULE),)
|
||||
# We need to make qla2xxx_scst before Module.symvers
|
||||
.NOTPARALLEL:
|
||||
endif
|
||||
|
||||
# The file Modules.symvers has been renamed in the 2.6.18 kernel to
|
||||
# Module.symvers. Find out which name to use by looking in $(KDIR).
|
||||
MODULE_SYMVERS:=$(shell if [ -e "$(KDIR)/Modules.symvers" ]; then \
|
||||
echo Modules.symvers; else echo Module.symvers; fi)
|
||||
|
||||
all: $(QLA2XXX_SCST) $(MODULE_SYMVERS)
|
||||
$(MAKE) -C $(KDIR) M=$(shell pwd)
|
||||
all: $(QLA2XXX_SCST)
|
||||
$(MAKE) -C $(KDIR) M=$(shell pwd) \
|
||||
KBUILD_EXTRA_SYMBOLS="$(SCST_DIR)/$(MODULE_SYMVERS) $(QLA2XXX_DIR)/$(MODULE_SYMVERS)"
|
||||
|
||||
install: all
|
||||
ifneq ($(BUILD_2X_MODULE),)
|
||||
@@ -115,13 +111,8 @@ 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
|
||||
endif
|
||||
|
||||
$(MODULE_SYMVERS): $(SCST_DIR)/$(MODULE_SYMVERS)
|
||||
cp $< .
|
||||
ifneq ($(BUILD_2X_MODULE),)
|
||||
cat $(QLA2XXX_DIR)/$(MODULE_SYMVERS) >>$(MODULE_SYMVERS)
|
||||
M=$(QLA2XXX_DIR) -C $(QLA2XXX_DIR) all \
|
||||
KBUILD_EXTRA_SYMBOLS=$(QLA2XXX_DIR)/$(MODULE_SYMVERS)
|
||||
endif
|
||||
|
||||
########## END OUT-OF-TREE RULES ##########
|
||||
|
||||
@@ -115,7 +115,8 @@ $(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
|
||||
$(MAKE) -C $(KDIR) M=$(shell pwd) BUILD_DEV=m \
|
||||
KBUILD_EXTRA_SYMBOLS=$(SCST_DIR)/$(MODULE_SYMVERS)
|
||||
|
||||
scst:
|
||||
$(MAKE) -C $(KDIR) M=$(shell pwd) BUILD_DEV=n
|
||||
|
||||
@@ -47,8 +47,9 @@ SCST_DIR := $(shell echo "$$PWD")/../scst/src
|
||||
MODULE_SYMVERS:=$(shell if [ -e "$(KDIR)/Modules.symvers" ]; then \
|
||||
echo Modules.symvers; else echo Module.symvers; fi)
|
||||
|
||||
all: $(MODULE_SYMVERS)
|
||||
$(MAKE) -C $(KDIR) M=$(shell pwd)
|
||||
all:
|
||||
$(MAKE) -C $(KDIR) M=$(shell pwd) \
|
||||
KBUILD_EXTRA_SYMBOLS=$(SCST_DIR)/$(MODULE_SYMVERS)
|
||||
|
||||
install: all
|
||||
KDIR=$(KDIR) ../scripts/sign-modules
|
||||
@@ -56,9 +57,6 @@ install: all
|
||||
$$([ -n "$(DEPMOD)" ] && echo "DEPMOD=$(DEPMOD)") \
|
||||
CONFIG_MODULE_SIG_ALL= modules_install
|
||||
|
||||
$(MODULE_SYMVERS): $(SCST_DIR)/$(MODULE_SYMVERS)
|
||||
cp $< $@
|
||||
|
||||
uninstall:
|
||||
rm -f $(INSTALL_DIR)/scst_local.ko
|
||||
-/sbin/depmod -b $(INSTALL_MOD_PATH)/ -a $(KVER)
|
||||
|
||||
@@ -97,12 +97,10 @@ PRE_CFLAGS = $(OFED_CFLAGS) \
|
||||
cat $$t/result-$(KVER).txt 2>/dev/null; \
|
||||
done)
|
||||
|
||||
all: check src/$(MODULE_SYMVERS) $(CONFTEST_OUTPUTS)
|
||||
$(MAKE) -C $(KDIR) M=$(shell pwd)/src PRE_CFLAGS="$(PRE_CFLAGS)" $(OFED_CONFIG) modules
|
||||
|
||||
src/$(MODULE_SYMVERS): $(SCST_DIR)/$(MODULE_SYMVERS) $(OFED_MODULE_SYMVERS)
|
||||
cat $^ | \
|
||||
awk '{sym[$$2]=$$0} END {for (s in sym){print sym[s]}}' >"$@"
|
||||
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)"
|
||||
|
||||
install: all
|
||||
@[ -z "$(DESTDIR)$(INSTALL_MOD_PATH)" ] && \
|
||||
|
||||
Reference in New Issue
Block a user