CROSS_COMPILE=riscv32-unknown-elf- CC=$(CROSS_COMPILE)gcc LD=$(CROSS_COMPILE)gcc AR=$(CROSS_COMPILE)ar AS=$(CROSS_COMPILE)gcc LSCRIPT=RISCV/env_Eclipse/GD32VF103xB.lds #LSCRIPT=target.ld LDFLAGS+=-T $(LSCRIPT) -Wl,-gc-sections -Wl,-Map=image.map -ffreestanding -nostartfiles -fdata-sections -ffunction-sections CFLAGS+=-fno-builtin-printf -DUSE_M_TIME -g -march=rv32imac -mabi=ilp32 -mcmodel=medlow -fmessage-length=0 #CFLAGS+=--specs=nosys.specs CFLAGS+=--specs=nano.specs CFLAGS+=-Os CFLAGS+=-DGD32VF103C_START CFLAGS+=-IGD32VF103 -IGD32VF103/Include CFLAGS+=-I.. -I../include CFLAGS+=-IRISCV/drivers OBJS= \ main.o \ start.o \ entry.o \ n200_func.o \ handlers.o \ system_gd32vf103.o \ gd32vf103_adc.o \ gd32vf103_bkp.o \ gd32vf103_can.o \ gd32vf103_crc.o \ gd32vf103_dac.o \ gd32vf103_dbg.o \ gd32vf103_dma.o \ gd32vf103_eclic.o \ gd32vf103_exmc.o \ gd32vf103_exti.o \ gd32vf103_fmc.o \ gd32vf103_fwdgt.o \ gd32vf103_gpio.o \ gd32vf103_i2c.o \ gd32vf103_pmu.o \ gd32vf103_rcu.o \ gd32vf103_rtc.o \ gd32vf103_spi.o \ gd32vf103_timer.o \ gd32vf103_usart.o \ gd32vf103_wwdgt.o \ ff.o \ ffsystem.o \ ffunicode.o \ tf_card.o \ lcd.o \ systick.o all: image.bin image.bin: image.elf $(CROSS_COMPILE)objcopy -O binary $< $@ vpath %.c ./GD32VF103/Source vpath %.c ./GD32VF103 vpath %.c ./RISCV/drivers vpath %.c ./RISCV/env_Eclipse vpath %.c ./fatfs vpath %.c ./lcd image.elf: $(OBJS) @echo [LD] $@ @$(LD) $(CFLAGS) $(LDFLAGS) $(^) -o $(@) start.o: ./RISCV/env_Eclipse/start.S @echo [AS] $@ @$(AS) $(CFLAGS) -c -o $(@) $(^) entry.o: ./RISCV/env_Eclipse/entry.S @echo [AS] $@ @$(AS) $(CFLAGS) -c -o $(@) $(^) %.o: %.c @echo [CC] $@ @$(CC) -o $@ -c $^ $(CFLAGS) clean: @echo [CLEAN] @rm -f $(OBJS) @rm -f *.bin *.elf