1# 2# Makefile for the Linux aic7xxx SCSI driver. 3# 4# $Id: //depot/linux-aic79xx-2.5.0/drivers/scsi/aic7xxx/Makefile#8 $ 5# 6 7# Let kbuild descend into aicasm when cleaning 8subdir- += aicasm 9 10obj-$(CONFIG_SCSI_AIC7XXX) += aic7xxx.o 11obj-$(CONFIG_SCSI_AIC79XX) += aic79xx.o 12 13# Core Fast -> U160 files 14aic7xxx-y += aic7xxx_core.o \ 15 aic7xxx_93cx6.o 16aic7xxx-$(CONFIG_EISA) += aic7770.o 17aic7xxx-$(CONFIG_PCI) += aic7xxx_pci.o 18aic7xxx-$(CONFIG_AIC7XXX_REG_PRETTY_PRINT) += aic7xxx_reg_print.o 19 20# Platform Specific Fast -> U160 Files 21aic7xxx-y += aic7xxx_osm.o \ 22 aic7xxx_proc.o 23aic7xxx-$(CONFIG_EISA) += aic7770_osm.o 24aic7xxx-$(CONFIG_PCI) += aic7xxx_osm_pci.o 25 26# Core U320 files 27aic79xx-y += aic79xx_core.o \ 28 aic79xx_pci.o 29aic79xx-$(CONFIG_AIC79XX_REG_PRETTY_PRINT) += aic79xx_reg_print.o 30 31# Platform Specific U320 Files 32aic79xx-y += aic79xx_osm.o \ 33 aic79xx_proc.o \ 34 aic79xx_osm_pci.o 35 36EXTRA_CFLAGS += -Idrivers/scsi 37ifdef WARNINGS_BECOME_ERRORS 38EXTRA_CFLAGS += -Werror 39endif 40#EXTRA_CFLAGS += -g 41 42# Files generated that shall be removed upon make clean 43clean-files := aic7xxx_seq.h aic7xxx_reg.h aic7xxx_reg_print.c 44clean-files += aic79xx_seq.h aic79xx_reg.h aic79xx_reg_print.c 45 46# Dependencies for generated files need to be listed explicitly 47 48$(obj)/aic7xxx_core.o: $(obj)/aic7xxx_seq.h 49$(obj)/aic79xx_core.o: $(obj)/aic79xx_seq.h 50$(obj)/aic79xx_reg_print.c: $(src)/aic79xx_reg_print.c_shipped 51$(obj)/aic7xxx_reg_print.c: $(src)/aic7xxx_reg_print.c_shipped 52 53$(addprefix $(obj)/,$(aic7xxx-y)): $(obj)/aic7xxx_reg.h 54$(addprefix $(obj)/,$(aic79xx-y)): $(obj)/aic79xx_reg.h 55 56aic7xxx-gen-$(CONFIG_AIC7XXX_BUILD_FIRMWARE) := $(obj)/aic7xxx_seq.h \ 57 $(obj)/aic7xxx_reg.h 58aic7xxx-gen-$(CONFIG_AIC7XXX_REG_PRETTY_PRINT) += $(obj)/aic7xxx_reg_print.c 59 60aicasm-7xxx-opts-$(CONFIG_AIC7XXX_REG_PRETTY_PRINT) := \ 61 -p $(obj)/aic7xxx_reg_print.c -i aic7xxx_osm.h 62 63ifeq ($(CONFIG_AIC7XXX_BUILD_FIRMWARE),y) 64# Create a dependency chain in generated files 65# to avoid concurrent invocations of the single 66# rule that builds them all. 67aic7xxx_seq.h: aic7xxx_reg.h 68ifeq ($(CONFIG_AIC7XXX_REG_PRETTY_PRINT),y) 69aic7xxx_reg.h: aic7xxx_reg_print.c 70endif 71$(aic7xxx-gen-y): $(src)/aic7xxx.seq $(src)/aic7xxx.reg $(obj)/aicasm/aicasm 72 $(obj)/aicasm/aicasm -I$(src) -r $(obj)/aic7xxx_reg.h \ 73 $(aicasm-7xxx-opts-y) -o $(obj)/aic7xxx_seq.h \ 74 $(src)/aic7xxx.seq 75endif 76 77aic79xx-gen-$(CONFIG_AIC79XX_BUILD_FIRMWARE) := $(obj)/aic79xx_seq.h \ 78 $(obj)/aic79xx_reg.h 79aic79xx-gen-$(CONFIG_AIC79XX_REG_PRETTY_PRINT) += $(obj)/aic79xx_reg_print.c 80 81aicasm-79xx-opts-$(CONFIG_AIC79XX_REG_PRETTY_PRINT) := \ 82 -p $(obj)/aic79xx_reg_print.c -i aic79xx_osm.h 83 84ifeq ($(CONFIG_AIC79XX_BUILD_FIRMWARE),y) 85# Create a dependency chain in generated files 86# to avoid concurrent invocations of the single 87# rule that builds them all. 88aic79xx_seq.h: aic79xx_reg.h 89ifeq ($(CONFIG_AIC79XX_REG_PRETTY_PRINT),y) 90aic79xx_reg.h: aic79xx_reg_print.c 91endif 92$(aic79xx-gen-y): $(src)/aic79xx.seq $(src)/aic79xx.reg $(obj)/aicasm/aicasm 93 $(obj)/aicasm/aicasm -I$(src) -r $(obj)/aic79xx_reg.h \ 94 $(aicasm-79xx-opts-y) -o $(obj)/aic79xx_seq.h \ 95 $(src)/aic79xx.seq 96endif 97 98$(obj)/aicasm/aicasm: $(src)/aicasm/*.[chyl] 99 $(MAKE) -C $(src)/aicasm 100