From 246a3268c74b32628bdb662bedf6af3e2a0c001d Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Fri, 13 Feb 2015 13:14:05 -0600 Subject: add basic nios2 toolchain support --- mk/kernel-ver.mk | 6 + target/arch.lst | 1 + target/config/Config.in.cpu | 1 + target/config/Config.in.kernelversion.choice | 24 +-- target/config/Config.in.kernelversion.default | 4 + target/nios2/Makefile | 9 ++ target/nios2/systems/toolchain-nios2 | 9 ++ target/nios2/uclibc.config | 220 ++++++++++++++++++++++++++ 8 files changed, 264 insertions(+), 10 deletions(-) create mode 100644 target/nios2/Makefile create mode 100644 target/nios2/systems/toolchain-nios2 create mode 100644 target/nios2/uclibc.config diff --git a/mk/kernel-ver.mk b/mk/kernel-ver.mk index caf467bf5..e0b3d1299 100644 --- a/mk/kernel-ver.mk +++ b/mk/kernel-ver.mk @@ -1,3 +1,9 @@ +ifeq ($(ADK_KERNEL_VERSION_3_19_0),y) +KERNEL_VERSION:= 3.19 +KERNEL_MOD_VERSION:= 0 +KERNEL_RELEASE:= 1 +KERNEL_HASH:= be42511fe5321012bb4a2009167ce56a9e5fe362b4af43e8c371b3666859806c +endif ifeq ($(ADK_KERNEL_VERSION_3_18_6),y) KERNEL_VERSION:= 3.18.6 KERNEL_MOD_VERSION:= $(KERNEL_VERSION) diff --git a/target/arch.lst b/target/arch.lst index eb4a4a77e..2b5772dd0 100644 --- a/target/arch.lst +++ b/target/arch.lst @@ -10,6 +10,7 @@ m68k microblaze mips mips64 +nios2 ppc ppc64 sparc diff --git a/target/config/Config.in.cpu b/target/config/Config.in.cpu index a877c651a..f554bd664 100644 --- a/target/config/Config.in.cpu +++ b/target/config/Config.in.cpu @@ -170,6 +170,7 @@ config ADK_TARGET_CPU_ARCH default "mips64el" if ADK_TARGET_ARCH_MIPS64 && ADK_little default "mips" if ADK_TARGET_ARCH_MIPS && ADK_big default "mipsel" if ADK_TARGET_ARCH_MIPS && ADK_little + default "nios2" if ADK_TARGET_ARCH_NIOS2 default "ppc" if ADK_CPU_PPC default "ppc" if ADK_CPU_PPC_440 default "ppc64" if ADK_CPU_PPC64 diff --git a/target/config/Config.in.kernelversion.choice b/target/config/Config.in.kernelversion.choice index 960d72836..cc004f53d 100644 --- a/target/config/Config.in.kernelversion.choice +++ b/target/config/Config.in.kernelversion.choice @@ -7,37 +7,41 @@ depends on ADK_TARGET_KERNEL_CUSTOMISING default ADK_KERNEL_VERSION_3_14_28 if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6 default ADK_KERNEL_VERSION_3_18.6 +config ADK_KERNEL_VERSION_3_19_0 + bool "3.19" + select ADK_KERNEL_VERSION_3_19 + config ADK_KERNEL_VERSION_3_18_6 - prompt "3.18.6" + bool "3.18.6" depends on !ADK_TARGET_SYSTEM_MIKROTIK_RB4XX - boolean + depends on !ADK_TARGET_ARCH_NIOS2 select ADK_KERNEL_VERSION_3_18 config ADK_KERNEL_VERSION_3_14_28 - prompt "3.14.28" - boolean + bool "3.14.28" + depends on !ADK_TARGET_ARCH_NIOS2 select ADK_KERNEL_VERSION_3_14 config ADK_KERNEL_VERSION_3_12_37 - prompt "3.12.37" + bool "3.12.37" depends on !ADK_TARGET_SYSTEM_SOLIDRUN_IMX6 depends on !ADK_TARGET_SYSTEM_MIKROTIK_RB4XX - boolean + depends on !ADK_TARGET_ARCH_NIOS2 select ADK_KERNEL_VERSION_3_12 config ADK_KERNEL_VERSION_3_10_53 - prompt "3.10.53" + bool "3.10.53" depends on !ADK_TARGET_SYSTEM_SOLIDRUN_IMX6 depends on !ADK_TARGET_SYSTEM_MIKROTIK_RB4XX - boolean + depends on !ADK_TARGET_ARCH_NIOS2 select ADK_KERNEL_VERSION_3_10 config ADK_KERNEL_VERSION_3_4_103 - prompt "3.4.103" + bool "3.4.103" depends on !ADK_TARGET_SYSTEM_RASPBERRY_PI depends on !ADK_TARGET_SYSTEM_SOLIDRUN_IMX6 depends on !ADK_TARGET_SYSTEM_MIKROTIK_RB4XX - boolean + depends on !ADK_TARGET_ARCH_NIOS2 select ADK_KERNEL_VERSION_3_4 endchoice diff --git a/target/config/Config.in.kernelversion.default b/target/config/Config.in.kernelversion.default index 647cca41b..944c24113 100644 --- a/target/config/Config.in.kernelversion.default +++ b/target/config/Config.in.kernelversion.default @@ -1,6 +1,9 @@ # This file is part of the OpenADK project. OpenADK is copyrighted # material, please see the LICENCE file in the top-level directory. +config ADK_KERNEL_VERSION_3_19 + bool + config ADK_KERNEL_VERSION_3_18 bool @@ -18,6 +21,7 @@ config ADK_KERNEL_VERSION_3_4 config ADK_KERNEL_VERSION string + default "3.19" if ADK_KERNEL_VERSION_3_19_0 default "3.18.6" if ADK_KERNEL_VERSION_3_18_6 default "3.14.28" if ADK_KERNEL_VERSION_3_14_28 default "3.12.37" if ADK_KERNEL_VERSION_3_12_37 diff --git a/target/nios2/Makefile b/target/nios2/Makefile new file mode 100644 index 000000000..ebc17340e --- /dev/null +++ b/target/nios2/Makefile @@ -0,0 +1,9 @@ +# 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.mk +include $(ADK_TOPDIR)/mk/modules.mk +include $(ADK_TOPDIR)/mk/kernel-build.mk +include $(ADK_TOPDIR)/mk/image.mk + diff --git a/target/nios2/systems/toolchain-nios2 b/target/nios2/systems/toolchain-nios2 new file mode 100644 index 000000000..750cf1edf --- /dev/null +++ b/target/nios2/systems/toolchain-nios2 @@ -0,0 +1,9 @@ +config ADK_TARGET_SYSTEM_TOOLCHAIN_NIOS2 + bool "Toolchain only" + select ADK_nios2 + select ADK_toolchain_nios2 + select ADK_TARGET_TOOLCHAIN + select ADK_TARGET_PACKAGE_TXZ + help + NIOS2 toolchain. + diff --git a/target/nios2/uclibc.config b/target/nios2/uclibc.config new file mode 100644 index 000000000..7e2fd58f0 --- /dev/null +++ b/target/nios2/uclibc.config @@ -0,0 +1,220 @@ +# +# Automatically generated file; DO NOT EDIT. +# uClibc 1.0.0-git C Library Configuration +# +# TARGET_arc is not set +# TARGET_arm is not set +# TARGET_avr32 is not set +# TARGET_bfin is not set +# TARGET_c6x is not set +# TARGET_cris is not set +# TARGET_i386 is not set +# TARGET_m68k is not set +# TARGET_microblaze is not set +# TARGET_mips is not set +TARGET_nios2=y +# TARGET_powerpc is not set +# TARGET_sh is not set +# TARGET_sparc is not set +# TARGET_x86_64 is not set +# TARGET_xtensa is not set + +# +# Target Architecture Features and Options +# +TARGET_ARCH="nios2" +FORCE_OPTIONS_FOR_ARCH=y +TARGET_SUBARCH="" +UCLIBC_FORMAT_FLAT=y +# UCLIBC_FORMAT_FLAT_SEP_DATA is not set +# UCLIBC_FORMAT_SHARED_FLAT is not set +ARCH_HAS_DEPRECATED_SYSCALLS=y +ARCH_LITTLE_ENDIAN=y +# ARCH_WANTS_BIG_ENDIAN is not set +# ARCH_WANTS_LITTLE_ENDIAN is not set + +# +# Using Little Endian +# +ARCH_HAS_NO_MMU=y + +# +# Target CPU lacks a memory management unit (MMU) +# +UCLIBC_HAS_FLOATS=y +# UCLIBC_HAS_FPU is not set +UCLIBC_HAS_SOFT_FLOAT=y +DO_C99_MATH=y +# DO_XSI_MATH is not set +UCLIBC_HAS_FENV=y +KERNEL_HEADERS="" +UCLIBC_UCLINUX_BROKEN_MUNMAP=y +HAVE_DOT_CONFIG=y + +# +# General Library Settings +# +HAVE_NO_PIC=y +ARCH_HAS_NO_SHARED=y +ARCH_HAS_NO_LDSO=y +UCLIBC_CTOR_DTOR=y +HAS_NO_THREADS=y +# LINUXTHREADS_OLD is not set +# LINUXTHREADS_NEW is not set +# UCLIBC_HAS_THREADS_NATIVE is not set +UCLIBC_HAS_SYSLOG=y +UCLIBC_HAS_LFS=y +MALLOC=y +# MALLOC_SIMPLE is not set +# MALLOC_STANDARD is not set +MALLOC_GLIBC_COMPAT=y +UCLIBC_HAS_OBSTACK=y +UCLIBC_DYNAMIC_ATEXIT=y +COMPAT_ATEXIT=y +UCLIBC_SUSV2_LEGACY=y +UCLIBC_SUSV3_LEGACY=y +# UCLIBC_SUSV3_LEGACY_MACROS is not set +UCLIBC_SUSV4_LEGACY=y +# UCLIBC_STRICT_HEADERS is not set +# UCLIBC_HAS_STUBS is not set +UCLIBC_HAS_SHADOW=y +UCLIBC_HAS_PROGRAM_INVOCATION_NAME=y +UCLIBC_HAS___PROGNAME=y +UCLIBC_HAS_PTY=y +ASSUME_DEVPTS=y +UNIX98PTY_ONLY=y +UCLIBC_HAS_GETPT=y +UCLIBC_HAS_LIBUTIL=y +UCLIBC_HAS_TM_EXTENSIONS=y +UCLIBC_HAS_TZ_CACHING=y +UCLIBC_HAS_TZ_FILE=y +UCLIBC_HAS_TZ_FILE_READ_MANY=y +UCLIBC_TZ_FILE_PATH="/etc/TZ" +UCLIBC_FALLBACK_TO_ETC_LOCALTIME=y + +# +# Advanced Library Settings +# +UCLIBC_PWD_BUFFER_SIZE=256 +UCLIBC_GRP_BUFFER_SIZE=256 + +# +# Support various families of functions +# +UCLIBC_LINUX_MODULE_26=y +# UCLIBC_LINUX_MODULE_24 is not set +UCLIBC_LINUX_SPECIFIC=y +UCLIBC_HAS_GNU_ERROR=y +UCLIBC_BSD_SPECIFIC=y +UCLIBC_HAS_BSD_ERR=y +UCLIBC_HAS_OBSOLETE_BSD_SIGNAL=y +# UCLIBC_HAS_OBSOLETE_SYSV_SIGNAL is not set +# UCLIBC_NTP_LEGACY is not set +UCLIBC_SV4_DEPRECATED=y +UCLIBC_HAS_REALTIME=y +UCLIBC_HAS_ADVANCED_REALTIME=y +UCLIBC_HAS_EPOLL=y +UCLIBC_HAS_XATTR=y +# UCLIBC_HAS_PROFILING is not set +UCLIBC_HAS_CRYPT_IMPL=y +# UCLIBC_HAS_SHA256_CRYPT_IMPL is not set +# UCLIBC_HAS_SHA512_CRYPT_IMPL is not set +UCLIBC_HAS_CRYPT=y +UCLIBC_HAS_NETWORK_SUPPORT=y +UCLIBC_HAS_SOCKET=y +UCLIBC_HAS_IPV4=y +UCLIBC_HAS_IPV6=y +# UCLIBC_HAS_RPC is not set +UCLIBC_USE_NETLINK=y +UCLIBC_SUPPORT_AI_ADDRCONFIG=y +UCLIBC_HAS_BSD_RES_CLOSE=y +UCLIBC_HAS_COMPAT_RES_STATE=y +# UCLIBC_HAS_EXTRA_COMPAT_RES_STATE is not set +UCLIBC_HAS_RESOLVER_SUPPORT=y +UCLIBC_HAS_LIBRESOLV_STUB=y +UCLIBC_HAS_LIBNSL_STUB=y + +# +# String and Stdio Support +# +UCLIBC_HAS_STRING_GENERIC_OPT=y +UCLIBC_HAS_STRING_ARCH_OPT=y +UCLIBC_HAS_CTYPE_TABLES=y +UCLIBC_HAS_CTYPE_SIGNED=y +# UCLIBC_HAS_CTYPE_UNSAFE is not set +UCLIBC_HAS_CTYPE_CHECKED=y +# UCLIBC_HAS_CTYPE_ENFORCED is not set +UCLIBC_HAS_WCHAR=y +# UCLIBC_HAS_LOCALE is not set +UCLIBC_HAS_HEXADECIMAL_FLOATS=y +UCLIBC_HAS_GLIBC_CUSTOM_PRINTF=y +UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9 +# UCLIBC_HAS_STDIO_BUFSIZ_256 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_512 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_1024 is not set +# UCLIBC_HAS_STDIO_BUFSIZ_2048 is not set +UCLIBC_HAS_STDIO_BUFSIZ_4096=y +# UCLIBC_HAS_STDIO_BUFSIZ_8192 is not set +UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE=y +# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4 is not set +# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8 is not set +# UCLIBC_HAS_STDIO_SHUTDOWN_ON_ABORT is not set +UCLIBC_HAS_STDIO_GETC_MACRO=y +UCLIBC_HAS_STDIO_PUTC_MACRO=y +UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION=y +# UCLIBC_HAS_FOPEN_LARGEFILE_MODE is not set +UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y +# UCLIBC_HAS_FOPEN_CLOSEEXEC_MODE is not set +UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y +UCLIBC_HAS_PRINTF_M_SPEC=y +UCLIBC_HAS_ERRNO_MESSAGES=y +# UCLIBC_HAS_SYS_ERRLIST is not set +UCLIBC_HAS_SIGNUM_MESSAGES=y +# UCLIBC_HAS_SYS_SIGLIST is not set +UCLIBC_HAS_GNU_GETOPT=y +UCLIBC_HAS_GETOPT_LONG=y +UCLIBC_HAS_GNU_GETSUBOPT=y + +# +# Big and Tall +# +UCLIBC_HAS_REGEX=y +# UCLIBC_HAS_REGEX_OLD is not set +UCLIBC_HAS_FNMATCH=y +# UCLIBC_HAS_FNMATCH_OLD is not set +UCLIBC_HAS_WORDEXP=y +UCLIBC_HAS_NFTW=y +UCLIBC_HAS_FTW=y +UCLIBC_HAS_FTS=y +UCLIBC_HAS_GLOB=y +UCLIBC_HAS_GNU_GLOB=y +UCLIBC_HAS_UTMPX=y + +# +# Library Installation Options +# +RUNTIME_PREFIX="/" +DEVEL_PREFIX="/usr/" +MULTILIB_DIR="lib" +HARDWIRED_ABSPATH=y + +# +# Security options +# +UCLIBC_HAS_ARC4RANDOM=y +# ARC4RANDOM_USES_NODEV is not set +# UCLIBC_HAS_SSP is not set +UCLIBC_BUILD_NOEXECSTACK=y + +# +# Development/debugging options +# +CROSS_COMPILER_PREFIX="" +UCLIBC_EXTRA_CFLAGS="" +# DODEBUG is not set +# DOSTRIP is not set +# DOASSERTS is not set +# UCLIBC_MALLOC_DEBUGGING is not set +WARNINGS="-Wall" +# EXTRA_WARNINGS is not set +# DOMULTI is not set -- cgit v1.2.3