]>
Commit | Line | Data |
---|---|---|
d5f5ea73 | 1 | ## |
a986cfff | 2 | ## This file is part of the sigrok-firmware-fx2lafw project. |
d5f5ea73 | 3 | ## |
36074319 | 4 | ## Copyright (C) 2013 Uwe Hermann <uwe@hermann-uwe.de> |
88d4ba3e | 5 | ## Copyright (C) 2015 Daniel Elstner <daniel.kitta@gmail.com> |
d5f5ea73 UH |
6 | ## |
7 | ## This program is free software; you can redistribute it and/or modify | |
8 | ## it under the terms of the GNU General Public License as published by | |
9 | ## the Free Software Foundation; either version 2 of the License, or | |
10 | ## (at your option) any later version. | |
11 | ## | |
12 | ## This program is distributed in the hope that it will be useful, | |
13 | ## but WITHOUT ANY WARRANTY; without even the implied warranty of | |
14 | ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
15 | ## GNU General Public License for more details. | |
16 | ## | |
17 | ## You should have received a copy of the GNU General Public License | |
18 | ## along with this program; if not, write to the Free Software | |
19 | ## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | |
20 | ## | |
21 | ||
88d4ba3e DE |
22 | GNUMAKEFLAGS = --no-print-directory |
23 | SUFFIXES = .a51 .c .fw .ihx .rel | |
60b99ccc | 24 | |
88d4ba3e DE |
25 | # Flags for firmware hex file generation |
26 | SDCC_LINK_FLAGS = --code-size 0x1c00 --xram-size 0x0200 --xram-loc 0x1c00 -Wl"-b DSCR_AREA=0x1e00" -Wl"-b INT2JT=0x1f00" | |
6139dad4 | 27 | SDCC_LINK_FLAGS_HANTEK_6022BE = --code-size 0x3c00 --xram-size 0x0100 --xram-loc 0x3c00 -Wl"-b DSCR_AREA=0x3d00" -Wl"-b INT2JT=0x3f00" |
ce1d0a86 | 28 | SDCC_LINK_FLAGS_SAINSMART_DDS120 = --code-size 0x3c00 --xram-size 0x0100 --xram-loc 0x3c00 -Wl"-b DSCR_AREA=0x3d00" -Wl"-b INT2JT=0x3f00" |
36074319 | 29 | |
88d4ba3e DE |
30 | # Include paths |
31 | as_includes = -I$(srcdir)/include | |
32 | c_includes = -I$(srcdir)/include -I$(srcdir)/fx2lib/include | |
36074319 | 33 | |
88d4ba3e DE |
34 | # Binary firmware tarball basename |
35 | distdir_bin = $(PACKAGE)-bin-$(VERSION) | |
36074319 | 36 | |
88d4ba3e DE |
37 | # Basename of directory stamp files |
38 | dirstamp = .dirstamp | |
39 | ||
40 | dirstamps = \ | |
41 | fx2lib/lib/$(dirstamp) \ | |
42 | fx2lib/lib/interrupts/$(dirstamp) \ | |
43 | hw/braintechnology-usb-lps/$(dirstamp) \ | |
44 | hw/cwav-usbeeax/$(dirstamp) \ | |
45 | hw/cwav-usbeedx/$(dirstamp) \ | |
46 | hw/cwav-usbeesx/$(dirstamp) \ | |
66255d9c | 47 | hw/cwav-usbeezx/$(dirstamp) \ |
88d4ba3e DE |
48 | hw/cypress-fx2/$(dirstamp) \ |
49 | hw/saleae-logic/$(dirstamp) \ | |
50 | hw/sigrok-fx2-8ch/$(dirstamp) \ | |
6139dad4 | 51 | hw/sigrok-fx2-16ch/$(dirstamp) \ |
ce1d0a86 BL |
52 | hw/hantek-6022be/$(dirstamp) \ |
53 | hw/sainsmart-dds120/$(dirstamp) | |
88d4ba3e DE |
54 | |
55 | # Final firmware files | |
56 | firmware_binaries = \ | |
57 | hw/braintechnology-usb-lps/fx2lafw-braintechnology-usb-lps.fw \ | |
58 | hw/cwav-usbeeax/fx2lafw-cwav-usbeeax.fw \ | |
59 | hw/cwav-usbeedx/fx2lafw-cwav-usbeedx.fw \ | |
60 | hw/cwav-usbeesx/fx2lafw-cwav-usbeesx.fw \ | |
66255d9c | 61 | hw/cwav-usbeezx/fx2lafw-cwav-usbeezx.fw \ |
88d4ba3e DE |
62 | hw/cypress-fx2/fx2lafw-cypress-fx2.fw \ |
63 | hw/saleae-logic/fx2lafw-saleae-logic.fw \ | |
64 | hw/sigrok-fx2-8ch/fx2lafw-sigrok-fx2-8ch.fw \ | |
6139dad4 | 65 | hw/sigrok-fx2-16ch/fx2lafw-sigrok-fx2-16ch.fw \ |
ce1d0a86 BL |
66 | hw/hantek-6022be/hantek-6022be.fw \ |
67 | hw/sainsmart-dds120/sainsmart-dds120.fw | |
88d4ba3e DE |
68 | |
69 | fx2lafw_headers = \ | |
70 | include/command.h \ | |
71 | include/dscr.inc \ | |
72 | include/fx2lafw.h \ | |
73 | include/gpif-acquisition.h | |
74 | ||
75 | fx2lafw_sources = \ | |
76 | fx2lafw.c \ | |
77 | gpif-acquisition.c | |
78 | ||
79 | fx2lafw_objects = \ | |
80 | fx2lafw.rel \ | |
81 | gpif-acquisition.rel | |
82 | ||
6139dad4 UH |
83 | hantek_6022be_sources = \ |
84 | hantek_6022be.c | |
85 | ||
86 | hantek_6022be_objects = \ | |
87 | hantek_6022be.rel | |
88 | ||
ce1d0a86 BL |
89 | sainsmart_dds120_sources = \ |
90 | sainsmart_dds120.c | |
91 | ||
92 | sainsmart_dds120_objects = \ | |
93 | sainsmart_dds120.rel | |
94 | ||
88d4ba3e DE |
95 | fx2lib_headers = \ |
96 | fx2lib/include/autovector.h \ | |
97 | fx2lib/include/delay.h \ | |
98 | fx2lib/include/eputils.h \ | |
99 | fx2lib/include/fx2ints.h \ | |
100 | fx2lib/include/fx2macros.h \ | |
101 | fx2lib/include/fx2regs.h \ | |
102 | fx2lib/include/fx2types.h \ | |
103 | fx2lib/include/gpif.h \ | |
104 | fx2lib/include/i2c.h \ | |
105 | fx2lib/include/lights.h \ | |
106 | fx2lib/include/serial.h \ | |
107 | fx2lib/include/setupdat.h | |
108 | ||
109 | fx2lib_sources = \ | |
110 | fx2lib/lib/delay.c \ | |
111 | fx2lib/lib/eputils.c \ | |
112 | fx2lib/lib/gpif.c \ | |
113 | fx2lib/lib/i2c.c \ | |
114 | fx2lib/lib/int4av.a51 \ | |
115 | fx2lib/lib/serial.c \ | |
116 | fx2lib/lib/delay.c \ | |
117 | fx2lib/lib/setupdat.c \ | |
118 | fx2lib/lib/usbav.a51 | |
119 | ||
120 | fx2lib_objects = \ | |
121 | fx2lib/lib/delay.rel \ | |
122 | fx2lib/lib/eputils.rel \ | |
123 | fx2lib/lib/gpif.rel \ | |
124 | fx2lib/lib/i2c.rel \ | |
125 | fx2lib/lib/int4av.rel \ | |
126 | fx2lib/lib/serial.rel \ | |
127 | fx2lib/lib/delay.rel \ | |
128 | fx2lib/lib/setupdat.rel \ | |
129 | fx2lib/lib/usbav.rel | |
130 | ||
131 | fx2lib_ints_sources = \ | |
132 | fx2lib/lib/interrupts/ep0ack_isr.c \ | |
133 | fx2lib/lib/interrupts/ep0in_isr.c \ | |
134 | fx2lib/lib/interrupts/ep0out_isr.c \ | |
135 | fx2lib/lib/interrupts/ep0ping_isr.c \ | |
136 | fx2lib/lib/interrupts/ep1in_isr.c \ | |
137 | fx2lib/lib/interrupts/ep1out_isr.c \ | |
138 | fx2lib/lib/interrupts/ep1ping_isr.c \ | |
139 | fx2lib/lib/interrupts/ep2ef_isr.c \ | |
140 | fx2lib/lib/interrupts/ep2ff_isr.c \ | |
141 | fx2lib/lib/interrupts/ep2isoerr_isr.c \ | |
142 | fx2lib/lib/interrupts/ep2_isr.c \ | |
143 | fx2lib/lib/interrupts/ep2pf_isr.c \ | |
144 | fx2lib/lib/interrupts/ep2ping_isr.c \ | |
145 | fx2lib/lib/interrupts/ep4ef_isr.c \ | |
146 | fx2lib/lib/interrupts/ep4ff_isr.c \ | |
147 | fx2lib/lib/interrupts/ep4isoerr_isr.c \ | |
148 | fx2lib/lib/interrupts/ep4_isr.c \ | |
149 | fx2lib/lib/interrupts/ep4pf_isr.c \ | |
150 | fx2lib/lib/interrupts/ep4ping_isr.c \ | |
151 | fx2lib/lib/interrupts/ep6ef_isr.c \ | |
152 | fx2lib/lib/interrupts/ep6ff_isr.c \ | |
153 | fx2lib/lib/interrupts/ep6isoerr_isr.c \ | |
154 | fx2lib/lib/interrupts/ep6_isr.c \ | |
155 | fx2lib/lib/interrupts/ep6pf_isr.c \ | |
156 | fx2lib/lib/interrupts/ep6ping_isr.c \ | |
157 | fx2lib/lib/interrupts/ep8ef_isr.c \ | |
158 | fx2lib/lib/interrupts/ep8ff_isr.c \ | |
159 | fx2lib/lib/interrupts/ep8isoerr_isr.c \ | |
160 | fx2lib/lib/interrupts/ep8_isr.c \ | |
161 | fx2lib/lib/interrupts/ep8pf_isr.c \ | |
162 | fx2lib/lib/interrupts/ep8ping_isr.c \ | |
163 | fx2lib/lib/interrupts/errlimit_isr.c \ | |
164 | fx2lib/lib/interrupts/gpifdone_isr.c \ | |
165 | fx2lib/lib/interrupts/gpifwf_isr.c \ | |
166 | fx2lib/lib/interrupts/hispeed_isr.c \ | |
167 | fx2lib/lib/interrupts/ibn_isr.c \ | |
168 | fx2lib/lib/interrupts/sof_isr.c \ | |
169 | fx2lib/lib/interrupts/spare_isr.c \ | |
170 | fx2lib/lib/interrupts/sudav_isr.c \ | |
171 | fx2lib/lib/interrupts/suspend_isr.c \ | |
172 | fx2lib/lib/interrupts/sutok_isr.c \ | |
173 | fx2lib/lib/interrupts/usbreset_isr.c | |
174 | ||
175 | fx2lib_ints_objects = \ | |
176 | fx2lib/lib/interrupts/ep0ack_isr.rel \ | |
177 | fx2lib/lib/interrupts/ep0in_isr.rel \ | |
178 | fx2lib/lib/interrupts/ep0out_isr.rel \ | |
179 | fx2lib/lib/interrupts/ep0ping_isr.rel \ | |
180 | fx2lib/lib/interrupts/ep1in_isr.rel \ | |
181 | fx2lib/lib/interrupts/ep1out_isr.rel \ | |
182 | fx2lib/lib/interrupts/ep1ping_isr.rel \ | |
183 | fx2lib/lib/interrupts/ep2ef_isr.rel \ | |
184 | fx2lib/lib/interrupts/ep2ff_isr.rel \ | |
185 | fx2lib/lib/interrupts/ep2isoerr_isr.rel \ | |
186 | fx2lib/lib/interrupts/ep2_isr.rel \ | |
187 | fx2lib/lib/interrupts/ep2pf_isr.rel \ | |
188 | fx2lib/lib/interrupts/ep2ping_isr.rel \ | |
189 | fx2lib/lib/interrupts/ep4ef_isr.rel \ | |
190 | fx2lib/lib/interrupts/ep4ff_isr.rel \ | |
191 | fx2lib/lib/interrupts/ep4isoerr_isr.rel \ | |
192 | fx2lib/lib/interrupts/ep4_isr.rel \ | |
193 | fx2lib/lib/interrupts/ep4pf_isr.rel \ | |
194 | fx2lib/lib/interrupts/ep4ping_isr.rel \ | |
195 | fx2lib/lib/interrupts/ep6ef_isr.rel \ | |
196 | fx2lib/lib/interrupts/ep6ff_isr.rel \ | |
197 | fx2lib/lib/interrupts/ep6isoerr_isr.rel \ | |
198 | fx2lib/lib/interrupts/ep6_isr.rel \ | |
199 | fx2lib/lib/interrupts/ep6pf_isr.rel \ | |
200 | fx2lib/lib/interrupts/ep6ping_isr.rel \ | |
201 | fx2lib/lib/interrupts/ep8ef_isr.rel \ | |
202 | fx2lib/lib/interrupts/ep8ff_isr.rel \ | |
203 | fx2lib/lib/interrupts/ep8isoerr_isr.rel \ | |
204 | fx2lib/lib/interrupts/ep8_isr.rel \ | |
205 | fx2lib/lib/interrupts/ep8pf_isr.rel \ | |
206 | fx2lib/lib/interrupts/ep8ping_isr.rel \ | |
207 | fx2lib/lib/interrupts/errlimit_isr.rel \ | |
208 | fx2lib/lib/interrupts/gpifdone_isr.rel \ | |
209 | fx2lib/lib/interrupts/gpifwf_isr.rel \ | |
210 | fx2lib/lib/interrupts/hispeed_isr.rel \ | |
211 | fx2lib/lib/interrupts/ibn_isr.rel \ | |
212 | fx2lib/lib/interrupts/sof_isr.rel \ | |
213 | fx2lib/lib/interrupts/spare_isr.rel \ | |
214 | fx2lib/lib/interrupts/sudav_isr.rel \ | |
215 | fx2lib/lib/interrupts/suspend_isr.rel \ | |
216 | fx2lib/lib/interrupts/sutok_isr.rel \ | |
217 | fx2lib/lib/interrupts/usbreset_isr.rel | |
218 | ||
219 | fx2lib_libs = \ | |
220 | fx2lib/lib/fx2.lib \ | |
221 | fx2lib/lib/interrupts/ints.lib | |
222 | ||
223 | hw_sources = \ | |
224 | hw/braintechnology-usb-lps/dscr.a51 \ | |
225 | hw/cwav-usbeeax/dscr.a51 \ | |
226 | hw/cwav-usbeedx/dscr.a51 \ | |
227 | hw/cwav-usbeesx/dscr.a51 \ | |
66255d9c | 228 | hw/cwav-usbeezx/dscr.a51 \ |
88d4ba3e DE |
229 | hw/cypress-fx2/dscr.a51 \ |
230 | hw/saleae-logic/dscr.a51 \ | |
231 | hw/sigrok-fx2-8ch/dscr.a51 \ | |
6139dad4 | 232 | hw/sigrok-fx2-16ch/dscr.a51 \ |
ce1d0a86 BL |
233 | hw/hantek-6022be/dscr.a51 \ |
234 | hw/sainsmart-dds120/dscr.a51 | |
88d4ba3e DE |
235 | |
236 | firmwaredir = $(datadir)/sigrok-firmware | |
237 | firmware_DATA = $(firmware_binaries) | |
238 | ||
ce1d0a86 | 239 | dist_noinst_DATA = $(fx2lafw_headers) $(fx2lafw_sources) $(hantek_6022be_headers) $(hantek_6022be_sources) $(sainsmart_dds120_sources) $(sainsmart_dds120_headers) $(fx2lib_headers) $(fx2lib_sources) $(fx2lib_ints_sources) $(hw_sources) |
623f27ba | 240 | dist_noinst_SCRIPTS = autogen.sh |
88d4ba3e DE |
241 | |
242 | MOSTLYCLEANFILES = *.asm fx2lib/lib/*.asm fx2lib/lib/*.lib fx2lib/lib/interrupts/*.asm fx2lib/lib/interrupts/*.lib | |
243 | CLEANFILES = $(firmware_binaries) | |
244 | DISTCLEANFILES = $(dirstamps) | |
245 | ||
5379bf86 DE |
246 | # Custom silent rules prefixes |
247 | SF_V_SDAS = $(sf_v_SDAS_@AM_V@) | |
248 | sf_v_SDAS_ = $(sf_v_SDAS_@AM_DEFAULT_V@) | |
249 | sf_v_SDAS_0 = @echo " SDAS " $@; | |
250 | sf_v_SDAS_1 = | |
251 | ||
252 | SF_V_SDCC = $(sf_v_SDCC_@AM_V@) | |
253 | sf_v_SDCC_ = $(sf_v_SDCC_@AM_DEFAULT_V@) | |
254 | sf_v_SDCC_0 = @echo " SDCC " $@; | |
255 | sf_v_SDCC_1 = | |
256 | ||
88d4ba3e DE |
257 | .PHONY: dist-bin dist-changelog |
258 | ||
259 | all-local: $(firmware_binaries) | |
36074319 | 260 | |
88d4ba3e DE |
261 | mostlyclean-local: |
262 | -$(AM_V_at)find . -type f '(' -name '*.ihx' -o -name '*.lk' \ | |
263 | -o -name '*.lst' -o -name '*.map' -o -name '*.mem' \ | |
264 | -o -name '*.rel' -o -name '*.rst' -o -name '*.sym' ')' \ | |
265 | -exec rm -f '{}' '+' | |
36074319 | 266 | |
88d4ba3e | 267 | dist-hook: dist-changelog |
36074319 | 268 | |
88d4ba3e | 269 | dist-changelog: |
0dc651eb DE |
270 | $(AM_V_at)if test -d '$(top_srcdir)/.git'; then \ |
271 | if git -C '$(top_srcdir)' log >.ChangeLog.tmp; \ | |
272 | then mv -f .ChangeLog.tmp "$(top_distdir)/ChangeLog"; \ | |
273 | else rm -f .ChangeLog.tmp; exit 1; fi; \ | |
274 | else :; fi | |
36074319 | 275 | |
3cdd4722 UH |
276 | # Creates a convenience tarball with just the generated *.fw files, so that |
277 | # the users don't have to build them manually. | |
88d4ba3e | 278 | dist-bin: $(firmware_binaries) |
9a8e9e60 | 279 | -$(AM_V_at)rm -fr $(distdir_bin) |
88d4ba3e DE |
280 | $(AM_V_at)$(MKDIR_P) $(distdir_bin) |
281 | $(AM_V_at)$(INSTALL_DATA) $(firmware_binaries) $(distdir_bin) | |
282 | $(AM_V_at)$(INSTALL_DATA) $(srcdir)/COPYING $(srcdir)/COPYING.LESSER $(srcdir)/NEWS $(srcdir)/README $(distdir_bin) | |
9a8e9e60 DE |
283 | $(AM_V_at)if test -d '$(top_srcdir)/.git'; \ |
284 | then git -C '$(top_srcdir)' log > $(distdir_bin)/ChangeLog; \ | |
285 | else $(INSTALL_DATA) $(srcdir)/ChangeLog $(distdir_bin); fi | |
88d4ba3e DE |
286 | $(AM_V_at)tar -czf $(distdir_bin).tar.gz $(distdir_bin) |
287 | -$(AM_V_at)rm -fr $(distdir_bin) | |
288 | ||
289 | # List dependencies | |
290 | $(fx2lafw_objects): $(fx2lafw_headers) | |
6139dad4 | 291 | $(hantek_6022be_objects): $(hantek_6022be_headers) |
88d4ba3e DE |
292 | $(fx2lib_objects): fx2lib/lib/$(dirstamp) $(fx2lib_headers) |
293 | $(fx2lib_ints_objects): fx2lib/lib/interrupts/$(dirstamp) $(fx2lib_headers) | |
294 | ||
295 | hw/braintechnology-usb-lps/dscr.rel: hw/braintechnology-usb-lps/$(dirstamp) include/dscr.inc | |
296 | hw/cwav-usbeeax/dscr.rel: hw/cwav-usbeeax/$(dirstamp) include/dscr.inc | |
297 | hw/cwav-usbeedx/dscr.rel: hw/cwav-usbeedx/$(dirstamp) include/dscr.inc | |
298 | hw/cwav-usbeesx/dscr.rel: hw/cwav-usbeesx/$(dirstamp) include/dscr.inc | |
66255d9c | 299 | hw/cwav-usbeezx/dscr.rel: hw/cwav-usbeezx/$(dirstamp) include/dscr.inc |
88d4ba3e DE |
300 | hw/cypress-fx2/dscr.rel: hw/cypress-fx2/$(dirstamp) include/dscr.inc |
301 | hw/saleae-logic/dscr.rel: hw/saleae-logic/$(dirstamp) include/dscr.inc | |
302 | hw/sigrok-fx2-8ch/dscr.rel: hw/sigrok-fx2-8ch/$(dirstamp) include/dscr.inc | |
303 | hw/sigrok-fx2-16ch/dscr.rel: hw/sigrok-fx2-16ch/$(dirstamp) include/dscr.inc | |
6139dad4 | 304 | hw/hantek-6022be/dscr.rel: hw/hantek-6022be/$(dirstamp) include/dscr.inc |
ce1d0a86 BL |
305 | hw/sainsmart-dds120/dscr.rel: hw/sainsmart-dds120/$(dirstamp) include/dscr.inc |
306 | ||
88d4ba3e DE |
307 | |
308 | # Create build subdirectories | |
309 | $(dirstamps): | |
310 | @stamp='$@'; $(MKDIR_P) "$${stamp%/*}" | |
311 | @: > $@ | |
312 | ||
313 | fx2lib/lib/fx2.lib: $(fx2lib_objects) | |
314 | -$(AM_V_at)rm -f $@ | |
315 | $(AM_V_GEN)$(SDCCLIB) $@ $(fx2lib_objects) | |
316 | ||
317 | fx2lib/lib/interrupts/ints.lib: $(fx2lib_ints_objects) | |
318 | -$(AM_V_at)rm -f $@ | |
319 | $(AM_V_GEN)$(SDCCLIB) $@ $(fx2lib_ints_objects) | |
320 | ||
321 | hw/braintechnology-usb-lps/fx2lafw-braintechnology-usb-lps.ihx: hw/braintechnology-usb-lps/dscr.rel $(fx2lafw_objects) $(fx2lib_libs) | |
322 | $(AM_V_GEN)$(SDCC) -mmcs51 $(SDCC_LINK_FLAGS) -o $@ hw/braintechnology-usb-lps/dscr.rel $(fx2lafw_objects) $(fx2lib_libs) | |
323 | ||
324 | hw/cwav-usbeeax/fx2lafw-cwav-usbeeax.ihx: hw/cwav-usbeeax/dscr.rel $(fx2lafw_objects) $(fx2lib_libs) | |
325 | $(AM_V_GEN)$(SDCC) -mmcs51 $(SDCC_LINK_FLAGS) -o $@ hw/cwav-usbeeax/dscr.rel $(fx2lafw_objects) $(fx2lib_libs) | |
326 | ||
327 | hw/cwav-usbeedx/fx2lafw-cwav-usbeedx.ihx: hw/cwav-usbeedx/dscr.rel $(fx2lafw_objects) $(fx2lib_libs) | |
328 | $(AM_V_GEN)$(SDCC) -mmcs51 $(SDCC_LINK_FLAGS) -o $@ hw/cwav-usbeedx/dscr.rel $(fx2lafw_objects) $(fx2lib_libs) | |
329 | ||
330 | hw/cwav-usbeesx/fx2lafw-cwav-usbeesx.ihx: hw/cwav-usbeesx/dscr.rel $(fx2lafw_objects) $(fx2lib_libs) | |
331 | $(AM_V_GEN)$(SDCC) -mmcs51 $(SDCC_LINK_FLAGS) -o $@ hw/cwav-usbeesx/dscr.rel $(fx2lafw_objects) $(fx2lib_libs) | |
332 | ||
66255d9c UH |
333 | hw/cwav-usbeezx/fx2lafw-cwav-usbeezx.ihx: hw/cwav-usbeezx/dscr.rel $(fx2lafw_objects) $(fx2lib_libs) |
334 | $(AM_V_GEN)$(SDCC) -mmcs51 $(SDCC_LINK_FLAGS) -o $@ hw/cwav-usbeezx/dscr.rel $(fx2lafw_objects) $(fx2lib_libs) | |
335 | ||
88d4ba3e DE |
336 | hw/cypress-fx2/fx2lafw-cypress-fx2.ihx: hw/cypress-fx2/dscr.rel $(fx2lafw_objects) $(fx2lib_libs) |
337 | $(AM_V_GEN)$(SDCC) -mmcs51 $(SDCC_LINK_FLAGS) -o $@ hw/cypress-fx2/dscr.rel $(fx2lafw_objects) $(fx2lib_libs) | |
338 | ||
339 | hw/saleae-logic/fx2lafw-saleae-logic.ihx: hw/saleae-logic/dscr.rel $(fx2lafw_objects) $(fx2lib_libs) | |
340 | $(AM_V_GEN)$(SDCC) -mmcs51 $(SDCC_LINK_FLAGS) -o $@ hw/saleae-logic/dscr.rel $(fx2lafw_objects) $(fx2lib_libs) | |
341 | ||
342 | hw/sigrok-fx2-8ch/fx2lafw-sigrok-fx2-8ch.ihx: hw/sigrok-fx2-8ch/dscr.rel $(fx2lafw_objects) $(fx2lib_libs) | |
343 | $(AM_V_GEN)$(SDCC) -mmcs51 $(SDCC_LINK_FLAGS) -o $@ hw/sigrok-fx2-8ch/dscr.rel $(fx2lafw_objects) $(fx2lib_libs) | |
344 | ||
345 | hw/sigrok-fx2-16ch/fx2lafw-sigrok-fx2-16ch.ihx: hw/sigrok-fx2-16ch/dscr.rel $(fx2lafw_objects) $(fx2lib_libs) | |
346 | $(AM_V_GEN)$(SDCC) -mmcs51 $(SDCC_LINK_FLAGS) -o $@ hw/sigrok-fx2-16ch/dscr.rel $(fx2lafw_objects) $(fx2lib_libs) | |
347 | ||
6139dad4 UH |
348 | hw/hantek-6022be/hantek-6022be.ihx: hw/hantek-6022be/dscr.rel $(hantek_6022be_objects) $(fx2lib_libs) |
349 | $(AM_V_GEN)$(SDCC) -mmcs51 $(SDCC_LINK_FLAGS_HANTEK_6022BE) -o $@ hw/hantek-6022be/dscr.rel $(hantek_6022be_objects) $(fx2lib_libs) | |
350 | ||
ce1d0a86 BL |
351 | hw/sainsmart-dds120/sainsmart-dds120.ihx: hw/sainsmart-dds120/dscr.rel $(sainsmart_dds120_objects) $(fx2lib_libs) |
352 | $(AM_V_GEN)$(SDCC) -mmcs51 $(SDCC_LINK_FLAGS_SAINSMART_DDS120) -o $@ hw/sainsmart-dds120/dscr.rel $(sainsmart_dds120_objects) $(fx2lib_libs) | |
353 | ||
88d4ba3e | 354 | .a51.rel: |
5379bf86 | 355 | $(SF_V_SDAS)$(SDAS8051) -glos $(as_includes) $@ $< |
88d4ba3e DE |
356 | |
357 | .c.rel: | |
5379bf86 | 358 | $(SF_V_SDCC)$(SDCC) -mmcs51 $(c_includes) -c $< -o $@ |
88d4ba3e DE |
359 | |
360 | if FOUND_OBJCOPY | |
361 | .ihx.fw: | |
362 | $(AM_V_GEN)$(OBJCOPY) -Iihex $< -Obinary $@ | |
363 | else | |
364 | if FOUND_MAKEBIN | |
365 | .ihx.fw: | |
366 | $(AM_V_GEN)$(MAKEBIN) -p < $< > $@ | |
367 | endif | |
368 | endif | |
106ee45c | 369 |