Makefile: Implement several improvements to SCST Makefiles

1. Correct a typo, changing `make release` to `make 2release`.
2. Add information about package-related targets to the help section.
3. Remove `dev_handler` directory during the uninstall process.
4. Eliminate the non-existent `tgt` target from the PHONY targets.
5. Introduce SCST_MOD_DIR and SCST_DH_MOD_DIR as helper variables.
This commit is contained in:
Gleb Chesnokov
2023-06-14 16:49:36 +03:00
parent 3b0ab93c93
commit 85e8086a7e
10 changed files with 24 additions and 13 deletions
+1 -1
View File
@@ -22,7 +22,7 @@ If the following packages have not yet been installed, install these now:
The next step is to build and install SCST. How to do that depends on whether
or not your Linux distribution supports a package manager:
make release
make 2release
if rpm -q glibc >/dev/null 2>&1; then
rm -rf {,scstadmin/}rpmbuilddir
make rpm
+7
View File
@@ -146,6 +146,13 @@ help:
@echo " usr_install : usr target: install"
@echo " usr_uninstall : usr target: uninstall"
@echo ""
@echo " scst-rpm : make SCST RPM packages"
@echo " scst-dkms-rpm : make SCST DKMS RPM packages"
@echo " rpm : make both SCST and scstadmin RPM packages"
@echo " rpm-dkms : make both SCST DKMS and scstadmin RPM packages"
@echo ""
@echo " dpkg : make SCST dpkg packages"
@echo ""
@echo " 2perf : changes debug state to full performance"
@echo " 2release : changes debug state to release"
@echo " 2debug : changes debug state to full debug"
+1 -1
View File
@@ -87,4 +87,4 @@ extraclean: clean
release-archive:
../scripts/generate-release-archive fcst "$$(sed -n 's/^#define[[:blank:]]FT_VERSION[[:blank:]]*\"\([^\"]*\)\".*/\1/p' fcst.h)"
.PHONY: all tgt install uninstall clean extraclean release-archive
.PHONY: all install uninstall clean extraclean release-archive
+1 -1
View File
@@ -71,7 +71,7 @@ clean:
extraclean: clean
rm -f *.orig *.rej
.PHONY: all tgt install uninstall clean extraclean
.PHONY: all install uninstall clean extraclean
endif
+1 -1
View File
@@ -102,4 +102,4 @@ endif
extraclean: clean
rm -f *.orig *.rej
.PHONY: all tgt install uninstall clean extraclean qla2xxx_scst
.PHONY: all install uninstall clean extraclean qla2xxx_scst
+1 -1
View File
@@ -69,7 +69,7 @@ clean:
extraclean: clean
rm -f *.orig *.rej
.PHONY: all tgt install uninstall clean extraclean
.PHONY: all install uninstall clean extraclean
endif
+1 -1
View File
@@ -101,4 +101,4 @@ endif
extraclean: clean
rm -f *.orig *.rej
.PHONY: all tgt install uninstall clean extraclean qla2xxx_scst
.PHONY: all install uninstall clean extraclean qla2xxx_scst
+9 -6
View File
@@ -35,6 +35,9 @@ SHELL=/bin/bash
DEV_HANDLERS_DIR = dev_handlers
SCST_MOD_DIR := $(shell pwd)
SCST_DH_MOD_DIR := $(shell pwd)/$(DEV_HANDLERS_DIR)
ifeq ($(KVER),)
ifeq ($(KDIR),)
KVER := $(shell uname -r)
@@ -73,13 +76,13 @@ $(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) \
$(shell [ -n "$(PASS_CC_TO_MAKE)" ] && echo CC="$(CC)")
$(MAKE) -C $(KDIR) M=$(shell pwd) \
$(MAKE) -C $(KDIR) M=$(SCST_MOD_DIR) \
$(shell [ -n "$(PASS_CC_TO_MAKE)" ] && echo CC="$(CC)")
$(MAKE) -C $(KDIR) M=$(shell pwd)/dev_handlers \
$(MAKE) -C $(KDIR) M=$(SCST_DH_MOD_DIR) \
$(shell [ -n "$(PASS_CC_TO_MAKE)" ] && echo CC="$(CC)")
scst:
$(MAKE) -C $(KDIR) M=$(shell pwd) \
$(MAKE) -C $(KDIR) M=$(SCST_MOD_DIR) \
$(shell [ -n "$(PASS_CC_TO_MAKE)" ] && echo CC="$(CC)")
install: all
@@ -89,12 +92,12 @@ install: all
false; fi
-rm -f $(INSTALL_DIR)/scsi_tgt.ko
KDIR=$(KDIR) ../../scripts/sign-modules
$(MAKE) -C $(KDIR) M=$(shell pwd)/dev_handlers \
$(MAKE) -C $(KDIR) M=$(SCST_DH_MOD_DIR) \
$(shell [ -n "$(PASS_CC_TO_MAKE)" ] && 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) \
$(MAKE) -C $(KDIR) M=$(SCST_MOD_DIR) \
$(shell [ -n "$(PASS_CC_TO_MAKE)" ] && echo CC="$(CC)") \
$$([ -n "$(DEPMOD)" ] && echo "DEPMOD=$(DEPMOD)") \
CONFIG_MODULE_SIG_ALL= modules_install
@@ -135,7 +138,7 @@ INSTALL_DIR_H := $(DESTDIR)$(PREFIX)/include/scst
clean:
rm -f $(SCST_INTF_VER_FILE)
$(MAKE) -C $(KDIR) M=$(shell pwd) $@
$(MAKE) -C $(KDIR) M=$(SCST_MOD_DIR) $@
$(MAKE) -C $(DEV_HANDLERS_DIR) $@
extraclean: clean
+1
View File
@@ -68,6 +68,7 @@ install: all
uninstall:
rm -f $(INSTALL_DIR)/dev_handlers/scst_*.ko
-rmdir $(INSTALL_DIR)/dev_handlers 2>/dev/null
clean:
$(MAKE) -C $(KDIR) M=$(shell pwd) $@
+1 -1
View File
@@ -57,5 +57,5 @@ extraclean: clean
release-archive:
../scripts/generate-release-archive scst_local "$$(sed -n 's/^#define[[:blank:]]SCST_LOCAL_VERSION[[:blank:]]*\"\([^\"]*\)\".*/\1/p' scst_local.c)"
.PHONY: all tgt install uninstall clean extraclean
.PHONY: all install uninstall clean extraclean