Makefile: Set shell to /bin/bash
[linux-libre-firmware.git] / Makefile
1 # Copyright (C) 2017, 2018 Jason Self <j@jxself.org>
2 #
3 # This program is free software: you can redistribute it and/or modify
4 # it under the terms of the GNU General Public License as published by
5 # the Free Software Foundation, either version 2 of the License, or
6 # (at your option) any later version.
7 #
8 # This program is distributed in the hope that it will be useful,
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11 # GNU General Public License for more details.
12 #
13 # You should have received a copy of the GNU General Public License
14 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
15
16 shell=/bin/bash
17 prefix=/lib/firmware
18 install_program=install
19
20 .PHONY: all test clean install a56 as31 aica ath9k_htc_toolchain ath9k_htc atusb av7110 b43-tools carl9170fw-toolchain carl9170fw cis-tools cis dsp56k ihex2fw isci keyspan_pda openfwwf usbdux
21
22 all: aica ath9k_htc atusb av7110 carl9170fw cis dsp56k isci keyspan_pda openfwwf usbdux
23
24 a56:
25         cd a56 && $(MAKE)
26
27 as31:
28         cd as31 && ./configure && $(MAKE)
29
30 aica:
31         cd aica/arm && $(MAKE)
32
33 ath9k_htc_toolchain:
34         cd ath9k_htc && $(MAKE) toolchain
35
36 ath9k_htc: ath9k_htc_toolchain
37         cd ath9k_htc && $(MAKE) -C target_firmware
38
39 atusb:
40         cd atusb && $(MAKE) atusb.dfu
41
42 av7110:
43         cd av7110 && $(MAKE)
44
45 b43-tools:
46         cd b43-tools/assembler && $(MAKE)
47
48 carl9170fw-toolchain:
49         cd carl9170fw && $(MAKE) -C toolchain
50
51 carl9170fw: carl9170fw-toolchain
52         cd carl9170fw && ./autogen.sh
53
54 cis: cis-tools
55         cd cis && $(MAKE)
56
57 cis-tools:
58         cd cis-tools && $(MAKE)
59
60 dsp56k: a56
61         cd dsp56k && $(MAKE)
62
63 ihex2fw:
64         cd ihex2fw && $(MAKE)
65
66 isci:
67         cd isci && $(MAKE)
68
69 keyspan_pda: ihex2fw as31
70         cd keyspan_pda && $(MAKE)
71
72 openfwwf: b43-tools
73         cd openfwwf && $(MAKE)
74
75 usbdux: as31
76         cd usbdux && $(MAKE) -f Makefile_dux
77
78 test:
79         @echo This function is not implemented.
80
81 clean:
82         cd aica/arm && $(MAKE) clean
83         cd a56 && $(MAKE) clean
84         if [ -a as31/Makefile ]; then cd as31 && $(MAKE) clean; fi;
85         cd ath9k_htc && $(MAKE) toolchain-clean
86         cd ath9k_htc && $(MAKE) -C target_firmware clean
87         cd atusb && $(MAKE) clean
88         cd av7110 && $(MAKE) clean
89         cd carl9170fw/toolchain && $(MAKE) clean
90         if [ -a carl9170fw/Makefile ]; then cd carl9170fw && $(MAKE) clean; fi;
91         cd dsp56k && $(MAKE) clean
92         cd ihex2fw && $(MAKE) clean
93         cd cis-tools && $(MAKE) clean
94         cd cis && $(MAKE) clean
95         cd isci && $(MAKE) clean
96         cd keyspan_pda && $(MAKE) clean
97         cd openfwwf && $(MAKE) clean
98         cd usbdux && $(MAKE) -f Makefile_dux clean
99
100 install:
101         if [ -a aica/arm/aica_firmware.bin ]; then $(install_program) -D aica/arm/aica_firmware.bin $(prefix)/aica_firmware.bin; fi;
102         if [ -a ath9k_htc/target_firmware/htc_9271.fw ]; then $(install_program) -D ath9k_htc/target_firmware/htc_9271.fw $(prefix)/ath9k_htc/htc_9271-1.4.0.fw && \
103                 ln -s ath9k_htc/htc_9271-1.4.0.fw $(prefix)/htc_9271.fw; fi;
104         if [ -a ath9k_htc/target_firmware/htc_7010.fw ]; then $(install_program) -D ath9k_htc/target_firmware/htc_7010.fw $(prefix)/ath9k_htc/htc_7010-1.4.0.fw && \
105                 ln -s ath9k_htc/htc_7010-1.4.0.fw $(prefix)/htc_7010.fw; fi;
106         if [ -a atusb/atusb.dfu ]; then $(install_program) -D atusb/atusb.dfu $(prefix)/atusb/atusb.dfu; fi;
107         if [ -a av7110/bootcode.bin ]; then $(install_program) -D av7110/bootcode.bin $(prefix)/av7110/bootcode.bin; fi;
108         if [ -a cis/3CCFEM556.cis ]; then $(install_program) -D cis/3CCFEM556.cis $(prefix)/cis/3CCFEM556.cis; fi;
109         if [ -a cis/3CXEM556.cis ]; then $(install_program) -D cis/3CXEM556.cis $(prefix)/cis/3CXEM556.cis; fi;
110         if [ -a cis/COMpad2.cis ]; then $(install_program) -D cis/COMpad2.cis $(prefix)/cis/COMpad2.cis; fi;
111         if [ -a cis/COMpad4.cis ]; then $(install_program) -D cis/COMpad4.cis $(prefix)/cis/COMpad4.cis; fi;
112         if [ -a cis/DP83903.cis ]; then $(install_program) -D cis/DP83903.cis $(prefix)/cis/DP83903.cis; fi;
113         if [ -a cis/LA-PCM.cis ]; then $(install_program) -D cis/LA-PCM.cis $(prefix)/cis/LA-PCM.cis; fi;
114         if [ -a cis/MT5634ZLX.cis ]; then $(install_program) -D cis/MT5634ZLX.cis $(prefix)/cis/MT5634ZLX.cis; fi;
115         if [ -a cis/NE2K.cis ]; then $(install_program) -D cis/NE2K.cis $(prefix)/cis/NE2K.cis; fi;
116         if [ -a cis/PCMLM28.cis ]; then $(install_program) -D cis/PCMLM28.cis $(prefix)/cis/PCMLM28.cis; fi;
117         if [ -a cis/PE520.cis ]; then $(install_program) -D cis/PE520.cis $(prefix)/cis/PE520.cis; fi;
118         if [ -a cis/PE-200.cis ]; then $(install_program) -D cis/PE-200.cis $(prefix)/cis/PE-200.cis; fi;
119         if [ -a cis/RS-COM-2P.cis ]; then $(install_program) -D cis/RS-COM-2P.cis $(prefix)/cis/RS-COM-2P.cis; fi;
120         if [ -a cis/SW_7xx_SER.cis ]; then $(install_program) -D cis/SW_7xx_SER.cis $(prefix)/cis/SW_7xx_SER.cis; fi;
121         if [ -a cis/SW_8xx_SER.cis ]; then $(install_program) -D cis/SW_8xx_SER.cis $(prefix)/cis/SW_8xx_SER.cis; fi;
122         if [ -a cis/SW_555_SER.cis ]; then $(install_program) -D cis/SW_555_SER.cis $(prefix)/cis/SW_555_SER.cis; fi;
123         if [ -a cis/tamarack.cis ]; then $(install_program) -D cis/tamarack.cis $(prefix)/cis/tamarack.cis; fi;
124         if [ -a carl9170fw/carlfw/carl9170.fw ]; then cd carl9170fw && ./autogen.sh install &&  $(install_program) -D carl9170-1.fw $(prefix)/carl9170-1.fw; fi;
125         if [ -a dsp56k/bootstrap.bin ]; then $(install_program) -D dsp56k/bootstrap.bin $(prefix)/dsp56k/bootstrap.bin; fi;
126         if [ -a isci/isci_firmware.bin ]; then $(install_program) -D isci/isci_firmware.bin $(prefix)/isci/isci_firmware.bin; fi
127         if [ -a keyspan_pda/keyspan_pda.fw ]; then $(install_program) -D isci/isci_firmware.bin $(prefix)/keyspan_pda/keyspan_pda.fw; fi
128         if [ -a keyspan_pda/keyspan_pda.fw ]; then $(install_program) -D isci/isci_firmware.bin $(prefix)/keyspan_pda/xircom_pgs.fw; fi
129         if [ -a openfwwf/ucode5.fw ]; then $(install_program) -D openfwwf/ucode5.fw $(prefix)/b43-open/ucode5.fw; fi
130         if [ -a openfwwf/b0g0bsinitvals5.fw ]; then $(install_program) -D openfwwf/b0g0bsinitvals5.fw $(prefix)/b43-open/b0g0bsinitvals5.fw; fi
131         if [ -a openfwwf/b0g0initvals5.fw ]; then $(install_program) -D openfwwf/b0g0initvals5.fw $(prefix)/b43-open/b0g0initvals5.fw; fi
132         if [ -a usbdux/usbduxfast_firmware.bin ]; then $(install_program) -D usbdux/usbduxfast_firmware.bin $(prefix)/usbduxfast_firmware.bin; fi
133         if [ -a usbdux/usbdux_firmware.bin ]; then $(install_program) -D usbdux/usbdux_firmware.bin $(prefix)/usbdux_firmware.bin; fi
134         if [ -a usbdux/usbduxsigma_firmware.bin ]; then $(install_program) -D usbdux/usbduxsigma_firmware.bin $(prefix)/usbduxsigma_firmware.bin; fi