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