summaryrefslogtreecommitdiff
path: root/target/nds32
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2016-02-16 09:02:05 +0100
committerWaldemar Brodkorb <wbx@openadk.org>2016-02-16 09:02:05 +0100
commit40b0e9c937b3098fce9e570d2ce4f3a057456bd0 (patch)
tree06d5344a283f0c964bd504758525ce9170f179e2 /target/nds32
parent22120d505749f6b174ce482d2b60980e14ce248b (diff)
add nds32 bare-metal toolchain support
Diffstat (limited to 'target/nds32')
-rw-r--r--target/nds32/Makefile56
-rw-r--r--target/nds32/systems/toolchain-nds328
2 files changed, 64 insertions, 0 deletions
diff --git a/target/nds32/Makefile b/target/nds32/Makefile
new file mode 100644
index 000000000..3d8f8d42b
--- /dev/null
+++ b/target/nds32/Makefile
@@ -0,0 +1,56 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+include $(ADK_TOPDIR)/rules.mk
+include $(ADK_TOPDIR)/mk/kernel-build.mk
+include $(ADK_TOPDIR)/mk/image.mk
+
+KERNEL:=$(LINUX_DIR)/$(ADK_TARGET_KERNEL)
+
+# target helper text
+ifeq ($(ADK_TARGET_FS),archive)
+targethelp:
+ @echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSTARBALL)"
+endif
+ifeq ($(ADK_TARGET_FS),initramfs)
+targethelp:
+ @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}'
+ @echo 'The initramfs image is: ${FW_DIR}/${INITRAMFS}'
+endif
+ifeq ($(ADK_TARGET_FS),initramfsarchive)
+targethelp:
+ @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}'
+ @echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSUSERTARBALL)"
+endif
+ifeq ($(ADK_TARGET_FS),initramfspiggyback)
+targethelp:
+ @echo 'The kernel+initramfs file is: $(FW_DIR)/${TARGET_KERNEL}'
+endif
+ifeq ($(ADK_TARGET_FS),nfsroot)
+targethelp:
+ @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}'
+ @echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSUSERTARBALL)"
+endif
+
+kernel-strip:
+ @cp $(KERNEL) $(BUILD_DIR)/$(TARGET_KERNEL)
+
+kernel-install: kernel-strip
+ @cp $(BUILD_DIR)/$(TARGET_KERNEL) $(FW_DIR)/$(TARGET_KERNEL)
+
+# filesystem specific targets
+ifeq ($(ADK_TARGET_FS),archive)
+imageinstall: $(FW_DIR)/$(ROOTFSTARBALL) targethelp
+endif
+ifeq ($(ADK_TARGET_FS),initramfs)
+imageinstall: kernel-install $(FW_DIR)/$(INITRAMFS) targethelp
+endif
+ifeq ($(ADK_TARGET_FS),initramfsarchive)
+imageinstall: kernel-install $(FW_DIR)/$(ROOTFSUSERTARBALL) targethelp
+endif
+ifeq ($(ADK_TARGET_FS),initramfspiggyback)
+imageinstall: createinitramfs targethelp
+endif
+ifeq ($(ADK_TARGET_FS),nfsroot)
+imageinstall: kernel-install $(FW_DIR)/$(ROOTFSUSERTARBALL) targethelp
+endif
diff --git a/target/nds32/systems/toolchain-nds32 b/target/nds32/systems/toolchain-nds32
new file mode 100644
index 000000000..268f5289c
--- /dev/null
+++ b/target/nds32/systems/toolchain-nds32
@@ -0,0 +1,8 @@
+config ADK_TARGET_SYSTEM_TOOLCHAIN_NDS32
+ bool "Toolchain only"
+ select ADK_CPU_NDS32
+ select ADK_TARGET_TOOLCHAIN
+ select ADK_TARGET_PACKAGE_TXZ
+ help
+ NDS32 toolchain.
+