Index: build-config.mk.template
===================================================================
--- build-config.mk.template (revision 67)
+++ build-config.mk.template (revision 68)
@@ -81,6 +81,9 @@
# TARGET: arm-at91sam7s-eabi:
ENABLE_AT91S = true
+# TARGET: riscv64-none-elf:
+ENABLE_LONGAN_NANO = true
+
# TARGET: arm-imx6-linux-gnueabihf:
ENABLE_NIT6Q = true
ENABLE_OKMX6DL_C = false
Index: constants.mk
===================================================================
--- constants.mk (revision 67)
+++ constants.mk (revision 68)
@@ -309,8 +309,15 @@
AT91S_USE_BUILT_GCC_LIBS = no
AT91S_ENABLE_STATIC = yes
+####### RISC-V devices:
+HARDWARE_LONGAN_NANO = longan-nano
+### |---HW-spec-handy-ruler-----------------------|
+LONGAN_NANO_SPEC = GigaDevice GD32VF103 \(Newlib based\)
+LONGAN_NANO_USE_BUILT_GCC_LIBS = no
+LONGAN_NANO_ENABLE_STATIC = yes
+
####### i.MX6 devices:
####### -------------
@@ -666,6 +673,7 @@
CB3X_ID_STD = 0301
AT91S_ID_STD = 0400
+ LONGAN_NANO_ID_STD = 0500
NIT6Q_ID_STD = 0601
OKMX6DL_C_ID_STD = 0602
@@ -1153,7 +1161,23 @@
AT91SAM7S_NEWLIB_HARDWARE_VARIANTS := $(HARDWARE_AT91S)
+# ======= RISCV-NEWLIB =======================================================
+TOOLCHAIN_RISCV_NEWLIB = riscv-newlib
+
+RISCV_NEWLIB_ARCH = riscv64-none-elf
+RISCV_NEWLIB_VERSION = 1.11.3
+RISCV_NEWLIB_DIR = riscv64-NONE-elf-newlib
+RISCV_NEWLIB_PATH = $(TOOLCHAINS_BASE_PATH)/$(RISCV_NEWLIB_DIR)
+RISCV_NEWLIB_TARBALL = $(TOOLCHAINS_FTP_BASE)/$(RISCV_NEWLIB_VERSION)/$(RISCV_NEWLIB_DIR)-$(RISCV_NEWLIB_VERSION).$(TARBALL_SUFFIX)
+
+RISCV_NEWLIB_ARCH_DEFS = -D__RISCV_NEWLIB__=1
+RISCV_NEWLIB_ARCH_FLAGS =
+
+RISCV_NEWLIB_HARDWARE_VARIANTS := $(HARDWARE_LONGAN_NANO)
+
+
+
# ======= IMX6-GLIBC ======================================================
TOOLCHAIN_IMX6_GLIBC = imx6-glibc