Minor cleanup
[mirror/scst/.git] / qla2x00t / qla2x00-target / Makefile
1 #
2 #  Qlogic 2x00 SCSI target driver makefile
3 #  
4 #  Copyright (C) 2004 Vladislav Bolkhovitin <vst@vlnb.net>
5 #                 and Leonid Stoljar
6 #  
7 #  This program is free software; you can redistribute it and/or
8 #  modify it under the terms of the GNU General Public License
9 #  as published by the Free Software Foundation, version 2
10 #  of the License.
11
12 #  This program is distributed in the hope that it will be useful,
13 #  but WITHOUT ANY WARRANTY; without even the implied warranty of
14 #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 #  GNU General Public License for more details.
16 #
17 #
18 # Main targets:
19 #    all (the default) : make all
20 #    clean             : clean files
21 #    extraclean        : clean + clean dependencies
22 #    install           : install 
23 #    uninstall         : uninstall 
24 #
25 # Notes :
26 #    - install and uninstall must be made as root
27 #
28
29 #SCST_INC_DIR := /usr/local/include/scst
30 #SCST_DIR := $(SCST_INC_DIR)
31 SCST_INC_DIR := $(SUBDIRS)/../../scst/include
32 SCST_DIR := $(shell pwd)/../../scst/src
33
34 EXTRA_CFLAGS += -I$(SCST_INC_DIR) -DFC_TARGET_SUPPORT
35
36 INSTALL_DIR := /lib/modules/$(shell uname -r)/extra
37
38 EXTRA_CFLAGS += -DEXTRACHECKS 
39 #EXTRA_CFLAGS += -DTRACING
40 EXTRA_CFLAGS += -DDEBUG_TGT
41 #EXTRA_CFLAGS += -DDEBUG_WORK_IN_THREAD
42
43 ifeq ($(KVER),)
44   ifeq ($(KDIR),)
45     KDIR := /lib/modules/$(shell uname -r)/build
46   endif
47 else
48   KDIR := /lib/modules/$(KVER)/build
49 endif
50
51 QLA2XXX_INC_DIR := $(KDIR)/drivers/scsi/qla2xxx
52 EXTRA_CFLAGS += -I$(QLA2XXX_INC_DIR)
53
54 ifneq ($(KERNELRELEASE),)
55 obj-m := qla2x00tgt.o
56 qla2x00tgt-objs := qla2x00t.o
57
58 else
59
60 all: Modules.symvers Module.symvers
61         $(MAKE) -C $(KDIR) SUBDIRS=$(shell pwd) BUILD_INI=m
62
63 tgt: Modules.symvers Module.symvers
64         $(MAKE) -C $(KDIR) SUBDIRS=$(shell pwd) BUILD_INI=n
65
66 install: all
67         $(MAKE) -C $(KDIR) SUBDIRS=$(shell pwd) BUILD_INI=m \
68                 modules_install
69         -depmod -a
70
71 SCST_MOD_VERS := $(shell ls $(SCST_DIR)/Modules.symvers 2>/dev/null)
72 ifneq ($(SCST_MOD_VERS),)
73 Modules.symvers: $(SCST_DIR)/Modules.symvers
74         cp $(SCST_DIR)/Modules.symvers .
75 else
76 .PHONY: Modules.symvers
77 endif
78
79 # It's renamed in 2.6.18
80 SCST_MOD_VERS := $(shell ls $(SCST_DIR)/Module.symvers 2>/dev/null)
81 ifneq ($(SCST_MOD_VERS),)
82 Module.symvers: $(SCST_DIR)/Module.symvers
83         cp $(SCST_DIR)/Module.symvers .
84 else
85 .PHONY: Module.symvers
86 endif
87
88 uninstall:
89         rm -f $(INSTALL_DIR)/qla2[23x]00tgt.ko
90         -/sbin/depmod -a
91 endif
92
93 clean:
94         rm -f *.o *.ko .*.cmd *.mod.c .*.d .depend *~ Modules.symvers Module.symvers
95         rm -rf .tmp_versions
96
97 extraclean: clean
98
99 .PHONY: all tgt install uninstall clean extraclean