From 695fc89a426e7e1722b9681588b0bf4ecf6275a4 Mon Sep 17 00:00:00 2001
From: cnlohr <lohr85@gmail.com>
Date: Tue, 13 Feb 2024 05:39:53 -0500
Subject: [PATCH] Switch back around to numbered #define's for processor
 selection.

---
 ch32v003fun/ch32v003fun.ld | 8 ++++----
 ch32v003fun/ch32v003fun.mk | 5 +++--
 ch32v003fun/ch32v10xfun.mk | 2 ++
 ch32v003fun/ch32v20xfun.mk | 2 ++
 ch32v003fun/ch32v30xfun.mk | 2 ++
 5 files changed, 13 insertions(+), 6 deletions(-)

diff --git a/ch32v003fun/ch32v003fun.ld b/ch32v003fun/ch32v003fun.ld
index c05071e..982bd85 100644
--- a/ch32v003fun/ch32v003fun.ld
+++ b/ch32v003fun/ch32v003fun.ld
@@ -2,10 +2,10 @@ ENTRY( InterruptVector )
 
 MEMORY
 {
-#if TARGET_MCU == CH32V003
+#if TARGET_MCU_LD == 0
 	FLASH (rx) : ORIGIN = 0x00000000, LENGTH = 16K
 	RAM (xrw)  : ORIGIN = 0x20000000, LENGTH = 2K
-#elif TARGET_MCU == CH32V10x
+#elif TARGET_MCU_LD == 1
 	#if MCU_PACKAGE == 1
 		FLASH (rx) : ORIGIN = 0x00000000, LENGTH = 64K
 		RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 20K
@@ -15,7 +15,7 @@ MEMORY
 	#else
 		#error "Unknown MCU package"
 	#endif
-#elif TARGET_MCU == CH32V20x
+#elif TARGET_MCU_LD == 2
 	#if MCU_PACKAGE == 1
 		FLASH (rx) : ORIGIN = 0x00000000, LENGTH = 64K
 		RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 20K
@@ -28,7 +28,7 @@ MEMORY
 	#else
 		#error "Unknown MCU package"
 	#endif
-#elif TARGET_MCU == CH32V30x
+#elif TARGET_MCU_LD == 3
 	#if MCU_PACKAGE == 1
 		FLASH (rx) : ORIGIN = 0x00000000, LENGTH = 256K
 		RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 64K
diff --git a/ch32v003fun/ch32v003fun.mk b/ch32v003fun/ch32v003fun.mk
index 7173808..90fba97 100644
--- a/ch32v003fun/ch32v003fun.mk
+++ b/ch32v003fun/ch32v003fun.mk
@@ -42,6 +42,7 @@ ifeq ($(TARGET_MCU),CH32V003)
 		-I. -Wall $(EXTRA_CFLAGS)
 
 	GENERATED_LD_FILE?=$(CH32V003FUN)/generated_ch32v003.ld
+	TARGET_MCU_LD:=0
 	LINKER_SCRIPT?=$(GENERATED_LD_FILE)
 else
 	ifeq ($(findstring CH32V10,$(TARGET_MCU)),CH32V10)
@@ -99,10 +100,10 @@ clangd_clean :
 FLASH_COMMAND?=$(MINICHLINK)/minichlink -w $< $(WRITE_SECTION) -b
 
 $(GENERATED_LD_FILE) :
-	$(PREFIX)-gcc -E -P -x c -DTARGET_MCU=$(TARGET_MCU) $(CH32V003FUN)/ch32v003fun.ld > $(GENERATED_LD_FILE)
+	$(PREFIX)-gcc -E -P -x c -DTARGET_MCU=$(TARGET_MCU) -DMCU_PACKAGE=$(MCU_PACKAGE) -DTARGET_MCU_LD=$(TARGET_MCU_LD) $(CH32V003FUN)/ch32v003fun.ld > $(GENERATED_LD_FILE)
 
 
-$(TARGET).elf : $(FILES_TO_COMPILE) $(LINKER_SCRIPT)
+$(TARGET).elf : $(FILES_TO_COMPILE) $(LINKER_SCRIPT) $(EXTRA_ELF_DEPENDENCIES)
 	$(PREFIX)-gcc -o $@ $(FILES_TO_COMPILE) $(CFLAGS) $(LDFLAGS)
 
 cv_flash : $(TARGET).bin
diff --git a/ch32v003fun/ch32v10xfun.mk b/ch32v003fun/ch32v10xfun.mk
index aaa1e4d..b5a073a 100644
--- a/ch32v003fun/ch32v10xfun.mk
+++ b/ch32v003fun/ch32v10xfun.mk
@@ -25,6 +25,8 @@ else ifeq ($(findstring C6, $(TARGET_MCU_PACKAGE)), C6)
 	MCU_PACKAGE:=2
 endif
 
+TARGET_MCU_LD:=1
+
 GENERATED_LD_FILE:=$(CH32V003FUN)/generated_$(TARGET_MCU_PACKAGE).ld
 LINKER_SCRIPT:=$(GENERATED_LD_FILE)
 FILES_TO_COMPILE:=$(SYSTEM_C) $(TARGET).$(TARGET_EXT) $(ADDITIONAL_C_FILES)
diff --git a/ch32v003fun/ch32v20xfun.mk b/ch32v003fun/ch32v20xfun.mk
index f88a9c3..eb9e8fe 100644
--- a/ch32v003fun/ch32v20xfun.mk
+++ b/ch32v003fun/ch32v20xfun.mk
@@ -52,6 +52,8 @@ else
 	CFLAGS+=-DCH32V20x_D6
 endif
 
+TARGET_MCU_LD:=2
+
 GENERATED_LD_FILE:=$(CH32V003FUN)/generated_$(TARGET_MCU_PACKAGE).ld
 LINKER_SCRIPT:=$(GENERATED_LD_FILE)
 FILES_TO_COMPILE:=$(SYSTEM_C) $(TARGET).$(TARGET_EXT) $(ADDITIONAL_C_FILES)
diff --git a/ch32v003fun/ch32v30xfun.mk b/ch32v003fun/ch32v30xfun.mk
index a937bc0..0b1600c 100644
--- a/ch32v003fun/ch32v30xfun.mk
+++ b/ch32v003fun/ch32v30xfun.mk
@@ -38,6 +38,8 @@ else
 	CFLAGS+=-DCH32V30x_D8C
 endif
 
+TARGET_MCU_LD:=3
+
 GENERATED_LD_FILE:=$(CH32V003FUN)/generated_$(TARGET_MCU_PACKAGE).ld
 LINKER_SCRIPT:=$(GENERATED_LD_FILE)
 FILES_TO_COMPILE:=$(SYSTEM_C) $(TARGET).$(TARGET_EXT) $(ADDITIONAL_C_FILES)
-- 
GitLab