Minor changes based on comments from Tomasz Chmielewski <mangoo@wpkg.org>, Benjamin...
[mirror/scst/.git] / Makefile
1 #
2 #  Common makefile for SCSI target mid-level and its drivers
3 #  
4 #  Copyright (C) 2006 Vladislav Bolkhovitin <vst@vlnb.net>
5 #  
6 #  This program is free software; you can redistribute it and/or
7 #  modify it under the terms of the GNU General Public License
8 #  as published by the Free Software Foundation, version 2
9 #  of the License.
10
11 #  This program is distributed in the hope that it will be useful,
12 #  but WITHOUT ANY WARRANTY; without even the implied warranty of
13 #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 #  GNU General Public License for more details.
15 #
16 #
17
18 # Decide to use which kernel src. If not specified, is current running kernel.
19 #export KDIR=/usr/src/linux-2.6
20
21 SCST_DIR=scst
22 QLA_INI_DIR=qla2x00t
23 QLA_DIR=qla2x00t/qla2x00-target
24 LSI_DIR=mpt
25 USR_DIR=usr/fileio
26
27 ISCSI_DIR=iscsi-scst
28 #ISCSI_DISTDIR=../../../../iscsi_scst_inst
29
30 help:
31         @echo "         all               : make all"
32         @echo "         clean             : clean files"
33         @echo "         extraclean        : clean + clean dependencies"
34         @echo "         install           : install"
35         @echo "         uninstall         : uninstall"
36         @echo ""
37         @echo "         scst              : make scst only"
38         @echo "         scst_clean        : scst: clean "
39         @echo "         scst_extraclean   : scst: clean + clean dependencies"
40         @echo "         scst_install      : scst: install"
41         @echo "         scst_uninstall    : scst: uninstall"
42         @echo ""
43         @echo "         qla               : make QLA target driver"
44         @echo "         qla_clean         : 2.6 qla target: clean "
45         @echo "         qla_extraclean    : 2.6 qla target: clean + clean dependencies"
46         @echo "         qla_install       : 2.6 qla target: install"
47         @echo "         qla_uninstall     : 2.6 qla target: uninstall"
48         @echo ""
49         @echo "         iscsi             : make iSCSI target"
50         @echo "         iscsi_clean       : ISCSI target: clean "
51         @echo "         iscsi_extraclean  : ISCSI target: clean + clean dependencies"
52         @echo "         iscsi_install     : ISCSI target: install"
53         @echo "         iscsi_uninstall   : ISCSI target: uninstall"
54         @echo ""
55         @echo "         lsi               : make LSI MPT target"
56         @echo "         lsi_clean         : lsi target: clean "
57         @echo "         lsi_extraclean    : lsi target: clean + clean dependencies"
58         @echo "         lsi_install       : lsi target: install"
59         @echo "         lsi_uninstall     : lsi target: uninstall"
60         @echo ""
61         @echo "         usr               : make user space fileio_tgt target"
62         @echo "         usr_clean         : usr target: clean "
63         @echo "         usr_extraclean    : usr target: clean + clean dependencies"
64         @echo "         usr_install       : usr target: install"
65         @echo "         usr_uninstall     : usr target: uninstall"
66
67         @echo " Note:"
68         @echo "         - install and uninstall may need root privileges"
69
70 all:
71         cd $(SCST_DIR) && $(MAKE) $@
72         @if [ -d $(QLA_DIR) ]; then cd $(QLA_DIR) && $(MAKE) $@; fi
73 #       @if [ -d $(LSI_DIR) ]; then cd $(LSI_DIR) && $(MAKE) $@; fi
74         @if [ -d $(ISCSI_DIR) ]; then cd $(ISCSI_DIR) && $(MAKE) $@; fi
75         @if [ -d $(USR_DIR) ]; then cd $(USR_DIR) && $(MAKE) $@; fi
76
77 install: 
78         cd $(SCST_DIR) && $(MAKE) $@
79         @if [ -d $(QLA_DIR) ]; then cd $(QLA_DIR) && $(MAKE) $@; fi
80 #       @if [ -d $(LSI_DIR) ]; then cd $(LSI_DIR) && $(MAKE) $@; fi
81         @if [ -d $(ISCSI_DIR) ]; then cd $(ISCSI_DIR) && $(MAKE) DISTDIR=$(ISCSI_DISTDIR) $@; fi
82         @if [ -d $(USR_DIR) ]; then cd $(USR_DIR) && $(MAKE) $@; fi
83
84 uninstall: 
85         cd $(SCST_DIR) && $(MAKE) $@
86         @if [ -d $(QLA_DIR) ]; then cd $(QLA_DIR) && $(MAKE) $@; fi
87         @if [ -d $(LSI_DIR) ]; then cd $(LSI_DIR) && $(MAKE) $@; fi
88         @if [ -d $(ISCSI_DIR) ]; then cd $(ISCSI_DIR) && $(MAKE) $@; fi
89         @if [ -d $(USR_DIR) ]; then cd $(USR_DIR) && $(MAKE) $@; fi
90
91 clean: 
92         cd $(SCST_DIR) && $(MAKE) $@
93         @if [ -d $(QLA_INI_DIR) ]; then cd $(QLA_INI_DIR) && $(MAKE) $@; fi
94         @if [ -d $(QLA_DIR) ]; then cd $(QLA_DIR) && $(MAKE) $@; fi
95         @if [ -d $(LSI_DIR) ]; then cd $(LSI_DIR) && $(MAKE) $@; fi
96         @if [ -d $(ISCSI_DIR) ]; then cd $(ISCSI_DIR) && $(MAKE) $@; fi
97         @if [ -d $(USR_DIR) ]; then cd $(USR_DIR) && $(MAKE) $@; fi
98
99 extraclean: 
100         cd $(SCST_DIR) && $(MAKE) $@
101         @if [ -d $(QLA_INI_DIR) ]; then cd $(QLA_INI_DIR) && $(MAKE) $@; fi
102         @if [ -d $(QLA_DIR) ]; then cd $(QLA_DIR) && $(MAKE) $@; fi
103         @if [ -d $(LSI_DIR) ]; then cd $(LSI_DIR) && $(MAKE) $@; fi
104         @if [ -d $(ISCSI_DIR) ]; then cd $(ISCSI_DIR) && $(MAKE) $@; fi
105         @if [ -d $(USR_DIR) ]; then cd $(USR_DIR) && $(MAKE) $@; fi
106
107 scst: 
108         cd $(SCST_DIR) && $(MAKE)
109
110 scst_install: 
111         cd $(SCST_DIR) && $(MAKE) install
112
113 scst_uninstall: 
114         cd $(SCST_DIR) && $(MAKE) uninstall
115
116 scst_clean: 
117         cd $(SCST_DIR) && $(MAKE) clean
118
119 scst_extraclean: 
120         cd $(SCST_DIR) && $(MAKE) extraclean
121
122 qla:
123         cd $(QLA_DIR) && $(MAKE)
124
125 qla_install:
126         cd $(QLA_DIR) && $(MAKE) install
127
128 qla_uninstall:
129         cd $(QLA_DIR) && $(MAKE) uninstall
130
131 qla_clean: 
132         cd $(QLA_INI_DIR) && $(MAKE) clean
133         cd $(QLA_DIR) && $(MAKE) clean
134
135 qla_extraclean:
136         cd $(QLA_INI_DIR)/.. && $(MAKE) extraclean
137         cd $(QLA_DIR) && $(MAKE) extraclean
138
139 iscsi:
140         cd $(ISCSI_DIR) && $(MAKE)
141
142 iscsi_install:
143         cd $(ISCSI_DIR) && $(MAKE) install
144
145 iscsi_uninstall:
146         cd $(ISCSI_DIR) && $(MAKE) uninstall
147
148 iscsi_clean: 
149         cd $(ISCSI_DIR) && $(MAKE) clean
150
151 iscsi_extraclean:
152         cd $(ISCSI_DIR) && $(MAKE) extraclean
153
154 lsi:
155         cd $(LSI_DIR) && $(MAKE)
156
157 lsi_install:
158         cd $(LSI_DIR) && $(MAKE) install
159
160 lsi_uninstall:
161         cd $(LSI_DIR) && $(MAKE) uninstall
162
163 lsi_clean: 
164         cd $(LSI_DIR) && $(MAKE) clean
165
166 lsi_extraclean:
167         cd $(LSI_DIR) && $(MAKE) extraclean
168
169 usr:
170         cd $(USR_DIR) && $(MAKE)
171
172 usr_install:
173         cd $(USR_DIR) && $(MAKE) install
174
175 usr_uninstall:
176         cd $(USR_DIR) && $(MAKE) uninstall
177
178 usr_clean: 
179         cd $(USR_DIR) && $(MAKE) clean
180
181 usr_extraclean:
182         cd $(USR_DIR) && $(MAKE) extraclean
183
184 .PHONY: all install uninstall clean extraclean help \
185         qla qla_install qla_uninstall qla_clean qla_extraclean \
186         lsi lsi_install lsi_uninstall lsi_clean lsi_extraclean \
187         iscsi iscsi_install iscsi_uninstall iscsi_clean iscsi_extraclean \
188         scst scst_install scst_uninstall scst_clean scst_extraclean \
189         usr usr_install usr_uninstall usr_clean usr_extraclean