SDCC = sdcc -mmcs51 $(SDCCFLAGS)
LIBS = fx2.lib
+# The sdcc 8051 assembler binary has/had different names.
+ifneq ($(shell which sdas8051 2>/dev/null),)
+# Newer sdcc, Debian / Ubuntu
+SDAS8051 = sdas8051
+endif
+ifneq ($(shell which sdcc-sdas8051 2>/dev/null),)
+# Newer sdcc, Fedora
+SDAS8051 = sdcc-sdas8051
+endif
+ifneq ($(shell which asx8051 2>/dev/null),)
+# Older sdcc
+SDAS8051 = asx8051
+endif
+
all: $(LIBS)
$(LIBS): $(FX2_OBJS)
sdcclib fx2.lib $?
usbav.rel: usbav.a51
- sdas8051 -logs usbav.a51
+ $(SDAS8051) -logs usbav.a51
int4av.rel: int4av.a51
- sdas8051 -logs int4av.a51
+ $(SDAS8051) -logs int4av.a51
%.rel: %.c
$(SDCC) $(INCLUDES) -c $< -o $@
clean:
- rm -f *.{asm,ihx,lnk,lst,map,mem,rel,rst,sym,adb,cdb,lib}
- rm -f interrupts/*.{asm,ihx,lnk,lst,map,mem,rel,rst,sym,adb,dcb,lib}
+ rm -f *.asm *.ihx *.lnk *.lst *.map *.mem *.rel *.rst *.sym
+ rm -f *.adb *.cdb *.lib
+ rm -f interrupts/*.asm interrupts/*.ihx interrupts/*.lnk
+ rm -f interrupts/*.lst interrupts/*.map interrupts/*.mem
+ rm -f interrupts/*.rel interrupts/*.rst interrupts/*.sym
+ rm -f interrupts/*.adb interrupts/*.dcb interrupts/*.lib