2 # Makefile for the Linux aic7xxx SCSI driver.
4 # $Id: //depot/linux-aic79xx-2.5.0/drivers/scsi/aic7xxx/Makefile#8 $
7 # Let kbuild descend into aicasm when cleaning
10 obj-$(CONFIG_SCSI_AIC7XXX) += aic7xxx.o
11 obj-$(CONFIG_SCSI_AIC79XX) += aic79xx.o
13 # Core Fast -> U160 files
14 aic7xxx-y += aic7xxx_core.o \
16 aic7xxx-$(CONFIG_EISA) += aic7770.o
17 aic7xxx-$(CONFIG_PCI) += aic7xxx_pci.o
18 aic7xxx-$(CONFIG_AIC7XXX_REG_PRETTY_PRINT) += aic7xxx_reg_print.o
20 # Platform Specific Fast -> U160 Files
21 aic7xxx-y += aic7xxx_osm.o \
23 aic7xxx-$(CONFIG_EISA) += aic7770_osm.o
24 aic7xxx-$(CONFIG_PCI) += aic7xxx_osm_pci.o
27 aic79xx-y += aic79xx_core.o \
29 aic79xx-$(CONFIG_AIC79XX_REG_PRETTY_PRINT) += aic79xx_reg_print.o
31 # Platform Specific U320 Files
32 aic79xx-y += aic79xx_osm.o \
36 ccflags-y += -Idrivers/scsi
37 ifdef WARNINGS_BECOME_ERRORS
41 # Files generated that shall be removed upon make clean
42 clean-files := aic7xxx_seq.h aic7xxx_reg.h aic7xxx_reg_print.c
43 clean-files += aic79xx_seq.h aic79xx_reg.h aic79xx_reg_print.c
45 # Dependencies for generated files need to be listed explicitly
47 $(addprefix $(src)/,$(aic7xxx-y:.o=.c)): $(obj)/aic7xxx_seq.h $(obj)/aic7xxx_reg.h
48 $(addprefix $(src)/,$(aic79xx-y:.o=.c)): $(obj)/aic79xx_seq.h $(obj)/aic79xx_reg.h
50 aic7xxx-gen-$(CONFIG_AIC7XXX_BUILD_FIRMWARE) := $(obj)/aic7xxx_reg.h
51 aic7xxx-gen-$(CONFIG_AIC7XXX_REG_PRETTY_PRINT) += $(obj)/aic7xxx_reg_print.c
53 aicasm-7xxx-opts-$(CONFIG_AIC7XXX_REG_PRETTY_PRINT) := \
54 -p $(obj)/aic7xxx_reg_print.c -i aic7xxx_osm.h
56 ifeq ($(CONFIG_AIC7XXX_BUILD_FIRMWARE),y)
57 $(obj)/aic7xxx_seq.h: $(src)/aic7xxx.seq $(src)/aic7xxx.reg $(obj)/aicasm/aicasm
58 $(obj)/aicasm/aicasm -I$(src) -r $(obj)/aic7xxx_reg.h \
59 $(aicasm-7xxx-opts-y) -o $(obj)/aic7xxx_seq.h \
62 $(aic7xxx-gen-y): $(obj)/aic7xxx_seq.h
64 $(obj)/aic7xxx_reg_print.c: $(src)/aic7xxx_reg_print.c_shipped
67 aic79xx-gen-$(CONFIG_AIC79XX_BUILD_FIRMWARE) := $(obj)/aic79xx_reg.h
68 aic79xx-gen-$(CONFIG_AIC79XX_REG_PRETTY_PRINT) += $(obj)/aic79xx_reg_print.c
70 aicasm-79xx-opts-$(CONFIG_AIC79XX_REG_PRETTY_PRINT) := \
71 -p $(obj)/aic79xx_reg_print.c -i aic79xx_osm.h
73 ifeq ($(CONFIG_AIC79XX_BUILD_FIRMWARE),y)
74 $(obj)/aic79xx_seq.h: $(src)/aic79xx.seq $(src)/aic79xx.reg $(obj)/aicasm/aicasm
75 $(obj)/aicasm/aicasm -I$(src) -r $(obj)/aic79xx_reg.h \
76 $(aicasm-79xx-opts-y) -o $(obj)/aic79xx_seq.h \
79 $(aic79xx-gen-y): $(obj)/aic79xx_seq.h
81 $(obj)/aic79xx_reg_print.c: $(src)/aic79xx_reg_print.c_shipped
84 $(obj)/aicasm/aicasm: $(src)/aicasm/*.[chyl]
85 $(MAKE) -C $(src)/aicasm