^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) # SPDX-License-Identifier: GPL-2.0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) # Makefile for the Linux aic7xxx SCSI driver.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) # $Id: //depot/linux-aic79xx-2.5.0/drivers/scsi/aic7xxx/Makefile#8 $
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) # Let kbuild descend into aicasm when cleaning
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) subdir- += aicasm
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) obj-$(CONFIG_SCSI_AIC7XXX) += aic7xxx.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) obj-$(CONFIG_SCSI_AIC79XX) += aic79xx.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) # Core Fast -> U160 files
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) aic7xxx-y += aic7xxx_core.o \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) aic7xxx_93cx6.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) aic7xxx-$(CONFIG_EISA) += aic7770.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) aic7xxx-$(CONFIG_PCI) += aic7xxx_pci.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) aic7xxx-$(CONFIG_AIC7XXX_REG_PRETTY_PRINT) += aic7xxx_reg_print.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) # Platform Specific Fast -> U160 Files
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) aic7xxx-y += aic7xxx_osm.o \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) aic7xxx_proc.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) aic7xxx-$(CONFIG_EISA) += aic7770_osm.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) aic7xxx-$(CONFIG_PCI) += aic7xxx_osm_pci.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) # Core U320 files
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) aic79xx-y += aic79xx_core.o \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) aic79xx_pci.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) aic79xx-$(CONFIG_AIC79XX_REG_PRETTY_PRINT) += aic79xx_reg_print.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) # Platform Specific U320 Files
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) aic79xx-y += aic79xx_osm.o \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) aic79xx_proc.o \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) aic79xx_osm_pci.o
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) ifdef WARNINGS_BECOME_ERRORS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) ccflags-y += -Werror
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) # Files generated that shall be removed upon make clean
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) clean-files := aic7xxx_seq.h aic7xxx_reg.h aic7xxx_reg_print.c
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) clean-files += aic79xx_seq.h aic79xx_reg.h aic79xx_reg_print.c
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) # Dependencies for generated files need to be listed explicitly
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) $(addprefix $(obj)/,$(aic7xxx-y)): $(obj)/aic7xxx_seq.h $(obj)/aic7xxx_reg.h
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) $(addprefix $(obj)/,$(aic79xx-y)): $(obj)/aic79xx_seq.h $(obj)/aic79xx_reg.h
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) aic7xxx-gen-$(CONFIG_AIC7XXX_BUILD_FIRMWARE) := $(obj)/aic7xxx_reg.h
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) aic7xxx-gen-$(CONFIG_AIC7XXX_REG_PRETTY_PRINT) += $(obj)/aic7xxx_reg_print.c
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) aicasm-7xxx-opts-$(CONFIG_AIC7XXX_REG_PRETTY_PRINT) := \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) -p $(obj)/aic7xxx_reg_print.c -i aic7xxx_osm.h
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) ifeq ($(CONFIG_AIC7XXX_BUILD_FIRMWARE),y)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) $(obj)/aic7xxx_seq.h: $(src)/aic7xxx.seq $(src)/aic7xxx.reg $(obj)/aicasm/aicasm
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) $(obj)/aicasm/aicasm -I$(srctree)/$(src) -r $(obj)/aic7xxx_reg.h \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) $(aicasm-7xxx-opts-y) -o $(obj)/aic7xxx_seq.h \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) $(srctree)/$(src)/aic7xxx.seq
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) $(aic7xxx-gen-y): $(objtree)/$(obj)/aic7xxx_seq.h
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) @true
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) $(obj)/aic7xxx_reg_print.c: $(src)/aic7xxx_reg_print.c_shipped
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) aic79xx-gen-$(CONFIG_AIC79XX_BUILD_FIRMWARE) := $(obj)/aic79xx_reg.h
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) aic79xx-gen-$(CONFIG_AIC79XX_REG_PRETTY_PRINT) += $(obj)/aic79xx_reg_print.c
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) aicasm-79xx-opts-$(CONFIG_AIC79XX_REG_PRETTY_PRINT) := \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) -p $(obj)/aic79xx_reg_print.c -i aic79xx_osm.h
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) ifeq ($(CONFIG_AIC79XX_BUILD_FIRMWARE),y)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) $(obj)/aic79xx_seq.h: $(src)/aic79xx.seq $(src)/aic79xx.reg $(obj)/aicasm/aicasm
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76) $(obj)/aicasm/aicasm -I$(srctree)/$(src) -r $(obj)/aic79xx_reg.h \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77) $(aicasm-79xx-opts-y) -o $(obj)/aic79xx_seq.h \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) $(srctree)/$(src)/aic79xx.seq
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80) $(aic79xx-gen-y): $(objtree)/$(obj)/aic79xx_seq.h
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81) @true
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82) else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 83) $(obj)/aic79xx_reg_print.c: $(src)/aic79xx_reg_print.c_shipped
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 84) endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 85)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 86) $(obj)/aicasm/aicasm: $(srctree)/$(src)/aicasm/*.[chyl]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 87) $(MAKE) -C $(srctree)/$(src)/aicasm OUTDIR=$(shell pwd)/$(obj)/aicasm/