- Module scst_user and user space utility to test it 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 USR_DIR=usr/fileio
26
27 all:
28         cd $(SCST_DIR) && $(MAKE) $@
29         @if [ -d $(QLA_DIR) ]; then cd $(QLA_DIR) && $(MAKE) $@; fi
30 #       @if [ -d $(LSI_DIR) ]; then cd $(LSI_DIR) && $(MAKE) $@; fi
31         @if [ -d $(USR_DIR) ]; then cd $(USR_DIR) && $(MAKE) $@; fi
32
33 install: 
34         cd $(SCST_DIR) && $(MAKE) $@
35         @if [ -d $(QLA_DIR) ]; then cd $(QLA_DIR) && $(MAKE) $@; fi
36 #       @if [ -d $(LSI_DIR) ]; then cd $(LSI_DIR) && $(MAKE) $@; fi
37         @if [ -d $(USR_DIR) ]; then cd $(USR_DIR) && $(MAKE) $@; fi
38
39 uninstall: 
40         cd $(SCST_DIR) && $(MAKE) $@
41         @if [ -d $(QLA_DIR) ]; then cd $(QLA_DIR) && $(MAKE) $@; fi
42         @if [ -d $(LSI_DIR) ]; then cd $(LSI_DIR) && $(MAKE) $@; fi
43         @if [ -d $(USR_DIR) ]; then cd $(USR_DIR) && $(MAKE) $@; fi
44
45 clean: 
46         cd $(SCST_DIR) && $(MAKE) $@
47         @if [ -d $(QLA_INI_DIR) ]; then cd $(QLA_INI_DIR) && $(MAKE) $@; fi
48         @if [ -d $(QLA_DIR) ]; then cd $(QLA_DIR) && $(MAKE) $@; fi
49         @if [ -d $(LSI_DIR) ]; then cd $(LSI_DIR) && $(MAKE) $@; fi
50         @if [ -d $(USR_DIR) ]; then cd $(USR_DIR) && $(MAKE) $@; fi
51
52 extraclean: 
53         cd $(SCST_DIR) && $(MAKE) $@
54         @if [ -d $(QLA_INI_DIR) ]; then cd $(QLA_INI_DIR) && $(MAKE) $@; fi
55         @if [ -d $(QLA_DIR) ]; then cd $(QLA_DIR) && $(MAKE) $@; fi
56         @if [ -d $(LSI_DIR) ]; then cd $(LSI_DIR) && $(MAKE) $@; fi
57         @if [ -d $(USR_DIR) ]; then cd $(USR_DIR) && $(MAKE) $@; fi
58
59 scst: 
60         cd $(SCST_DIR) && $(MAKE)
61
62 scst_install: 
63         cd $(SCST_DIR) && $(MAKE) install
64
65 scst_uninstall: 
66         cd $(SCST_DIR) && $(MAKE) uninstall
67
68 scst_clean: 
69         cd $(SCST_DIR) && $(MAKE) clean
70
71 scst_extraclean: 
72         cd $(SCST_DIR) && $(MAKE) extraclean
73
74 qla:
75         cd $(QLA_DIR) && $(MAKE)
76
77 qla_install:
78         cd $(QLA_DIR) && $(MAKE) install
79
80 qla_uninstall:
81         cd $(QLA_DIR) && $(MAKE) uninstall
82
83 qla_clean: 
84         cd $(QLA_INI_DIR) && $(MAKE) clean
85         cd $(QLA_DIR) && $(MAKE) clean
86
87 qla_extraclean:
88         cd $(QLA_INI_DIR)/.. && $(MAKE) extraclean
89         cd $(QLA_DIR) && $(MAKE) extraclean
90
91 lsi:
92         cd $(LSI_DIR) && $(MAKE)
93
94 lsi_install:
95         cd $(LSI_DIR) && $(MAKE) install
96
97 lsi_uninstall:
98         cd $(LSI_DIR) && $(MAKE) uninstall
99
100 lsi_clean: 
101         cd $(LSI_DIR) && $(MAKE) clean
102
103 lsi_extraclean:
104         cd $(LSI_DIR) && $(MAKE) extraclean
105
106 usr:
107         cd $(USR_DIR) && $(MAKE)
108
109 usr_install:
110         cd $(USR_DIR) && $(MAKE) install
111
112 usr_uninstall:
113         cd $(USR_DIR) && $(MAKE) uninstall
114
115 usr_clean: 
116         cd $(USR_DIR) && $(MAKE) clean
117
118 usr_extraclean:
119         cd $(USR_DIR) && $(MAKE) extraclean
120
121 help:
122         @echo "         all (the default) : make all"
123         @echo "         clean             : clean files"
124         @echo "         extraclean        : clean + clean dependencies"
125         @echo "         install           : install"
126         @echo "         uninstall         : uninstall"
127         @echo ""
128         @echo "         scst              : make scst only"
129         @echo "         scst_clean        : scst: clean "
130         @echo "         scst_extraclean   : scst: clean + clean dependencies"
131         @echo "         scst_install      : scst: install"
132         @echo "         scst_uninstall    : scst: uninstall"
133         @echo ""
134         @echo "         qla             : make new qla target using 2.6.x kernel qla2xxx"
135         @echo "         qla_clean       : 2.6 qla target: clean "
136         @echo "         qla_extraclean  : 2.6 qla target: clean + clean dependencies"
137         @echo "         qla_install     : 2.6 qla target: install"
138         @echo "         qla_uninstall   : 2.6 qla target: uninstall"
139         @echo ""
140         @echo "         lsi             : make lsi target"
141         @echo "         lsi_clean       : lsi target: clean "
142         @echo "         lsi_extraclean  : lsi target: clean + clean dependencies"
143         @echo "         lsi_install     : lsi target: install"
144         @echo "         lsi_uninstall   : lsi target: uninstall"
145         @echo ""
146         @echo "         usr             : make usr target"
147         @echo "         usr_clean       : usr target: clean "
148         @echo "         usr_extraclean  : usr target: clean + clean dependencies"
149         @echo "         usr_install     : usr target: install"
150         @echo "         usr_uninstall   : usr target: uninstall"
151         @echo " Notes :"
152         @echo "         - install and uninstall must be made as root"
153
154 .PHONY: all install uninstall clean extraclean help \
155         qla qla_install qla_uninstall qla_clean qla_extraclean \
156         lsi lsi_install lsi_uninstall lsi_clean lsi_extraclean \
157         scst scst_install scst_uninstall scst_clean scst_extraclean
158         usr usr_install usr_uninstall usr_clean usr_extraclean