LSI/MPT target driver added
[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
26 all:
27         cd $(SCST_DIR) && $(MAKE) $@
28         @if [ -d $(QLA_DIR) ]; then cd $(QLA_DIR) && $(MAKE) $@; fi
29         @if [ -d $(LSI_DIR) ]; then cd $(LSI_DIR) && $(MAKE) $@; fi
30
31 install: 
32         cd $(SCST_DIR) && $(MAKE) $@
33         @if [ -d $(QLA_DIR) ]; then cd $(QLA_DIR) && $(MAKE) $@; fi
34         @if [ -d $(LSI_DIR) ]; then cd $(LSI_DIR) && $(MAKE) $@; fi
35
36 uninstall: 
37         cd $(SCST_DIR) && $(MAKE) $@
38         @if [ -d $(QLA_DIR) ]; then cd $(QLA_DIR) && $(MAKE) $@; fi
39         @if [ -d $(LSI_DIR) ]; then cd $(LSI_DIR) && $(MAKE) $@; fi
40
41 clean: 
42         cd $(SCST_DIR) && $(MAKE) $@
43         @if [ -d $(QLA_INI_DIR) ]; then cd $(QLA_INI_DIR) && $(MAKE) $@; fi
44         @if [ -d $(QLA_DIR) ]; then cd $(QLA_DIR) && $(MAKE) $@; fi
45         @if [ -d $(LSI_DIR) ]; then cd $(LSI_DIR) && $(MAKE) $@; fi
46
47 extraclean: 
48         cd $(SCST_DIR) && $(MAKE) $@
49         @if [ -d $(QLA_INI_DIR) ]; then cd $(QLA_INI_DIR) && $(MAKE) $@; fi
50         @if [ -d $(QLA_DIR) ]; then cd $(QLA_DIR) && $(MAKE) $@; fi
51         @if [ -d $(LSI_DIR) ]; then cd $(LSI_DIR) && $(MAKE) $@; fi
52
53 scst: 
54         cd $(SCST_DIR) && $(MAKE)
55
56 scst_install: 
57         cd $(SCST_DIR) && $(MAKE) install
58
59 scst_uninstall: 
60         cd $(SCST_DIR) && $(MAKE) uninstall
61
62 scst_clean: 
63         cd $(SCST_DIR) && $(MAKE) clean
64
65 scst_extraclean: 
66         cd $(SCST_DIR) && $(MAKE) extraclean
67
68 qla:
69         cd $(QLA_DIR) && $(MAKE)
70
71 qla_install:
72         cd $(QLA_DIR) && $(MAKE) install
73
74 qla_uninstall:
75         cd $(QLA_DIR) && $(MAKE) uninstall
76
77 qla_clean: 
78         cd $(QLA_INI_DIR) && $(MAKE) clean
79         cd $(QLA_DIR) && $(MAKE) clean
80
81 qla_extraclean:
82         cd $(QLA_INI_DIR)/.. && $(MAKE) extraclean
83         cd $(QLA_DIR) && $(MAKE) extraclean
84
85 lsi:
86         cd $(LSI_DIR) && $(MAKE)
87
88 lsi_install:
89         cd $(LSI_DIR) && $(MAKE) install
90
91 lsi_uninstall:
92         cd $(LSI_DIR) && $(MAKE) uninstall
93
94 lsi_clean: 
95         cd $(LSI_DIR) && $(MAKE) clean
96
97 lsi_extraclean:
98         cd $(LSI_DIR) && $(MAKE) extraclean
99
100 help:
101         @echo "         all (the default) : make all"
102         @echo "         clean             : clean files"
103         @echo "         extraclean        : clean + clean dependencies"
104         @echo "         install           : install"
105         @echo "         uninstall         : uninstall"
106         @echo ""
107         @echo "         scst              : make scst only"
108         @echo "         scst_clean        : scst: clean "
109         @echo "         scst_extraclean   : scst: clean + clean dependencies"
110         @echo "         scst_install      : scst: install"
111         @echo "         scst_uninstall    : scst: uninstall"
112         @echo ""
113         @echo "         qla             : make new qla target using 2.6.x kernel qla2xxx"
114         @echo "         qla_clean       : 2.6 qla target: clean "
115         @echo "         qla_extraclean  : 2.6 qla target: clean + clean dependencies"
116         @echo "         qla_install     : 2.6 qla target: install"
117         @echo "         qla_uninstall   : 2.6 qla target: uninstall"
118         @echo ""
119         @echo "         lsi             : make lsi target"
120         @echo "         lsi_clean       : lsi target: clean "
121         @echo "         lsi_extraclean  : lsi target: clean + clean dependencies"
122         @echo "         lsi_install     : lsi target: install"
123         @echo "         lsi_uninstall   : lsi target: uninstall"
124         @echo " Notes :"
125         @echo "         - install and uninstall must be made as root"
126
127 .PHONY: all install uninstall clean extraclean help \
128         qla qla_install qla_uninstall qla_clean qla_extraclean \
129         lsi lsi_install lsi_uninstall lsi_clean lsi_extraclean \
130         scst scst_install scst_uninstall scst_clean scst_extraclean