Make it possible to build SCST with clang

git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9089 d57e44dd-8a1f-0410-8b47-8ef2f437770f
This commit is contained in:
Bart Van Assche
2020-08-02 21:19:24 +00:00
parent 454c3fb81f
commit ecea60a694
11 changed files with 72 additions and 29 deletions

View File

@@ -60,11 +60,13 @@ INSTALL_DIR := $(INSTALL_MOD_PATH)/lib/modules/$(KVER)/extra
SCST_DIR := $(shell echo "$$PWD")/../scst/src
all:
$(MAKE) -C $(KDIR) M=$(shell pwd)
$(MAKE) -C $(KDIR) M=$(shell pwd) \
$(shell [ -n "$(CC)" ] && echo CC="$(CC)")
install: all
KDIR=$(KDIR) ../scripts/sign-modules
$(MAKE) -C $(KDIR) M=$(shell pwd) \
$(shell [ -n "$(CC)" ] && echo CC="$(CC)") \
$$([ -n "$(DEPMOD)" ] && echo "DEPMOD=$(DEPMOD)") \
CONFIG_MODULE_SIG_ALL= modules_install

View File

@@ -110,7 +110,12 @@ run_conftest = $(shell \
else \
output=conftest/$1/build-output-$(KVER).txt; \
fi; \
if MAKEFLAGS= make -C $(KDIR) V=$(V) M="$(shell pwd)/conftest/$1" CONFTEST_CFLAGS="-Werror $(OFED_CFLAGS)" $(OFED_CONFIG) KBUILD_EXTRA_SYMBOLS="$(OFED_MODULE_SYMVERS)" 1>&2 2>$${output}; then \
if MAKEFLAGS= make -C $(KDIR) V=$(V) \
$(shell [ -n "$(CC)" ] && echo CC="$(CC)") \
M="$(shell pwd)/conftest/$1" \
CONFTEST_CFLAGS="-Werror $(OFED_CFLAGS)" $(OFED_CONFIG) \
KBUILD_EXTRA_SYMBOLS="$(OFED_MODULE_SYMVERS)" \
1>&2 2>$${output}; then \
echo "$(strip $2)"; \
else \
echo "$(strip $3)"; \
@@ -132,11 +137,13 @@ ISER_CFLAGS = $(OFED_CFLAGS) -DOFED_FLAVOR=$(OFED_FLAVOR) $(CONFTEST_CFLAGS)
mods: include/iscsi_scst_itf_ver.h $(CONFTEST_OUTPUTS)
$(MAKE) -C $(KDIR) M=$(KMOD) CONFTEST_CFLAGS="$(CONFTEST_CFLAGS)"\
$(shell [ -n "$(CC)" ] && echo CC="$(CC)") \
modules
echo "$@: INFINIBAND_ENABLED = $(INFINIBAND_ENABLED)"
if $(INFINIBAND_ENABLED); then \
echo " Building against $(OFED_FLAVOR) RDMA kernel headers.";\
$(MAKE) -C $(KDIR) M=$(ISERTMOD) ISER_CFLAGS="$(ISER_CFLAGS)" \
$(shell [ -n "$(CC)" ] && echo CC="$(CC)") \
$(OFED_CONFIG) modules; \
fi
@@ -158,12 +165,14 @@ install: all
@install -vD -m 644 doc/manpages/iscsi-scst-adm.8 $(DESTDIR)$(MANDIR)/man8/iscsi-scst-adm.8
(cd $(KMOD) && KDIR=$(KDIR) ../../scripts/sign-modules)
$(MAKE) -C $(KDIR) M=$(KMOD) \
$(shell [ -n "$(CC)" ] && echo CC="$(CC)") \
$$([ -n "$(DEPMOD)" ] && echo "DEPMOD=$(DEPMOD)") \
CONFIG_MODULE_SIG_ALL= modules_install
echo "$@: INFINIBAND_ENABLED = $(INFINIBAND_ENABLED)"
if $(INFINIBAND_ENABLED); then \
(cd $(ISERTMOD) && KDIR=$(KDIR) ../../../scripts/sign-modules);\
$(MAKE) -C $(KDIR) M=$(ISERTMOD) \
$(shell [ -n "$(CC)" ] && echo CC="$(CC)") \
$$([ -n "$(DEPMOD)" ] && echo "DEPMOD=$(DEPMOD)") \
CONFIG_MODULE_SIG_ALL= modules_install; \
fi

View File

@@ -15,9 +15,13 @@
# GNU General Public License for more details.
LINUXINCLUDE := $(ISER_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)
ifdef CONFIG_CC_IS_CLANG
KBUILD_EXTRA_SYMBOLS+=$(src)/../../../scst/src/Module.symvers
endif
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)/../../../scst/include
ccflags-y += -I$(src)/../../include

View File

@@ -48,13 +48,15 @@ INSTALL_DIR := $(INSTALL_MOD_PATH)/lib/modules/$(KVER)/extra
all:
$(MAKE) -C $(KDIR) M=$(shell pwd) \
$(CONFIG_SCSI_QLA2XXX_TARGET)=CONFIG_SCSI_QLA2XXX_TARGET
$(shell [ -n "$(CC)" ] && echo CC="$(CC)") \
$(CONFIG_SCSI_QLA2XXX_TARGET)=CONFIG_SCSI_QLA2XXX_TARGET
install: all
KDIR=$(KDIR) ../scripts/sign-modules
$(MAKE) -C $(KDIR) M=$(shell pwd) \
$$([ -n "$(DEPMOD)" ] && echo "DEPMOD=$(DEPMOD)") \
CONFIG_MODULE_SIG_ALL= modules_install
$(shell [ -n "$(CC)" ] && echo CC="$(CC)") \
$$([ -n "$(DEPMOD)" ] && echo "DEPMOD=$(DEPMOD)") \
CONFIG_MODULE_SIG_ALL= modules_install
uninstall:
rm -f $(INSTALL_DIR)/qla2xxx_scst.ko

View File

@@ -67,7 +67,8 @@ 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)
$(MAKE) -C $(KDIR) M=$(shell pwd) \
$(shell [ -n "$(CC)" ] && echo CC="$(CC)")
install: all
ifneq ($(BUILD_2X_MODULE),)
@@ -75,6 +76,7 @@ ifneq ($(BUILD_2X_MODULE),)
endif
KDIR=$(KDIR) ../../scripts/sign-modules
$(MAKE) -C $(KDIR) M=$(shell pwd) \
$(shell [ -n "$(CC)" ] && echo CC="$(CC)") \
$$([ -n "$(DEPMOD)" ] && echo "DEPMOD=$(DEPMOD)") \
CONFIG_MODULE_SIG_ALL= modules_install

View File

@@ -47,13 +47,15 @@ INSTALL_DIR := $(INSTALL_MOD_PATH)/lib/modules/$(KVER)/extra
all:
$(MAKE) -C $(KDIR) M=$(shell pwd) \
$(CONFIG_SCSI_QLA2XXX_TARGET)=CONFIG_SCSI_QLA2XXX_TARGET
$(shell [ -n "$(CC)" ] && echo CC="$(CC)") \
$(CONFIG_SCSI_QLA2XXX_TARGET)=CONFIG_SCSI_QLA2XXX_TARGET
install: all
KDIR=$(KDIR) ../scripts/sign-modules
$(MAKE) -C $(KDIR) M=$(shell pwd) BUILD_INI=m \
$$([ -n "$(DEPMOD)" ] && echo "DEPMOD=$(DEPMOD)") \
CONFIG_MODULE_SIG_ALL= modules_install
$(shell [ -n "$(CC)" ] && echo CC="$(CC)") \
$$([ -n "$(DEPMOD)" ] && echo "DEPMOD=$(DEPMOD)") \
CONFIG_MODULE_SIG_ALL= modules_install
uninstall:
rm -f $(INSTALL_DIR)/qla2xxx_scst.ko

View File

@@ -66,7 +66,8 @@ 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)
$(MAKE) -C $(KDIR) M=$(shell pwd) \
$(shell [ -n "$(CC)" ] && echo CC="$(CC)")
install: all
ifneq ($(BUILD_2X_MODULE),)
@@ -74,6 +75,7 @@ ifneq ($(BUILD_2X_MODULE),)
endif
KDIR=$(KDIR) ../../scripts/sign-modules
$(MAKE) -C $(KDIR) M=$(shell pwd) \
$(shell [ -n "$(CC)" ] && echo CC="$(CC)") \
$$([ -n "$(DEPMOD)" ] && echo "DEPMOD=$(DEPMOD)") \
CONFIG_MODULE_SIG_ALL= modules_install

View File

@@ -71,12 +71,16 @@ $(SCST_INTF_VER_FILE): $(SCST_INC_DIR)/scst.h $(SCST_INC_DIR)/scst_const.h $(SCS
echo "\"`sha1sum $(SCST_INC_DIR)/scst_user.h|awk '{printf $$1}'`\"" >>$(SCST_INTF_VER_FILE)
all: $(SCST_INTF_VER_FILE)
$(MAKE) -C certs KDIR=$(KDIR)
$(MAKE) -C $(KDIR) M=$(shell pwd)
$(MAKE) -C $(KDIR) M=$(shell pwd)/dev_handlers
$(MAKE) -C certs KDIR=$(KDIR) \
$(shell [ -n "$(CC)" ] && echo CC="$(CC)")
$(MAKE) -C $(KDIR) M=$(shell pwd) \
$(shell [ -n "$(CC)" ] && echo CC="$(CC)")
$(MAKE) -C $(KDIR) M=$(shell pwd)/dev_handlers \
$(shell [ -n "$(CC)" ] && echo CC="$(CC)")
scst:
$(MAKE) -C $(KDIR) M=$(shell pwd)
$(MAKE) -C $(KDIR) M=$(shell pwd) \
$(shell [ -n "$(CC)" ] && echo CC="$(CC)")
install: all
@if [ -z "$(DESTDIR)" ] && \
@@ -93,10 +97,12 @@ install: all
/usr/sbin/weak-modules --remove-kernel; \
fi
$(MAKE) -C $(KDIR) M=$(shell pwd)/dev_handlers \
$(shell [ -n "$(CC)" ] && echo CC="$(CC)") \
INSTALL_MOD_DIR=extra/dev_handlers \
$$([ -n "$(DEPMOD)" ] && echo "DEPMOD=$(DEPMOD)") \
CONFIG_MODULE_SIG_ALL= modules_install
$(MAKE) -C $(KDIR) M=$(shell pwd) \
$(shell [ -n "$(CC)" ] && echo CC="$(CC)") \
$$([ -n "$(DEPMOD)" ] && echo "DEPMOD=$(DEPMOD)") \
CONFIG_MODULE_SIG_ALL= modules_install
install -d $(INSTALL_DIR_H)

View File

@@ -51,17 +51,20 @@ endif
INSTALL_DIR := $(INSTALL_MOD_PATH)/lib/modules/$(KVER)/extra
all:
$(MAKE) -C $(KDIR) M=$(shell pwd)
$(MAKE) -C $(KDIR) M=$(shell pwd) \
$(shell [ -n "$(CC)" ] && echo CC="$(CC)")
%.lst: %.c
$(MAKE) -C $(KDIR) M=$(shell pwd) $@
$(MAKE) -C $(KDIR) M=$(shell pwd) $@ \
$(shell [ -n "$(CC)" ] && echo CC="$(CC)")
install: all
mkdir -p $(DESTDIR)/var/lib/scst/vdev_mode_pages
KDIR=$(KDIR) ../../../scripts/sign-modules
$(MAKE) -C $(KDIR) M=$(shell pwd) \
$$([ -n "$(DEPMOD)" ] && echo "DEPMOD=$(DEPMOD)") \
CONFIG_MODULE_SIG_ALL= modules_install
$(shell [ -n "$(CC)" ] && echo CC="$(CC)") \
$$([ -n "$(DEPMOD)" ] && echo "DEPMOD=$(DEPMOD)") \
CONFIG_MODULE_SIG_ALL= modules_install
uninstall:
rm -f $(INSTALL_DIR)/dev_handlers/scst_*.ko

View File

@@ -34,13 +34,15 @@ INSTALL_DIR := $(INSTALL_MOD_PATH)/lib/modules/$(KVER)/extra
SCST_DIR := $(shell echo "$$PWD")/../scst/src
all:
$(MAKE) -C $(KDIR) M=$(shell pwd)
$(MAKE) -C $(KDIR) M=$(shell pwd) \
$(shell [ -n "$(CC)" ] && echo CC="$(CC)")
install: all
KDIR=$(KDIR) ../scripts/sign-modules
$(MAKE) -C $(KDIR) M=$(shell pwd) \
$$([ -n "$(DEPMOD)" ] && echo "DEPMOD=$(DEPMOD)") \
CONFIG_MODULE_SIG_ALL= modules_install
$(shell [ -n "$(CC)" ] && echo CC="$(CC)") \
$$([ -n "$(DEPMOD)" ] && echo "DEPMOD=$(DEPMOD)") \
CONFIG_MODULE_SIG_ALL= modules_install
uninstall:
rm -f $(INSTALL_DIR)/scst_local.ko

View File

@@ -87,7 +87,12 @@ run_conftest = $(shell \
else \
output=conftest/$1/build-output-$(KVER).txt; \
fi; \
if MAKEFLAGS= make -C $(KDIR) V=$(V) M="$(shell pwd)/conftest/$1" CONFTEST_CFLAGS="-Werror $(OFED_CFLAGS)" $(OFED_CONFIG) KBUILD_EXTRA_SYMBOLS="$(OFED_MODULE_SYMVERS)" 1>&2 2>$${output}; then \
if MAKEFLAGS= make -C $(KDIR) V=$(V) \
$(shell [ -n "$(CC)" ] && echo CC="$(CC)") \
M="$(shell pwd)/conftest/$1" \
CONFTEST_CFLAGS="-Werror $(OFED_CFLAGS)" $(OFED_CONFIG) \
KBUILD_EXTRA_SYMBOLS="$(OFED_MODULE_SYMVERS)" \
1>&2 2>$${output}; then \
echo "$(strip $2)"; \
else \
echo "$(strip $3)"; \
@@ -107,16 +112,20 @@ CONFTEST_CFLAGS = $(OFED_CFLAGS) \
done)
all: check $(CONFTEST_OUTPUTS)
$(MAKE) -C $(KDIR) M=$(shell pwd)/src CONFTEST_CFLAGS="$(CONFTEST_CFLAGS)"\
$(OFED_CONFIG) modules
$(MAKE) -C $(KDIR) M=$(shell pwd)/src \
$(shell [ -n "$(CC)" ] && echo CC="$(CC)") \
CONFTEST_CFLAGS="$(CONFTEST_CFLAGS)" \
$(OFED_CONFIG) modules
install: all
@[ -z "$(DESTDIR)$(INSTALL_MOD_PATH)" ] && \
find /lib/modules/$(KVER) -name ib_srpt.ko -exec rm {} \; ; \
true
(cd src && KDIR=$(KDIR) ../../scripts/sign-modules)
$(MAKE) -C $(KDIR) M=$(shell pwd)/src CONFTEST_CFLAGS="$(CONFTEST_CFLAGS)" \
$$([ -n "$(DEPMOD)" ] && echo "DEPMOD=$(DEPMOD)") \
$(MAKE) -C $(KDIR) M=$(shell pwd)/src \
$(shell [ -n "$(CC)" ] && echo CC="$(CC)") \
CONFTEST_CFLAGS="$(CONFTEST_CFLAGS)" \
$$([ -n "$(DEPMOD)" ] && echo "DEPMOD=$(DEPMOD)") \
CONFIG_MODULE_SIG_ALL= modules_install
uninstall: