diff --git a/ch32v003fun/ch32v003fun.mk b/ch32v003fun/ch32v003fun.mk index 9cadeaa7cf834c4f000330cc8017d16ee02ee0fd..6803839b3508a5f093bb26e330f178536909b241 100644 --- a/ch32v003fun/ch32v003fun.mk +++ b/ch32v003fun/ch32v003fun.mk @@ -4,7 +4,7 @@ PREFIX:=riscv64-unknown-elf CH32V003FUN:=../../ch32v003fun MINICHLINK:=../../minichlink -CFLAGS:= \ +CFLAGS+= \ -g -Os -flto -ffunction-sections \ -static-libgcc \ -march=rv32ec \ @@ -14,11 +14,11 @@ CFLAGS:= \ -nostdlib \ -I. -Wall -LDFLAGS:=-T $(CH32V003FUN)/ch32v003fun.ld -Wl,--gc-sections -L../../misc -lgcc +LDFLAGS+=-T $(CH32V003FUN)/ch32v003fun.ld -Wl,--gc-sections -L../../misc -lgcc SYSTEM_C:=$(CH32V003FUN)/ch32v003fun.c -$(TARGET).elf : $(SYSTEM_C) $(TARGET).c +$(TARGET).elf : $(SYSTEM_C) $(TARGET).c $(ADDITIONAL_C_FILES) $(PREFIX)-gcc -o $@ $^ $(CFLAGS) $(LDFLAGS) $(TARGET).bin : $(TARGET).elf diff --git a/examples/GPIO/Makefile b/examples/GPIO/Makefile index 15a92ee8541c73eff2eee710a57b721a6b032c6b..c7ee56af8f0e1a752e2d4d563b88c50cd0424887 100644 --- a/examples/GPIO/Makefile +++ b/examples/GPIO/Makefile @@ -1,43 +1,11 @@ TARGET:=GPIO -all : flash - -PREFIX:=riscv64-unknown-elf - -GPIO_Toggle:=EXAM/GPIO/GPIO_Toggle/User - -EVT:=../../ch32v003evt - -MINICHLINK:=../../minichlink -CH32V003FUN:=../../ch32v003fun - -CFLAGS:= \ - -g -Os -flto -ffunction-sections \ - -static-libgcc \ - -march=rv32ec \ - -mabi=ilp32e \ - -I/usr/include/newlib \ - -I$(CH32V003FUN) \ - -nostdlib \ - -I. -DTINYVECTOR -Wall +CFLAGS+=-DTINYVECTOR +ADDITIONAL_C_FILES+=wiring.c -LDFLAGS:=-T $(CH32V003FUN)/ch32v003fun.ld -Wl,--gc-sections -L../../misc -lgcc +include ../../ch32v003fun/ch32v003fun.mk -SYSTEM_C:=$(CH32V003FUN)/ch32v003fun.c - -$(TARGET).elf : $(SYSTEM_C) $(TARGET).c wiring.c - $(PREFIX)-gcc -o $@ $^ $(CFLAGS) $(LDFLAGS) - -$(TARGET).bin : $(TARGET).elf - $(PREFIX)-size $^ - $(PREFIX)-objdump -S $^ > $(TARGET).lst - $(PREFIX)-objdump -t $^ > $(TARGET).map - $(PREFIX)-objcopy -O binary $< $(TARGET).bin - $(PREFIX)-objcopy -O ihex $< $(TARGET).hex - -flash : $(TARGET).bin - $(MINICHLINK)/minichlink -w $< flash -b - -clean : - rm -rf $(TARGET).elf $(TARGET).bin $(TARGET).hex $(TARGET).lst $(TARGET).map $(TARGET).hex +all : flash +flash : cv_flash +clean : cv_clean diff --git a/examples/GPIO_analogRead/Makefile b/examples/GPIO_analogRead/Makefile index c655dc1fa4c9a43364dafc5d98363fae1c15c418..ff995e67083d41ad07499576da97746201271b1f 100644 --- a/examples/GPIO_analogRead/Makefile +++ b/examples/GPIO_analogRead/Makefile @@ -1,43 +1,11 @@ TARGET:=GPIO_analogRead -all : flash - -PREFIX:=riscv64-unknown-elf - -GPIO_Toggle:=EXAM/GPIO/GPIO_Toggle/User - -EVT:=../../ch32v003evt - -MINICHLINK:=../../minichlink -CH32V003FUN:=../../ch32v003fun - -CFLAGS:= \ - -g -Os -flto -ffunction-sections \ - -static-libgcc \ - -march=rv32ec \ - -mabi=ilp32e \ - -I/usr/include/newlib \ - -I$(CH32V003FUN) \ - -nostdlib \ - -I. -DTINYVECTOR -Wall +CFLAGS+=-DTINYVECTOR +ADDITIONAL_C_FILES+=wiring.c -LDFLAGS:=-T $(CH32V003FUN)/ch32v003fun.ld -Wl,--gc-sections -L../../misc -lgcc +include ../../ch32v003fun/ch32v003fun.mk -SYSTEM_C:=$(CH32V003FUN)/ch32v003fun.c - -$(TARGET).elf : $(SYSTEM_C) $(TARGET).c wiring.c - $(PREFIX)-gcc -o $@ $^ $(CFLAGS) $(LDFLAGS) - -$(TARGET).bin : $(TARGET).elf - $(PREFIX)-size $^ - $(PREFIX)-objdump -S $^ > $(TARGET).lst - $(PREFIX)-objdump -t $^ > $(TARGET).map - $(PREFIX)-objcopy -O binary $< $(TARGET).bin - $(PREFIX)-objcopy -O ihex $< $(TARGET).hex - -flash : $(TARGET).bin - $(MINICHLINK)/minichlink -w $< flash -b - -clean : - rm -rf $(TARGET).elf $(TARGET).bin $(TARGET).hex $(TARGET).lst $(TARGET).map $(TARGET).hex +all : flash +flash : cv_flash +clean : cv_clean diff --git a/examples/MCOtest/Makefile b/examples/MCOtest/Makefile index 2625e618eb8f72b48506a3ba12031c03cec2ac58..2cdcdbfd17e0c0c2fe66ea47c189d5ed61aff536 100644 --- a/examples/MCOtest/Makefile +++ b/examples/MCOtest/Makefile @@ -1,51 +1,10 @@ TARGET:=MCOtest -all : flash - -PREFIX:=riscv64-unknown-elf - -GPIO_Toggle:=EXAM/GPIO/GPIO_Toggle/User - -EVT:=../../ch32v003evt - -MINICHLINK:=../../minichlink - -ifeq ($(OS),Windows_NT) -# On Windows, all the major RISC-V GCC installs are missing the -ec libgcc. -LIB_GCC=../../misc/libgcc.a -else -LIB_GCC=-lgcc -endif - -CH32V003FUN:=../../ch32v003fun +CFLAGS+=-DTINYVECTOR -DSTDOUT_UART -CFLAGS:= \ - -g -Os -flto -ffunction-sections \ - -static-libgcc $(LIB_GCC) \ - -march=rv32ec \ - -mabi=ilp32e \ - -I/usr/include/newlib \ - -I$(CH32V003FUN) \ - -nostdlib \ - -I. -DSTDOUT_UART -DTINYVECTOR -Wall +include ../../ch32v003fun/ch32v003fun.mk -LDFLAGS:=-T $(CH32V003FUN)/ch32v003fun.ld -Wl,--gc-sections - -SYSTEM_C:=$(CH32V003FUN)/ch32v003fun.c - -$(TARGET).elf : $(SYSTEM_C) $(TARGET).c - $(PREFIX)-gcc -o $@ $^ $(CFLAGS) $(LDFLAGS) - -$(TARGET).bin : $(TARGET).elf - $(PREFIX)-size $^ - $(PREFIX)-objdump -S $^ > $(TARGET).lst - $(PREFIX)-objdump -t $^ > $(TARGET).map - $(PREFIX)-objcopy -O binary $< $(TARGET).bin - $(PREFIX)-objcopy -O ihex $< $(TARGET).hex - -flash : $(TARGET).bin - $(MINICHLINK)/minichlink -w $< flash -b - -clean : - rm -rf $(TARGET).elf $(TARGET).bin $(TARGET).hex $(TARGET).lst $(TARGET).map $(TARGET).hex +all : flash +flash : cv_flash +clean : cv_clean diff --git a/examples/adc_dma_opamp/Makefile b/examples/adc_dma_opamp/Makefile index ac00c743ffd45a07a1f1f1361a0ee32df0419e1b..acbb935a099a3cc0df772edda761e88cf6f7aeed 100644 --- a/examples/adc_dma_opamp/Makefile +++ b/examples/adc_dma_opamp/Makefile @@ -1,41 +1,9 @@ TARGET:=adc_dma_opamp -all : flash - -PREFIX:=riscv64-unknown-elf - -GPIO_Toggle:=EXAM/GPIO/GPIO_Toggle/User - -CH32V003FUN:=../../ch32v003fun -MINICHLINK:=../../minichlink - -CFLAGS:= \ - -g -Os -flto -ffunction-sections \ - -static-libgcc \ - -march=rv32ec \ - -mabi=ilp32e \ - -I/usr/include/newlib \ - -I$(CH32V003FUN) \ - -nostdlib \ - -I. -DSTDOUT_UART -Wall +include ../../ch32v003fun/ch32v003fun.mk -LDFLAGS:=-T $(CH32V003FUN)/ch32v003fun.ld -Wl,--gc-sections -L../../misc -lgcc - -SYSTEM_C:=$(CH32V003FUN)/ch32v003fun.c - -$(TARGET).elf : $(SYSTEM_C) $(TARGET).c - $(PREFIX)-gcc -o $@ $^ $(CFLAGS) $(LDFLAGS) - -$(TARGET).bin : $(TARGET).elf - $(PREFIX)-size $^ - $(PREFIX)-objdump -S $^ > $(TARGET).lst - $(PREFIX)-objdump -t $^ > $(TARGET).map - $(PREFIX)-objcopy -O binary $< $(TARGET).bin - $(PREFIX)-objcopy -O ihex $< $(TARGET).hex - -flash : $(TARGET).bin - $(MINICHLINK)/minichlink -w $< flash -b +all : flash +flash : cv_flash +clean : cv_clean -clean : - rm -rf $(TARGET).elf $(TARGET).bin $(TARGET).hex $(TARGET).lst $(TARGET).map $(TARGET).hex diff --git a/examples/adc_dma_opamp/adc_dma_opamp.c b/examples/adc_dma_opamp/adc_dma_opamp.c index 0e7889ca256df8b39cd7aa968635c04a004f1dc0..cb3d6a3b50b87dd3922f669080f090ba4e21dd4f 100644 --- a/examples/adc_dma_opamp/adc_dma_opamp.c +++ b/examples/adc_dma_opamp/adc_dma_opamp.c @@ -51,9 +51,9 @@ int main() printf("looping...\n\r"); while(1) { - GPIOC->BSHR = (1<<1); // Turn on GPIOs + GPIOC->BSHR = 1<<1; // Turn on GPIOs Delay_Ms( 100 ); - GPIOC->BSHR = (1<<1+16); // Turn off GPIODs + GPIOC->BSHR = 1<<(1+16); // Turn off GPIODs Delay_Ms( 100 ); printf( "%4d %4d ", adc_buffer[0], adc_buffer[1]); printf( "%4d %4d\n\r", adc_buffer[2], adc_buffer[3]); diff --git a/examples/adc_polled/Makefile b/examples/adc_polled/Makefile index ae735e683a7a7507587c7fcd91da3ce9f35088e7..0a4ea74980b737226422795be13e88cdb8f62611 100644 --- a/examples/adc_polled/Makefile +++ b/examples/adc_polled/Makefile @@ -1,41 +1,9 @@ TARGET:=adc_polled -all : flash - -PREFIX:=riscv64-unknown-elf - -GPIO_Toggle:=EXAM/GPIO/GPIO_Toggle/User - -CH32V003FUN:=../../ch32v003fun -MINICHLINK:=../../minichlink - -CFLAGS:= \ - -g -Os -flto -ffunction-sections \ - -static-libgcc \ - -march=rv32ec \ - -mabi=ilp32e \ - -I/usr/include/newlib \ - -I$(CH32V003FUN) \ - -nostdlib \ - -I. -DSTDOUT_UART -Wall +include ../../ch32v003fun/ch32v003fun.mk -LDFLAGS:=-T $(CH32V003FUN)/ch32v003fun.ld -Wl,--gc-sections -L../../misc -lgcc - -SYSTEM_C:=$(CH32V003FUN)/ch32v003fun.c - -$(TARGET).elf : $(SYSTEM_C) $(TARGET).c - $(PREFIX)-gcc -o $@ $^ $(CFLAGS) $(LDFLAGS) - -$(TARGET).bin : $(TARGET).elf - $(PREFIX)-size $^ - $(PREFIX)-objdump -S $^ > $(TARGET).lst - $(PREFIX)-objdump -t $^ > $(TARGET).map - $(PREFIX)-objcopy -O binary $< $(TARGET).bin - $(PREFIX)-objcopy -O ihex $< $(TARGET).hex - -flash : $(TARGET).bin - $(MINICHLINK)/minichlink -w $< flash -b +all : flash +flash : cv_flash +clean : cv_clean -clean : - rm -rf $(TARGET).elf $(TARGET).bin $(TARGET).hex $(TARGET).lst $(TARGET).map $(TARGET).hex diff --git a/examples/blink/Makefile b/examples/blink/Makefile index 4acaf267305e5c2c9e077040e92a05bea9a21b7e..63f7ff0d6546009ea3592fbe7ffc93a099c4ec6b 100644 --- a/examples/blink/Makefile +++ b/examples/blink/Makefile @@ -1,43 +1,9 @@ TARGET:=blink -all : flash - -PREFIX:=riscv64-unknown-elf - -GPIO_Toggle:=EXAM/GPIO/GPIO_Toggle/User - -EVT:=../../ch32v003evt - -MINICHLINK:=../../minichlink -CH32V003FUN:=../../ch32v003fun - -CFLAGS:= \ - -g -Os -flto -ffunction-sections \ - -static-libgcc \ - -march=rv32ec \ - -mabi=ilp32e \ - -I/usr/include/newlib \ - -I$(CH32V003FUN) \ - -nostdlib \ - -I. -DTINYVECTOR -Wall +include ../../ch32v003fun/ch32v003fun.mk -LDFLAGS:=-T $(CH32V003FUN)/ch32v003fun.ld -Wl,--gc-sections -L../../misc -lgcc - -SYSTEM_C:=$(CH32V003FUN)/ch32v003fun.c - -$(TARGET).elf : $(SYSTEM_C) $(TARGET).c - $(PREFIX)-gcc -o $@ $^ $(CFLAGS) $(LDFLAGS) - -$(TARGET).bin : $(TARGET).elf - $(PREFIX)-size $^ - $(PREFIX)-objdump -S $^ > $(TARGET).lst - $(PREFIX)-objdump -t $^ > $(TARGET).map - $(PREFIX)-objcopy -O binary $< $(TARGET).bin - $(PREFIX)-objcopy -O ihex $< $(TARGET).hex - -flash : $(TARGET).bin - $(MINICHLINK)/minichlink -w $< flash -b +all : flash +flash : cv_flash +clean : cv_clean -clean : - rm -rf $(TARGET).elf $(TARGET).bin $(TARGET).hex $(TARGET).lst $(TARGET).map $(TARGET).hex diff --git a/examples/blink/blink.bin b/examples/blink/blink.bin index f4a7fa56e5eb064927ec95f85687b82ff2dc8db8..b0cf5a4fa20b888e4185c78fd1a5230786bc2059 100755 Binary files a/examples/blink/blink.bin and b/examples/blink/blink.bin differ diff --git a/examples/bootload/Makefile b/examples/bootload/Makefile index 7d681ec3852dcc0169c82839231df5ee5690550e..47ff5e054142a9735a36d0aac879ec149f0ecb28 100644 --- a/examples/bootload/Makefile +++ b/examples/bootload/Makefile @@ -1,43 +1,8 @@ TARGET:=bootload -all : flash - -PREFIX:=riscv64-unknown-elf - -GPIO_Toggle:=EXAM/GPIO/GPIO_Toggle/User - -EVT:=../../ch32v003evt - -MINICHLINK:=../../minichlink -CH32V003FUN:=../../ch32v003fun - -CFLAGS:= \ - -g -Os -flto -ffunction-sections \ - -static-libgcc \ - -march=rv32ec \ - -mabi=ilp32e \ - -I/usr/include/newlib \ - -I$(CH32V003FUN) \ - -nostdlib \ - -I. -DCUSTOM_INTERRUPT_VECTOR +include ../../ch32v003fun/ch32v003fun.mk -LDFLAGS:=-T $(CH32V003FUN)/ch32v003fun-bootloader.ld -Wl,--gc-sections -L../../misc -lgcc - -SYSTEM_C:=$(CH32V003FUN)/ch32v003fun.c - -$(TARGET).elf : $(SYSTEM_C) $(TARGET).c - $(PREFIX)-gcc -o $@ $^ $(CFLAGS) $(LDFLAGS) - -$(TARGET).bin : $(TARGET).elf - $(PREFIX)-size $^ - $(PREFIX)-objdump -S $^ > $(TARGET).lst - $(PREFIX)-objdump -t $^ > $(TARGET).map - $(PREFIX)-objcopy -O binary $< $(TARGET).bin - $(PREFIX)-objcopy -O ihex $< $(TARGET).hex - -flash : $(TARGET).bin - $(MINICHLINK)/minichlink -h -U -w $< bootloader -B - -clean : - rm -rf $(TARGET).elf $(TARGET).bin $(TARGET).hex $(TARGET).lst $(TARGET).map $(TARGET).hex +all : flash +flash : cv_flash +clean : cv_clean diff --git a/examples/debugprintfdemo/Makefile b/examples/debugprintfdemo/Makefile index 01ae2f3754bfe67d3415ad6486d6bd7b61a83e7a..0e3fda68083465e8e241cbc9f15295257bb69104 100644 --- a/examples/debugprintfdemo/Makefile +++ b/examples/debugprintfdemo/Makefile @@ -1,46 +1,8 @@ TARGET:=debugprintfdemo -all : flash - -PREFIX:=riscv64-unknown-elf - -GPIO_Toggle:=EXAM/GPIO/GPIO_Toggle/User - -CH32V003FUN:=../../ch32v003fun -MINICHLINK:=../../minichlink - -CFLAGS:= \ - -g -Os -flto -ffunction-sections \ - -static-libgcc \ - -march=rv32ec \ - -mabi=ilp32e \ - -I/usr/include/newlib \ - -I$(CH32V003FUN) \ - -nostdlib \ - -I. -Wall - -LDFLAGS:=-T $(CH32V003FUN)/ch32v003fun.ld -Wl,--gc-sections -L../../misc -lgcc +include ../../ch32v003fun/ch32v003fun.mk -SYSTEM_C:=$(CH32V003FUN)/ch32v003fun.c - -$(TARGET).elf : $(SYSTEM_C) $(TARGET).c - $(PREFIX)-gcc -o $@ $^ $(CFLAGS) $(LDFLAGS) - -$(TARGET).bin : $(TARGET).elf - $(PREFIX)-size $^ - $(PREFIX)-objdump -S $^ > $(TARGET).lst - $(PREFIX)-objdump -t $^ > $(TARGET).map - $(PREFIX)-objcopy -O binary $< $(TARGET).bin - $(PREFIX)-objcopy -O ihex $< $(TARGET).hex - -flash : $(TARGET).bin - make -C $(MINICHLINK) all - $(MINICHLINK)/minichlink -w $< flash -b - -monitor : flash - $(MINICHLINK)/minichlink -T - - -clean : - rm -rf $(TARGET).elf $(TARGET).bin $(TARGET).hex $(TARGET).lst $(TARGET).map $(TARGET).hex +all : flash +flash : cv_flash +clean : cv_clean diff --git a/examples/external_crystal/Makefile b/examples/external_crystal/Makefile index 9ee7fc53f6559bc9ac71bf64c542ceed543cbfb0..a4a4b8dde6be39adbdc72873667d1d37f51ec1f6 100644 --- a/examples/external_crystal/Makefile +++ b/examples/external_crystal/Makefile @@ -1,43 +1,8 @@ TARGET:=external_crystal -all : flash - -PREFIX:=riscv64-unknown-elf - -GPIO_Toggle:=EXAM/GPIO/GPIO_Toggle/User - -EVT:=../../ch32v003evt - -MINICHLINK:=../../minichlink -CH32V003FUN:=../../ch32v003fun - -CFLAGS:= \ - -g -Os -flto -ffunction-sections \ - -static-libgcc \ - -march=rv32ec \ - -mabi=ilp32e \ - -I/usr/include/newlib \ - -I$(CH32V003FUN) \ - -nostdlib \ - -I. -DTINYVECTOR -Wall +include ../../ch32v003fun/ch32v003fun.mk -LDFLAGS:=-T $(CH32V003FUN)/ch32v003fun.ld -Wl,--gc-sections -L../../misc -lgcc - -SYSTEM_C:=$(CH32V003FUN)/ch32v003fun.c - -$(TARGET).elf : $(SYSTEM_C) $(TARGET).c - $(PREFIX)-gcc -o $@ $^ $(CFLAGS) $(LDFLAGS) - -$(TARGET).bin : $(TARGET).elf - $(PREFIX)-size $^ - $(PREFIX)-objdump -S $^ > $(TARGET).lst - $(PREFIX)-objdump -t $^ > $(TARGET).map - $(PREFIX)-objcopy -O binary $< $(TARGET).bin - $(PREFIX)-objcopy -O ihex $< $(TARGET).hex - -flash : $(TARGET).bin - $(MINICHLINK)/minichlink -w $< flash -b - -clean : - rm -rf $(TARGET).elf $(TARGET).bin $(TARGET).hex $(TARGET).lst $(TARGET).map $(TARGET).hex +all : flash +flash : cv_flash +clean : cv_clean diff --git a/examples/i2c_oled/Makefile b/examples/i2c_oled/Makefile index da354686c13ef4bf598c161b2b4bbe803b2d99ae..2da3d040f9198403a7e306626b2d171c0c9373a7 100644 --- a/examples/i2c_oled/Makefile +++ b/examples/i2c_oled/Makefile @@ -1,41 +1,8 @@ TARGET:=i2c_oled -all : flash - -PREFIX:=riscv64-unknown-elf - -GPIO_Toggle:=EXAM/GPIO/GPIO_Toggle/User - -CH32V003FUN:=../../ch32v003fun -MINICHLINK:=../../minichlink - -CFLAGS:= \ - -g -Os -flto -ffunction-sections \ - -static-libgcc \ - -march=rv32ec \ - -mabi=ilp32e \ - -I/usr/include/newlib \ - -I$(CH32V003FUN) \ - -nostdlib \ - -I. -DSTDOUT_UART -Wall - -LDFLAGS:=-T $(CH32V003FUN)/ch32v003fun.ld -Wl,--gc-sections -L../../misc -lgcc +include ../../ch32v003fun/ch32v003fun.mk -SYSTEM_C:=$(CH32V003FUN)/ch32v003fun.c - -$(TARGET).elf : $(SYSTEM_C) $(TARGET).c - $(PREFIX)-gcc -o $@ $^ $(CFLAGS) $(LDFLAGS) - -$(TARGET).bin : $(TARGET).elf - $(PREFIX)-size $^ - $(PREFIX)-objdump -S $^ > $(TARGET).lst - $(PREFIX)-objdump -t $^ > $(TARGET).map - $(PREFIX)-objcopy -O binary $< $(TARGET).bin - $(PREFIX)-objcopy -O ihex $< $(TARGET).hex - -flash : $(TARGET).bin - $(MINICHLINK)/minichlink -w $< flash -b - -clean : - rm -rf $(TARGET).elf $(TARGET).bin $(TARGET).hex $(TARGET).lst $(TARGET).map $(TARGET).hex +all : flash +flash : cv_flash +clean : cv_clean diff --git a/examples/optionbytes/Makefile b/examples/optionbytes/Makefile index 1c2032c957c8082e16b953675dffbf0e337e62e9..fca3e40bdb68a5e920ab6ca6e26faeda7daa5e84 100644 --- a/examples/optionbytes/Makefile +++ b/examples/optionbytes/Makefile @@ -1,47 +1,10 @@ TARGET:=optionbytes -all : flash - -PREFIX:=riscv64-unknown-elf - -GPIO_Toggle:=EXAM/GPIO/GPIO_Toggle/User - -EVT:=../../ch32v003evt - -MINICHLINK:=../../minichlink -CH32V003FUN:=../../ch32v003fun - -CFLAGS:= \ - -g -Os -flto -ffunction-sections \ - -static-libgcc \ - -march=rv32ec \ - -mabi=ilp32e \ - -I/usr/include/newlib \ - -I$(CH32V003FUN) \ - -nostdlib \ - -I. -DTINYVECTOR - -LDFLAGS:=-T $(CH32V003FUN)/ch32v003fun.ld -Wl,--gc-sections -L../../misc -lgcc +CFLAGS+=-DTINYVECTOR -SYSTEM_C:=$(CH32V003FUN)/ch32v003fun.c +include ../../ch32v003fun/ch32v003fun.mk -$(TARGET).elf : $(SYSTEM_C) $(TARGET).c - $(PREFIX)-gcc -o $@ $^ $(CFLAGS) $(LDFLAGS) - -$(TARGET).bin : $(TARGET).elf - $(PREFIX)-size $^ - $(PREFIX)-objdump -S $^ > $(TARGET).lst - $(PREFIX)-objdump -t $^ > $(TARGET).map - $(PREFIX)-objcopy -O binary $< $(TARGET).bin - $(PREFIX)-objcopy -O ihex $< $(TARGET).hex - -flash : $(TARGET).bin - $(MINICHLINK)/minichlink -w $< flash -b - -monitor : flash - $(MINICHLINK)/minichlink -T - - -clean : - rm -rf $(TARGET).elf $(TARGET).bin $(TARGET).hex $(TARGET).lst $(TARGET).map $(TARGET).hex +all : flash +flash : cv_flash +clean : cv_clean diff --git a/examples/run_from_ram/Makefile b/examples/run_from_ram/Makefile index dd492af6c6231e3cfad208770d8bde0b96f96a7c..55db45e79ddf58b06a766e9c54a9d77f9fd4dd56 100644 --- a/examples/run_from_ram/Makefile +++ b/examples/run_from_ram/Makefile @@ -1,43 +1,10 @@ TARGET:=run_from_ram -all : flash - -PREFIX:=riscv64-unknown-elf - -GPIO_Toggle:=EXAM/GPIO/GPIO_Toggle/User - -EVT:=../../ch32v003evt - -MINICHLINK:=../../minichlink -CH32V003FUN:=../../ch32v003fun - -CFLAGS:= \ - -g -Os -flto -ffunction-sections \ - -static-libgcc \ - -march=rv32ec \ - -mabi=ilp32e \ - -I/usr/include/newlib \ - -I$(CH32V003FUN) \ - -nostdlib \ - -I. -DTINYVECTOR -Wall +CFLAGS+=-DTINYVECTOR -LDFLAGS:=-T $(CH32V003FUN)/ch32v003fun.ld -Wl,--gc-sections -L../../misc -lgcc +include ../../ch32v003fun/ch32v003fun.mk -SYSTEM_C:=$(CH32V003FUN)/ch32v003fun.c - -$(TARGET).elf : $(SYSTEM_C) $(TARGET).c - $(PREFIX)-gcc -o $@ $^ $(CFLAGS) $(LDFLAGS) - -$(TARGET).bin : $(TARGET).elf - $(PREFIX)-size $^ - $(PREFIX)-objdump -S $^ > $(TARGET).lst - $(PREFIX)-objdump -t $^ > $(TARGET).map - $(PREFIX)-objcopy -O binary $< $(TARGET).bin - $(PREFIX)-objcopy -O ihex $< $(TARGET).hex - -flash : $(TARGET).bin - $(MINICHLINK)/minichlink -w $< flash -b - -clean : - rm -rf $(TARGET).elf $(TARGET).bin $(TARGET).hex $(TARGET).lst $(TARGET).map $(TARGET).hex +all : flash +flash : cv_flash +clean : cv_clean diff --git a/examples/sandbox/Makefile b/examples/sandbox/Makefile index e45f9822f64a9e7cb5bdcf2b7cff5eea59b4cd7c..13888334a4b45f7b0dcba5290227eced951d50bf 100644 --- a/examples/sandbox/Makefile +++ b/examples/sandbox/Makefile @@ -1,45 +1,8 @@ TARGET:=sandbox -all : flash - -PREFIX:=riscv64-unknown-elf - -GPIO_Toggle:=EXAM/GPIO/GPIO_Toggle/User - -CH32V003FUN:=../../ch32v003fun -MINICHLINK:=../../minichlink - -CFLAGS:= \ - -g -Os -flto -ffunction-sections \ - -static-libgcc \ - -march=rv32ec \ - -mabi=ilp32e \ - -I/usr/include/newlib \ - -I$(CH32V003FUN) \ - -nostdlib \ - -I. -Wall - -LDFLAGS:=-T $(CH32V003FUN)/ch32v003fun.ld -Wl,--gc-sections -L../../misc -lgcc +include ../../ch32v003fun/ch32v003fun.mk -SYSTEM_C:=$(CH32V003FUN)/ch32v003fun.c - -$(TARGET).elf : $(SYSTEM_C) $(TARGET).c - $(PREFIX)-gcc -o $@ $^ $(CFLAGS) $(LDFLAGS) - -$(TARGET).bin : $(TARGET).elf - $(PREFIX)-size $^ - $(PREFIX)-objdump -S $^ > $(TARGET).lst - $(PREFIX)-objdump -t $^ > $(TARGET).map - $(PREFIX)-objcopy -O binary $< $(TARGET).bin - $(PREFIX)-objcopy -O ihex $< $(TARGET).hex - -flash : $(TARGET).bin - make -C $(MINICHLINK) all - $(MINICHLINK)/minichlink -w $< flash -b - -monitor : flash - $(MINICHLINK)/minichlink -T - +all : flash +flash : cv_flash +clean : cv_clean -clean : - rm -rf $(TARGET).elf $(TARGET).bin $(TARGET).hex $(TARGET).lst $(TARGET).map $(TARGET).hex diff --git a/examples/self_modify_code/Makefile b/examples/self_modify_code/Makefile index abafa8a2c73fa7c91248a8beeb393994cec39a59..80c711c36e615c7c2618b51784f02e7c312ec70c 100644 --- a/examples/self_modify_code/Makefile +++ b/examples/self_modify_code/Makefile @@ -1,46 +1,8 @@ TARGET:=self_modify_code -all : flash - -PREFIX:=riscv64-unknown-elf - -GPIO_Toggle:=EXAM/GPIO/GPIO_Toggle/User - -CH32V003FUN:=../../ch32v003fun -MINICHLINK:=../../minichlink - -CFLAGS:= \ - -g -Os -flto -ffunction-sections \ - -static-libgcc \ - -march=rv32ec \ - -mabi=ilp32e \ - -I/usr/include/newlib \ - -I$(CH32V003FUN) \ - -nostdlib \ - -I. -Wall - -LDFLAGS:=-T $(CH32V003FUN)/ch32v003fun.ld -Wl,--gc-sections -L../../misc -lgcc +include ../../ch32v003fun/ch32v003fun.mk -SYSTEM_C:=$(CH32V003FUN)/ch32v003fun.c - -$(TARGET).elf : $(SYSTEM_C) $(TARGET).c - $(PREFIX)-gcc -o $@ $^ $(CFLAGS) $(LDFLAGS) - -$(TARGET).bin : $(TARGET).elf - $(PREFIX)-size $^ - $(PREFIX)-objdump -S $^ > $(TARGET).lst - $(PREFIX)-objdump -t $^ > $(TARGET).map - $(PREFIX)-objcopy -O binary $< $(TARGET).bin - $(PREFIX)-objcopy -O ihex $< $(TARGET).hex - -flash : $(TARGET).bin - make -C $(MINICHLINK) all - $(MINICHLINK)/minichlink -w $< flash -b - -monitor : flash - $(MINICHLINK)/minichlink -T - - -clean : - rm -rf $(TARGET).elf $(TARGET).bin $(TARGET).hex $(TARGET).lst $(TARGET).map $(TARGET).hex +all : flash +flash : cv_flash +clean : cv_clean diff --git a/examples/spi_dac/Makefile b/examples/spi_dac/Makefile index 0978583b8bd06cec951a805c6aa6dc4ca5e58d32..109146ea58aa15694cb0213829b9ccb8cf43ddf9 100644 --- a/examples/spi_dac/Makefile +++ b/examples/spi_dac/Makefile @@ -1,48 +1,8 @@ TARGET:=spi_dac -all : flash - -PREFIX:=riscv64-unknown-elf - -GPIO_Toggle:=EXAM/GPIO/GPIO_Toggle/User - -CH32V003FUN:=../../ch32v003fun -MINICHLINK:=../../minichlink - -ifeq ($(OS),Windows_NT) -# On Windows, all the major RISC-V GCC installs are missing the -ec libgcc. -LIB_GCC=../../misc/libgcc.a -else -LIB_GCC=-lgcc -endif - -CFLAGS:= \ - -g -Os -flto -ffunction-sections \ - -static-libgcc $(LIB_GCC) \ - -march=rv32ec \ - -mabi=ilp32e \ - -I/usr/include/newlib \ - -I$(CH32V003FUN) \ - -nostdlib \ - -I. -DSTDOUT_UART -Wall +include ../../ch32v003fun/ch32v003fun.mk -LDFLAGS:=-T $(CH32V003FUN)/ch32v003fun.ld -Wl,--gc-sections - -SYSTEM_C:=$(CH32V003FUN)/ch32v003fun.c - -$(TARGET).elf : $(SYSTEM_C) $(TARGET).c - $(PREFIX)-gcc -o $@ $^ $(CFLAGS) $(LDFLAGS) - -$(TARGET).bin : $(TARGET).elf - $(PREFIX)-size $^ - $(PREFIX)-objdump -S $^ > $(TARGET).lst - $(PREFIX)-objdump -t $^ > $(TARGET).map - $(PREFIX)-objcopy -O binary $< $(TARGET).bin - $(PREFIX)-objcopy -O ihex $< $(TARGET).hex - -flash : $(TARGET).bin - $(MINICHLINK)/minichlink -w $< flash -b - -clean : - rm -rf $(TARGET).elf $(TARGET).bin $(TARGET).hex $(TARGET).lst $(TARGET).map $(TARGET).hex +all : flash +flash : cv_flash +clean : cv_clean diff --git a/examples/systick_irq/Makefile b/examples/systick_irq/Makefile index d8910e1af3c5bb2b1b2190683ccf197d01863650..c9c13def5aa9978795a523d8d019e17d54c3f4e3 100644 --- a/examples/systick_irq/Makefile +++ b/examples/systick_irq/Makefile @@ -1,41 +1,8 @@ TARGET:=systick_irq -all : flash - -PREFIX:=riscv64-unknown-elf - -GPIO_Toggle:=EXAM/GPIO/GPIO_Toggle/User - -CH32V003FUN:=../../ch32v003fun -MINICHLINK:=../../minichlink - -CFLAGS:= \ - -g -Os -flto -ffunction-sections \ - -static-libgcc \ - -march=rv32ec \ - -mabi=ilp32e \ - -I/usr/include/newlib \ - -I$(CH32V003FUN) \ - -nostdlib \ - -I. -DSTDOUT_UART -Wall - -LDFLAGS:=-T $(CH32V003FUN)/ch32v003fun.ld -Wl,--gc-sections -L../../misc -lgcc +include ../../ch32v003fun/ch32v003fun.mk -SYSTEM_C:=$(CH32V003FUN)/ch32v003fun.c - -$(TARGET).elf : $(SYSTEM_C) $(TARGET).c - $(PREFIX)-gcc -o $@ $^ $(CFLAGS) $(LDFLAGS) - -$(TARGET).bin : $(TARGET).elf - $(PREFIX)-size $^ - $(PREFIX)-objdump -S $^ > $(TARGET).lst - $(PREFIX)-objdump -t $^ > $(TARGET).map - $(PREFIX)-objcopy -O binary $< $(TARGET).bin - $(PREFIX)-objcopy -O ihex $< $(TARGET).hex - -flash : $(TARGET).bin - $(MINICHLINK)/minichlink -w $< flash -b - -clean : - rm -rf $(TARGET).elf $(TARGET).bin $(TARGET).hex $(TARGET).lst $(TARGET).map $(TARGET).hex +all : flash +flash : cv_flash +clean : cv_clean diff --git a/examples/systick_irq_millis/Makefile b/examples/systick_irq_millis/Makefile index 266cce9d08ec1b7132c81b4d3256f5218df1f44b..e2050f99840757d86a3defbca9effb5c2db38d24 100644 --- a/examples/systick_irq_millis/Makefile +++ b/examples/systick_irq_millis/Makefile @@ -1,41 +1,10 @@ TARGET:=systick_irq_millis -all : flash - -PREFIX:=riscv64-unknown-elf - -GPIO_Toggle:=EXAM/GPIO/GPIO_Toggle/User - -CH32V003FUN:=../../ch32v003fun -MINICHLINK:=../../minichlink - -CFLAGS:= \ - -g -Os -flto -ffunction-sections \ - -static-libgcc \ - -march=rv32ec \ - -mabi=ilp32e \ - -I/usr/include/newlib \ - -I$(CH32V003FUN) \ - -nostdlib \ - -I. -DSTDOUT_UART -Wall +CFLAGS+=-DSTDOUT_UART -LDFLAGS:=-T $(CH32V003FUN)/ch32v003fun.ld -Wl,--gc-sections -L../../misc -lgcc +include ../../ch32v003fun/ch32v003fun.mk -SYSTEM_C:=$(CH32V003FUN)/ch32v003fun.c - -$(TARGET).elf : $(SYSTEM_C) $(TARGET).c - $(PREFIX)-gcc -o $@ $^ $(CFLAGS) $(LDFLAGS) - -$(TARGET).bin : $(TARGET).elf - $(PREFIX)-size $^ - $(PREFIX)-objdump -S $^ > $(TARGET).lst - $(PREFIX)-objdump -t $^ > $(TARGET).map - $(PREFIX)-objcopy -O binary $< $(TARGET).bin - $(PREFIX)-objcopy -O ihex $< $(TARGET).hex - -flash : $(TARGET).bin - $(MINICHLINK)/minichlink -w $< flash -b - -clean : - rm -rf $(TARGET).elf $(TARGET).bin $(TARGET).hex $(TARGET).lst $(TARGET).map $(TARGET).hex +all : flash +flash : cv_flash +clean : cv_clean diff --git a/examples/tim1_pwm/Makefile b/examples/tim1_pwm/Makefile index 0aecad001ed074adb358ccef9c4252b83cc0fe11..eb2260d357364820cf4de8fcdb21fbdede7645c9 100644 --- a/examples/tim1_pwm/Makefile +++ b/examples/tim1_pwm/Makefile @@ -1,41 +1,10 @@ TARGET:=tim1_pwm -all : flash - -PREFIX:=riscv64-unknown-elf - -GPIO_Toggle:=EXAM/GPIO/GPIO_Toggle/User - -CH32V003FUN:=../../ch32v003fun -MINICHLINK:=../../minichlink - -CFLAGS:= \ - -g -Os -flto -ffunction-sections \ - -static-libgcc \ - -march=rv32ec \ - -mabi=ilp32e \ - -I/usr/include/newlib \ - -I$(CH32V003FUN) \ - -nostdlib \ - -I. -DSTDOUT_UART -Wall +CFLAGS+=-DSTDOUT_UART -LDFLAGS:=-T $(CH32V003FUN)/ch32v003fun.ld -Wl,--gc-sections -L../../misc -lgcc +include ../../ch32v003fun/ch32v003fun.mk -SYSTEM_C:=$(CH32V003FUN)/ch32v003fun.c - -$(TARGET).elf : $(SYSTEM_C) $(TARGET).c - $(PREFIX)-gcc -o $@ $^ $(CFLAGS) $(LDFLAGS) - -$(TARGET).bin : $(TARGET).elf - $(PREFIX)-size $^ - $(PREFIX)-objdump -S $^ > $(TARGET).lst - $(PREFIX)-objdump -t $^ > $(TARGET).map - $(PREFIX)-objcopy -O binary $< $(TARGET).bin - $(PREFIX)-objcopy -O ihex $< $(TARGET).hex - -flash : $(TARGET).bin - $(MINICHLINK)/minichlink -w $< flash -b - -clean : - rm -rf $(TARGET).elf $(TARGET).bin $(TARGET).hex $(TARGET).lst $(TARGET).map $(TARGET).hex +all : flash +flash : cv_flash +clean : cv_clean diff --git a/examples/uartdemo/Makefile b/examples/uartdemo/Makefile index 25b0efadffd3d5015fba6059a3a8c7a9437de357..d77dc2153005732a22f8adb9b3656c65ff9a01fd 100644 --- a/examples/uartdemo/Makefile +++ b/examples/uartdemo/Makefile @@ -1,41 +1,10 @@ TARGET:=uartdemo -all : flash - -PREFIX:=riscv64-unknown-elf - -GPIO_Toggle:=EXAM/GPIO/GPIO_Toggle/User - -CH32V003FUN:=../../ch32v003fun -MINICHLINK:=../../minichlink - -CFLAGS:= \ - -g -Os -flto -ffunction-sections \ - -static-libgcc \ - -march=rv32ec \ - -mabi=ilp32e \ - -I/usr/include/newlib \ - -I$(CH32V003FUN) \ - -nostdlib \ - -I. -DSTDOUT_UART -Wall +CFLAGS+=-DSTDOUT_UART -LDFLAGS:=-T $(CH32V003FUN)/ch32v003fun.ld -Wl,--gc-sections -L../../misc -lgcc +include ../../ch32v003fun/ch32v003fun.mk -SYSTEM_C:=$(CH32V003FUN)/ch32v003fun.c - -$(TARGET).elf : $(SYSTEM_C) $(TARGET).c - $(PREFIX)-gcc -o $@ $^ $(CFLAGS) $(LDFLAGS) - -$(TARGET).bin : $(TARGET).elf - $(PREFIX)-size $^ - $(PREFIX)-objdump -S $^ > $(TARGET).lst - $(PREFIX)-objdump -t $^ > $(TARGET).map - $(PREFIX)-objcopy -O binary $< $(TARGET).bin - $(PREFIX)-objcopy -O ihex $< $(TARGET).hex - -flash : $(TARGET).bin - $(MINICHLINK)/minichlink -w $< flash -b - -clean : - rm -rf $(TARGET).elf $(TARGET).bin $(TARGET).hex $(TARGET).lst $(TARGET).map $(TARGET).hex +all : flash +flash : cv_flash +clean : cv_clean diff --git a/examples/ws2812bdemo/Makefile b/examples/ws2812bdemo/Makefile index c6af022ccd8361416768fe0a4f27e0fa2214cfaf..3c823287b90bca972df8988b6aebd343baaa16b5 100644 --- a/examples/ws2812bdemo/Makefile +++ b/examples/ws2812bdemo/Makefile @@ -1,40 +1,7 @@ -TARGET:=ws2812bdemo +TARGET:= ws2812bdemo -all : flash - -PREFIX:=riscv64-unknown-elf - -CH32V003FUN:=../../ch32v003fun -MINICHLINK:=../../minichlink - -CFLAGS:= \ - -g -Os -flto -ffunction-sections \ - -static-libgcc \ - -march=rv32ec \ - -mabi=ilp32e \ - -I/usr/include/newlib \ - -I$(CH32V003FUN) \ - -nostdlib \ - -I. -Wall - -LDFLAGS:=-T $(CH32V003FUN)/ch32v003fun.ld -Wl,--gc-sections -L../../misc -lgcc - -SYSTEM_C:=$(CH32V003FUN)/ch32v003fun.c - -$(TARGET).elf : $(SYSTEM_C) $(TARGET).c - $(PREFIX)-gcc -o $@ $^ $(CFLAGS) $(LDFLAGS) - -$(TARGET).bin : $(TARGET).elf - $(PREFIX)-size $^ - $(PREFIX)-objdump -S $^ > $(TARGET).lst - $(PREFIX)-objdump -t $^ > $(TARGET).map - $(PREFIX)-objcopy -O binary $< $(TARGET).bin - $(PREFIX)-objcopy -O ihex $< $(TARGET).hex - -flash : $(TARGET).bin - make -C $(MINICHLINK) all - $(MINICHLINK)/minichlink -w $< flash -b - -clean : - rm -rf $(TARGET).elf $(TARGET).bin $(TARGET).hex $(TARGET).lst $(TARGET).map $(TARGET).hex +include ../../ch32v003fun/ch32v003fun.mk +all : flash +flash : cv_flash +clean : cv_clean