Radix cross Linux Build System

Cross-platform build system is designed to build distributions of different operating systems for a set of target devices

74 Commits   2 Branches   2 Tags
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