mirror of
https://github.com/SCST-project/scst.git
synced 2026-05-20 04:01:26 +00:00
svn+ssh://yanb123@svn.code.sf.net/p/scst/svn/branches/3.0.x
................
r5799 | bvassche | 2014-09-12 14:17:49 +0300 (Fri, 12 Sep 2014) | 1 line
fcst/Makefile: Add release-archive target (merge r5798 from trunk)
................
r5800 | bvassche | 2014-09-12 14:19:21 +0300 (Fri, 12 Sep 2014) | 1 line
fcst: Change version number from 0.3 into 3.0.0
................
r5803 | vlnb | 2014-09-13 04:15:12 +0300 (Sat, 13 Sep 2014) | 9 lines
Merged revisions 5802 via svnmerge from
svn+ssh://vlnb@svn.code.sf.net/p/scst/svn/trunk
........
r5802 | vlnb | 2014-09-12 18:13:29 -0700 (Fri, 12 Sep 2014) | 3 lines
Fix autofinding SCST headers in fileio_tgt
........
................
r5807 | bvassche | 2014-09-15 15:32:02 +0300 (Mon, 15 Sep 2014) | 1 line
ib_srpt: Make "make -j<n> install" work for n >= 2 if "make all" has not been run first (merge r5806 from trunk)
................
r5809 | bvassche | 2014-09-16 14:26:10 +0300 (Tue, 16 Sep 2014) | 1 line
scst/src/Makefile: Make "make install" without prior "make" work (merge r5808 from trunk)
................
r5812 | bvassche | 2014-09-17 14:14:38 +0300 (Wed, 17 Sep 2014) | 1 line
scst_vdisk: Insert a blank line (merge r5810 from trunk)
................
r5813 | bvassche | 2014-09-17 14:18:17 +0300 (Wed, 17 Sep 2014) | 2 lines
vdisk_blockio: Make large COMPARE AND WRITE requests work for stacked block devices (merge r5811 from trunk)
................
r5815 | vlnb | 2014-09-20 08:52:06 +0300 (Sat, 20 Sep 2014) | 3 lines
Version updated
................
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/3.0.x-iser@5818 d57e44dd-8a1f-0410-8b47-8ef2f437770f
146 lines
4.0 KiB
Makefile
146 lines
4.0 KiB
Makefile
#
|
|
# FCST: libfc SCSI target makefile
|
|
# Based on ../mvsas_tgt/Makefile
|
|
#
|
|
# Copyright (C) 2006 - 2008 Jacky Feng <jfeng@marvell.com>
|
|
# Copyright (C) 2011 - 2014 Bart Van Assche <bvanassche@acm.org>
|
|
#
|
|
# This program is free software; you can redistribute it and/or
|
|
# modify it under the terms of the GNU General Public License
|
|
# as published by the Free Software Foundation, version 2
|
|
# of the License.
|
|
#
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
#
|
|
# Main targets:
|
|
# all (the default) : make all
|
|
# clean : clean files
|
|
# extraclean : clean + clean dependencies
|
|
# install : install
|
|
# uninstall : uninstall
|
|
#
|
|
# Notes :
|
|
# - install and uninstall must be made as root
|
|
#
|
|
|
|
export PWD := $(shell pwd)
|
|
export CONFIG_FCST := m
|
|
|
|
|
|
# Set variable $(2) to value $(3) in file $(1).
|
|
set_var = $(shell { if [ -e "$(1)" ]; then grep -v '^$(2)=' "$(1)"; fi; echo "$(2)=$(3)"; } >/tmp/$(1)-$$$$.tmp && mv /tmp/$(1)-$$$$.tmp $(1))
|
|
|
|
|
|
FCSTFLAGS = -DDEBUG_WORK_IN_THREAD -DCONFIG_SCST_TRACING -DCONFIG_SCST_DEBUG \
|
|
-DCONFIG_SCST_EXTRACHECKS -fno-inline -fno-inline-functions
|
|
FCSTFLAGSRELEASE = -DCONFIG_SCST_TRACING
|
|
FCSTFLAGSPERF =
|
|
EXTRA_CFLAGS += -I$(SCST_INC_DIR) $(FCSTFLAGS$(BUILDMODE))
|
|
|
|
MODULE_NAME = fcst
|
|
|
|
ifneq ($(KERNELRELEASE),)
|
|
include $(SUBDIRS)/Makefile_in-tree
|
|
else
|
|
######### BEGIN OUT-OF-TREE RULES #########
|
|
|
|
ifndef PREFIX
|
|
PREFIX=/usr/local
|
|
endif
|
|
|
|
ifeq ($(KVER),)
|
|
ifeq ($(KDIR),)
|
|
KVER := $(shell uname -r)
|
|
KDIR := /lib/modules/$(KVER)/build
|
|
else
|
|
KVER := $(strip $(shell \
|
|
cat $(KDIR)/include/config/kernel.release 2>/dev/null || \
|
|
make -s -C $(KDIR) kernelversion))
|
|
endif
|
|
else
|
|
KDIR := /lib/modules/$(KVER)/build
|
|
endif
|
|
|
|
ifeq ($(INSTALL_MOD_PATH),)
|
|
export INSTALL_MOD_PATH := $(DESTDIR)
|
|
endif
|
|
|
|
INSTALL_DIR := $(INSTALL_MOD_PATH)/lib/modules/$(KVER)/extra
|
|
|
|
SCST_INC_DIR := $(shell if [ -e "$$PWD/../scst" ]; \
|
|
then echo "$$PWD/../scst/include"; \
|
|
else echo "$(DESTDIR)$(PREFIX)/include/scst"; fi)
|
|
SCST_DIR := $(shell if [ -e "$$PWD/../scst" ]; then echo "$$PWD/../scst/src"; \
|
|
else echo "$(DESTDIR)$(PREFIX)/include/scst"; fi)
|
|
|
|
all: Modules.symvers Module.symvers
|
|
$(MAKE) -C $(KDIR) SUBDIRS=$(shell pwd) BUILD_INI=m \
|
|
SCST_INC_DIR=$(SCST_INC_DIR)
|
|
|
|
tgt: Modules.symvers Module.symvers
|
|
$(MAKE) -C $(KDIR) SUBDIRS=$(shell pwd) BUILD_INI=n \
|
|
SCST_INC_DIR=$(SCST_INC_DIR)
|
|
|
|
install: all
|
|
$(MAKE) -C $(KDIR) SUBDIRS=$(shell pwd) BUILD_INI=m \
|
|
$$([ -n "$(DESTDIR)$(INSTALL_MOD_PATH)" ] && echo DEPMOD=true) \
|
|
SCST_INC_DIR=$(SCST_INC_DIR) modules_install
|
|
|
|
ins:
|
|
./config
|
|
insmod fcst.ko
|
|
|
|
SCST_MOD_VERS := $(shell ls $(SCST_DIR)/Modules.symvers 2>/dev/null)
|
|
ifneq ($(SCST_MOD_VERS),)
|
|
Modules.symvers: $(SCST_DIR)/Modules.symvers
|
|
cp $(SCST_DIR)/Modules.symvers .
|
|
else
|
|
.PHONY: Modules.symvers
|
|
endif
|
|
|
|
# It's renamed in 2.6.18
|
|
SCST_MOD_VERS := $(shell ls $(SCST_DIR)/Module.symvers 2>/dev/null)
|
|
ifneq ($(SCST_MOD_VERS),)
|
|
Module.symvers: $(SCST_DIR)/Module.symvers
|
|
cp $(SCST_DIR)/Module.symvers .
|
|
else
|
|
.PHONY: Module.symvers
|
|
endif
|
|
|
|
uninstall:
|
|
rm -f $(INSTALL_DIR)/$(MODULE_NAME).ko
|
|
-/sbin/depmod -b $(INSTALL_MOD_PATH)/ -a $(KVER)
|
|
|
|
########## END OUT-OF-TREE RULES ##########
|
|
endif
|
|
|
|
clean:
|
|
rm -f *.o *.ko .*.cmd *.mod.c .*.d .depend *~ Modules.symvers \
|
|
Module.symvers Module.markers modules.order
|
|
rm -rf .tmp_versions
|
|
|
|
extraclean: clean
|
|
rm -f *.orig *.rej
|
|
|
|
2debug:
|
|
-$(MAKE) clean
|
|
$(call set_var,build_mode,BUILDMODE,)
|
|
|
|
2release:
|
|
-$(MAKE) clean
|
|
$(call set_var,build_mode,BUILDMODE,RELEASE)
|
|
|
|
2perf:
|
|
-$(MAKE) clean
|
|
$(call set_var,build_mode,BUILDMODE,PERF)
|
|
|
|
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 2debug 2release 2perf \
|
|
release-archive
|