Merge with Linu 2.4.0-test6-pre6.
[linux-2.6/linux-mips.git] / drivers / scsi / Makefile
blobde225879f0d78ffafde4f64a446897b83d4aad09
2 # Makefile for linux/drivers/scsi
4 # 30 May 2000, Christoph Hellwig <chhellwig@gmx.net>
5 # Rewritten to use lists instead of if-statements.
8 O_TARGET := scsidrv.o
10 SUB_DIRS :=
11 MOD_SUB_DIRS :=
12 MOD_IN_SUB_DIRS :=
13 ALL_SUB_DIRS := $(SUB_DIRS) pcmcia
15 ifeq ($(CONFIG_PCMCIA),y)
16 SUB_DIRS += pcmcia
17 MOD_IN_SUB_DIRS += pcmcia
18 else
19 ifeq ($(CONFIG_PCMCIA),m)
20 MOD_IN_SUB_DIRS += pcmcia
21 endif
22 endif
24 export-objs := scsi_syms.o
25 list-multi := scsi_mod.o sr_mod.o initio.o a100u2w.o
27 CFLAGS_aha152x.o = -DAHA152X_STAT -DAUTOCONF
28 CFLAGS_gdth.o = # -DDEBUG_GDTH=2 -D__SERIAL__ -D__COM2__ -DGDTH_STATISTICS
29 CFLAGS_seagate.o = -DARBITRATE -DPARITY -DSEAGATE_USE_ASM
31 obj-$(CONFIG_SCSI) += scsi_mod.o
32 obj-$(CONFIG_CHR_DEV_ST) += st.o
33 obj-$(CONFIG_BLK_DEV_SD) += sd.o
34 obj-$(CONFIG_BLK_DEV_SR) += sr_mod.o
35 obj-$(CONFIG_CHR_DEV_SG) += sg.o
37 obj-$(CONFIG_SCSI_ADVANSYS) += advansys.o
38 obj-$(CONFIG_SCSI_PCI2000) += pci2000.o
39 obj-$(CONFIG_SCSI_PCI2220I) += pci2220i.o
40 obj-$(CONFIG_SCSI_PSI240I) += psi240i.o
41 obj-$(CONFIG_MVME16x_SCSI) += mvme16x.o 53c7xx.o
42 obj-$(CONFIG_BVME6000_SCSI) += bvme6000.o 53c7xx.o
43 obj-$(CONFIG_SCSI_SIM710) += sim710.o
44 obj-$(CONFIG_A4000T_SCSI) += amiga7xx.o 53c7xx.o
45 obj-$(CONFIG_A4091_SCSI) += amiga7xx.o 53c7xx.o
46 obj-$(CONFIG_BLZ603EPLUS_SCSI) += amiga7xx.o 53c7xx.o
47 obj-$(CONFIG_WARPENGINE_SCSI) += amiga7xx.o 53c7xx.o
48 obj-$(CONFIG_A3000_SCSI) += a3000.o wd33c93.o
49 obj-$(CONFIG_A2091_SCSI) += a2091.o wd33c93.o
50 obj-$(CONFIG_GVP11_SCSI) += gvp11.o wd33c93.o
51 obj-$(CONFIG_SCSI_SGIWD93) += sgiwd93.o wd33c93.o
52 obj-$(CONFIG_SCSI_MCA_53C9X) += NCR53C9x.o mca_53c9x.o
53 obj-$(CONFIG_CYBERSTORM_SCSI) += NCR53C9x.o cyberstorm.o
54 obj-$(CONFIG_CYBERSTORMII_SCSI) += NCR53C9x.o cyberstormII.o
55 obj-$(CONFIG_BLZ2060_SCSI) += NCR53C9x.o blz2060.o
56 obj-$(CONFIG_BLZ1230_SCSI) += NCR53C9x.o blz1230.o
57 obj-$(CONFIG_FASTLANE_SCSI) += NCR53C9x.o fastlane.o
58 obj-$(CONFIG_OKTAGON_SCSI) += NCR53C9x.o oktagon_esp.o oktagon_io.o
59 obj-$(CONFIG_ATARI_SCSI) += atari_scsi.o
60 obj-$(CONFIG_MAC_SCSI) += mac_scsi.o
61 obj-$(CONFIG_SUN3_SCSI) += sun3_scsi.o
62 obj-$(CONFIG_SCSI_MAC_ESP) += mac_esp.o NCR53C9x.o
63 obj-$(CONFIG_SCSI_PPA) += ppa.o
64 obj-$(CONFIG_SCSI_IMM) += imm.o
65 obj-$(CONFIG_SCSI_QLOGIC_FAS) += qlogicfas.o
66 obj-$(CONFIG_SCSI_QLOGIC_ISP) += qlogicisp.o
67 obj-$(CONFIG_SCSI_QLOGIC_1280) += qla1280.o
68 obj-$(CONFIG_SCSI_ACARD) += atp870u.o
69 obj-$(CONFIG_SCSI_INITIO) += initio.o
70 obj-$(CONFIG_SCSI_INIA100) += a100u2w.o
71 obj-$(CONFIG_SCSI_QLOGIC_FC) += qlogicfc.o
72 obj-$(CONFIG_SCSI_AHA152X) += aha152x.o
73 obj-$(CONFIG_SCSI_AHA1542) += aha1542.o
74 obj-$(CONFIG_SCSI_AHA1740) += aha1740.o
75 obj-$(CONFIG_SCSI_AIC7XXX) += aic7xxx.o
76 obj-$(CONFIG_SCSI_IPS) += ips.o
77 obj-$(CONFIG_SCSI_DC390T) += tmscsim.o
78 obj-$(CONFIG_SCSI_AM53C974) += AM53C974.o
79 obj-$(CONFIG_SCSI_BUSLOGIC) += BusLogic.o
80 obj-$(CONFIG_SCSI_EATA_DMA) += eata_dma.o
81 obj-$(CONFIG_SCSI_EATA_PIO) += eata_pio.o
82 obj-$(CONFIG_SCSI_U14_34F) += u14-34f.o
83 obj-$(CONFIG_SCSI_SUNESP) += esp.o
84 obj-$(CONFIG_SCSI_QLOGICPTI) += qlogicpti.o
85 obj-$(CONFIG_SCSI_MESH) += mesh.o
86 obj-$(CONFIG_SCSI_MAC53C94) += mac53c94.o
87 obj-$(CONFIG_SCSI_GDTH) += gdth.o
89 obj-$(CONFIG_SCSI_DEBUG) += scsi_debug.o
91 obj-$(CONFIG_SCSI_FUTURE_DOMAIN)+= fdomain.o
92 obj-$(CONFIG_SCSI_IN2000) += in2000.o
93 obj-$(CONFIG_SCSI_GENERIC_NCR5380) += g_NCR5380.o
94 obj-$(CONFIG_SCSI_NCR53C7xx) += 53c7,8xx.o
95 obj-$(CONFIG_SCSI_NCR53C8XX) += ncr53c8xx.o
96 obj-$(CONFIG_SCSI_SYM53C8XX) += sym53c8xx.o
97 obj-$(CONFIG_SCSI_PAS16) += pas16.o
98 obj-$(CONFIG_SCSI_SEAGATE) += seagate.o
99 obj-$(CONFIG_SCSI_FD_8xx) += seagate.o
100 obj-$(CONFIG_SCSI_7000FASST) += wd7000.o
101 obj-$(CONFIG_SCSI_IBMMCA) += ibmmca.o
102 obj-$(CONFIG_SCSI_FD_MCS) += fd_mcs.o
103 obj-$(CONFIG_SCSI_T128) += t128.o
104 obj-$(CONFIG_SCSI_DMX3191D) += dmx3191d.o
105 obj-$(CONFIG_SCSI_DTC3280) += dtc.o
106 obj-$(CONFIG_SCSI_ULTRASTOR) += ultrastor.o
107 obj-$(CONFIG_SCSI_PLUTO) += pluto.o
108 obj-$(CONFIG_SCSI_FCAL) += fcal.o
109 obj-$(CONFIG_SCSI_EATA) += eata.o
110 obj-$(CONFIG_SCSI_NCR53C406A) += NCR53c406a.o
111 obj-$(CONFIG_SCSI_MEGARAID) += megaraid.o
112 obj-$(CONFIG_SCSI_SYM53C416) += sym53c416.o
113 obj-$(CONFIG_BLK_DEV_IDESCSI) += ide-scsi.o
114 obj-$(CONFIG_JAZZ_ESP) += NCR53C9x.o jazz_esp.o
115 obj-$(CONFIG_SCSI_DECNCR) += NCR53C9x.o dec_esp.o
116 obj-$(CONFIG_SUN3X_ESP) += NCR53C9x.o sun3x_esp.o
117 obj-$(CONFIG_BLK_DEV_3W_XXXX_RAID) += 3w-xxxx.o
119 scsi_mod-objs := hosts.o scsi.o scsi_ioctl.o constants.o \
120 scsicam.o scsi_proc.o scsi_error.o \
121 scsi_obsolete.o scsi_queue.o scsi_lib.o \
122 scsi_merge.o scsi_dma.o scsi_scan.o \
123 scsi_syms.o
124 sr_mod-objs := sr.o sr_ioctl.o sr_vendor.o
125 initio-objs := ini9100u.o i91uscsi.o
126 a100u2w-objs := inia100.o i60uscsi.o
128 # Extract lists of the multi-part drivers.
129 # The 'int-*' lists are the intermediate files used to build the multi's.
130 multi-y := $(filter $(list-multi), $(obj-y))
131 multi-m := $(filter $(list-multi), $(obj-m))
132 int-y := $(sort $(foreach m, $(multi-y), $($(basename $(m))-objs)))
133 int-m := $(sort $(foreach m, $(multi-m), $($(basename $(m))-objs)))
135 # Files that are both resident and modular: remove from modular.
136 obj-m := $(filter-out $(obj-y), $(obj-m))
137 int-m := $(filter-out $(int-y), $(int-m))
139 # Take multi-part drivers out of obj-y and put components in.
140 obj-y := $(filter-out $(list-multi), $(obj-y)) $(int-y)
142 O_OBJS := $(filter-out $(export-objs), $(obj-y))
143 OX_OBJS := $(filter $(export-objs), $(obj-y))
144 M_OBJS := $(sort $(filter-out $(export-objs), $(obj-m)))
145 MX_OBJS := $(sort $(filter $(export-objs), $(obj-m)))
146 MI_OBJS := $(sort $(filter-out $(export-objs), $(int-m)))
147 MIX_OBJS := $(sort $(filter $(export-objs), $(int-m)))
149 include $(TOPDIR)/Rules.make
152 scsi_mod.o: $(scsi_mod-objs)
153 $(LD) -r -o $@ $(scsi_mod-objs)
155 sr_mod.o: $(sr_mod-objs)
156 $(LD) -r -o $@ $(sr_mod-objs)
158 initio.o: $(initio-objs)
159 $(LD) -r -o $@ $(initio-objs)
161 a100u2w.o: $(a100u2w-objs)
162 $(LD) -r -o $@ $(a100u2w-objs)
165 53c8xx_d.h: 53c7,8xx.scr script_asm.pl
166 ln -sf 53c7,8xx.scr fake8.c
167 $(CPP) $(CPPFLAGS) -traditional -DCHIP=810 fake8.c | grep -v '^#' | $(PERL) script_asm.pl
168 mv script.h 53c8xx_d.h
169 mv scriptu.h 53c8xx_u.h
170 rm fake8.c
172 53c8xx_u.h: 53c8xx_d.h
174 53c7xx_d.h: 53c7xx.scr script_asm.pl
175 ln -sf 53c7xx.scr fake7.c
176 $(CPP) $(CPPFLAGS) -traditional -DCHIP=710 fake7.c | grep -v '^#' | $(PERL) -s script_asm.pl -ncr7x0_family
177 mv script.h 53c7xx_d.h
178 mv scriptu.h 53c7xx_u.h
179 rm fake7.c
181 53c7xx_u.h: 53c7xx_d.h
183 53c7xx.o : 53c7xx_d.h
185 sim710_d.h: sim710.scr script_asm.pl
186 ln -sf sim710.scr fake7.c
187 $(CPP) $(CPPFLAGS) -traditional -DCHIP=710 fake7.c | grep -v '^#' | $(PERL) -s script_asm.pl -ncr7x0_family
188 mv script.h sim710_d.h
189 mv scriptu.h sim710_u.h
190 rm fake7.c
192 sim710_u.h: sim710_d.h
194 sim710.o : sim710_d.h