From 172308cb1be5b23c816c19d0b9c84ba4910cbe80 Mon Sep 17 00:00:00 2001 From: Alexey Neyman Date: Mon, 19 Nov 2018 23:34:48 -0800 Subject: Add moxie architecture and a moxie-unknown-elf target (which is what #1088 apparently wanted). Signed-off-by: Alexey Neyman diff --git a/config/arch/moxie.in b/config/arch/moxie.in new file mode 100644 index 0000000..8d8bb22 --- /dev/null +++ b/config/arch/moxie.in @@ -0,0 +1,11 @@ +# Moxie soft-core architecture + +## no-package +## select ARCH_SUPPORTS_32 +## select ARCH_DEFAULT_32 +## select ARCH_SUPPORTS_EITHER_ENDIAN +## select ARCH_DEFAULT_BE +## depends on EXPERIMENTAL + +## help The Moxie soft-core architecture, as defined by: +## help http://moxielogic.org/blog/pages/architecture.html diff --git a/config/comp_tools/dtc.in b/config/comp_tools/dtc.in index 88628a0..72c7b14 100644 --- a/config/comp_tools/dtc.in +++ b/config/comp_tools/dtc.in @@ -1,4 +1,6 @@ # Kernel.org's device tree compiler +## default y if !CONFIGURE_has_dtc && ARCH_MOXIE + config DTC_VERBOSE bool "Verbose DTC build output" diff --git a/config/kernel/linux.in b/config/kernel/linux.in index fb16067..2602b53 100644 --- a/config/kernel/linux.in +++ b/config/kernel/linux.in @@ -1,6 +1,6 @@ # Linux kernel options -## depends on ! ARCH_AVR +## depends on !ARCH_AVR && !ARCH_MSP430 && !ARCH_MOXIE ## select KERNEL_SUPPORTS_SHARED_LIBS ## help Build a toolchain targeting systems running Linux as a kernel. diff --git a/samples/moxie-unknown-elf/crosstool.config b/samples/moxie-unknown-elf/crosstool.config new file mode 100644 index 0000000..23604a1 --- /dev/null +++ b/samples/moxie-unknown-elf/crosstool.config @@ -0,0 +1,8 @@ +CT_EXPERIMENTAL=y +CT_ARCH_MOXIE=y +CT_ARCH_BE=y +CT_NEWLIB_V_2_5_0=y +CT_DEBUG_GDB=y +CT_GDB_CROSS_SIM=y +# CT_GDB_CROSS_PYTHON is not set +CT_DTC_VERBOSE=y diff --git a/samples/moxie-unknown-elf/reported.by b/samples/moxie-unknown-elf/reported.by new file mode 100644 index 0000000..13d42a9 --- /dev/null +++ b/samples/moxie-unknown-elf/reported.by @@ -0,0 +1,3 @@ +reporter_name="Alexey Neyman" +reporter_url="" +reporter_comment="Bare metal configuration for moxie architecture." diff --git a/scripts/build/arch/moxie.sh b/scripts/build/arch/moxie.sh new file mode 100644 index 0000000..91a9969 --- /dev/null +++ b/scripts/build/arch/moxie.sh @@ -0,0 +1,7 @@ +# Moxie-specific arch callbacks + +# No arch-specific overrides yet +CT_DoArchTupleValues() +{ + : +} diff --git a/scripts/build/kernel/windows.sh b/scripts/build/kernel/windows.sh index 5e34420..7d6266c 100644 --- a/scripts/build/kernel/windows.sh +++ b/scripts/build/kernel/windows.sh @@ -6,7 +6,6 @@ CT_DoKernelTupleValues() { # Even we compile for x86_64 target architecture, the target OS have to # bet mingw32 (require by gcc and mingw-w64) CT_TARGET_KERNEL="mingw32" - CT_TARGET_SYS= } do_kernel_get() { diff --git a/scripts/functions b/scripts/functions index 973ba3f..65a74c2 100644 --- a/scripts/functions +++ b/scripts/functions @@ -1091,16 +1091,21 @@ CT_DoBuildTargetTuple() { # Set defaults for the system part of the tuple. Can be overriden # by architecture-specific values. case "${CT_LIBC}" in - *glibc) CT_TARGET_SYS=gnu;; - uClibc) CT_TARGET_SYS=uclibc;; - musl) CT_TARGET_SYS=musl;; + glibc) CT_TARGET_SYS=gnu;; + uClibc) CT_TARGET_SYS=uclibc;; + musl) CT_TARGET_SYS=musl;; bionic) CT_TARGET_SYS=android;; avr-libc) # avr-libc only seems to work with the non-canonical "avr" target. CT_TARGET_SKIP_CONFIG_SUB=y CT_TARGET_SYS= # CT_TARGET_SYS must be empty too - ;; - *) CT_TARGET_SYS=elf;; + ;; + none|newlib) + CT_TARGET_SYS=elf + ;; + *) + CT_TARGET_SYS= # Keep empty for the libraries like mingw + ;; esac # Set the default values for ARCH, ABI, CPU, TUNE, FPU and FLOAT -- cgit v0.10.2-6-g49f6