FLAGS = -c -ggdb -Os CPU ?= -march=rv32imac -mabi=ilp32 CROSS = riscv64-unknown-elf- FLAGS+= $(CPU) FLAGS+= -ffunction-sections -fdata-sections FLAGS+= -mno-save-restore -fmessage-length=0 FLAGS+= -I/usr/include/newlib -I. -I.. -I../../common -I./inc AS = $(CROSS)as CC = $(CROSS)gcc CC += $(FLAGS) CXX = $(CROSS)g++ CXX += $(FLAGS) -fno-exceptions -fno-rtti AR = $(CROSS)ar VPATH = ./src OBJS = cdc_class.o OBJS += hw_config.o usb_endp.o usb_istr.o usb_prop.o usb_pwr.o OBJS += usb_core.o usb_init.o usb_int.o usb_mem.o usb_regs.o usb_sil.o DSTLIB = libusbd.a %.o: %.S $(AS) $< -o $@ %.o: %.c $(CC) $< -o $@ %.o: %.cpp $(CXX) $< -o $@ $(DSTLIB): $(OBJS) $(AR) rcs $(DSTLIB) $(OBJS) .PHONY: all clean all: $(DSTLIB) clean: -rm -f *.o