From 220a96f9926788ed531717f78e44fdf1e7ab3b34 Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Thu, 30 Dec 2010 22:45:29 +0100 Subject: rework architecture / embedded systems concept Make configuration of new targets cheap. Just add a new file in target/arch/sys-enabled/foo. See other files for syntax. While doing runtime tests with the new infrastructure I've updated a lot of other stuff: - gcc 4.5.2 - uClibc 0.9.32-rc1 (NPTL) - strongswan, php, miredo, parted, util-linux-ng, e2fsprogs I promise, this is the last big fat commit this year ;) --- target/sparc/Config.in | 9 ++++++++ target/sparc/Makefile | 18 ++++++++-------- target/sparc/sys-available/toolchain | 8 +++++++ target/sparc/uclibc.config | 42 ++++++++++++++++++++++++------------ 4 files changed, 54 insertions(+), 23 deletions(-) create mode 100644 target/sparc/Config.in create mode 100644 target/sparc/sys-available/toolchain (limited to 'target/sparc') diff --git a/target/sparc/Config.in b/target/sparc/Config.in new file mode 100644 index 000000000..7c956b58a --- /dev/null +++ b/target/sparc/Config.in @@ -0,0 +1,9 @@ +choice +depends on ADK_LINUX_SPARC || ADK_LINUX_NATIVE && !ADK_CHOOSE_TARGET_ARCH +prompt "Target system" + +config ADK_CHOOSE_TARGET_SYSTEM_SPARC + boolean "Choose target system" + +source "target/sparc/Config.in.systems" +endchoice diff --git a/target/sparc/Makefile b/target/sparc/Makefile index 30656e570..50cfbb6ac 100644 --- a/target/sparc/Makefile +++ b/target/sparc/Makefile @@ -9,20 +9,20 @@ include $(TOPDIR)/mk/image.mk KERNEL:=$(LINUX_DIR)/arch/sparc/boot/zImage -ifeq ($(FS),archive) +ifeq ($(ADK_TARGET_FS),archive) imageinstall: $(BIN_DIR)/$(ROOTFSTARBALL) - @cp $(KERNEL) ${BIN_DIR}/${ADK_TARGET}-${FS}-kernel - @echo 'The kernel file is: ${BIN_DIR}/${ADK_TARGET}-${FS}-kernel' + @cp $(KERNEL) ${TARGET_KERNEL} + @echo 'The kernel file is: ${TARGET_KERNEL}' @echo "The RootFS tarball is: $(BIN_DIR)/$(ROOTFSTARBALL)" endif -ifeq ($(FS),initramfs) +ifeq ($(ADK_TARGET_FS),initramfs) imageinstall: $(BIN_DIR)/$(INITRAMFS) - @cp $(KERNEL) $(BIN_DIR)/${ADK_TARGET}-${FS}-kernel - @echo 'The kernel file is: ${BIN_DIR}/${ADK_TARGET}-${FS}-kernel' + @cp $(KERNEL) $(TARGET_KERNEL) + @echo 'The kernel file is: ${TARGET_KERNEL}' @echo 'The initramfs image is: ${BIN_DIR}/${INITRAMFS}' endif -ifeq ($(FS),initramfs-piggyback) +ifeq ($(ADK_TARGET_FS),initramfs-piggyback) imageinstall: ${BUILD_DIR}/${INITRAMFS_PIGGYBACK} createinitramfs - @cp $(KERNEL) ${BIN_DIR}/${ADK_TARGET}-${FS}-kernel - @echo 'The kernel+initramfs file is: ${BIN_DIR}/${ADK_TARGET}-${FS}-kernel' + @cp $(KERNEL) ${TARGET_KERNEL} + @echo 'The kernel+initramfs file is: ${TARGET_KERNEL}' endif diff --git a/target/sparc/sys-available/toolchain b/target/sparc/sys-available/toolchain new file mode 100644 index 000000000..7091070a2 --- /dev/null +++ b/target/sparc/sys-available/toolchain @@ -0,0 +1,8 @@ +config ADK_TARGET_SYSTEM_TOOLCHAIN_SPARC + bool "Toolchain only" + select ADK_sparc + select ADK_toolchain + select ADK_TOOLCHAIN_ONLY + help + Build a sparc toolchain. + diff --git a/target/sparc/uclibc.config b/target/sparc/uclibc.config index 9ccf17a98..e9504e648 100644 --- a/target/sparc/uclibc.config +++ b/target/sparc/uclibc.config @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit -# Version: 0.9.30.2 -# Sun Feb 14 11:37:59 2010 +# Version: 0.9.32-rc1 +# Mon Dec 27 23:01:34 2010 # # TARGET_alpha is not set # TARGET_arm is not set @@ -34,8 +34,6 @@ TARGET_sparc=y # TARGET_ARCH="sparc" FORCE_OPTIONS_FOR_ARCH=y -# CONFIG_CLASSIC is not set -# CONFIG_E500 is not set # CONFIG_SPARC_V7 is not set CONFIG_SPARC_V8=y # CONFIG_SPARC_V9 is not set @@ -55,6 +53,7 @@ ARCH_USE_MMU=y UCLIBC_HAS_FLOATS=y UCLIBC_HAS_FPU=y DO_C99_MATH=y +# DO_XSI_MATH is not set UCLIBC_HAS_FENV=y UCLIBC_HAS_LONG_DOUBLE_MATH=y KERNEL_HEADERS="" @@ -71,16 +70,21 @@ HAVE_SHARED=y # FORCE_SHAREABLE_TEXT_SEGMENTS is not set LDSO_LDD_SUPPORT=y LDSO_CACHE_SUPPORT=y +# LDSO_PRELOAD_ENV_SUPPORT is not set # LDSO_PRELOAD_FILE_SUPPORT is not set LDSO_BASE_FILENAME="ld.so" # UCLIBC_STATIC_LDCONFIG is not set LDSO_RUNPATH=y +LDSO_SEARCH_INTERP_PATH=y UCLIBC_CTOR_DTOR=y # LDSO_GNU_HASH_SUPPORT is not set # HAS_NO_THREADS is not set +# LINUXTHREADS_OLD is not set +# LINUXTHREADS_NEW is not set +UCLIBC_HAS_THREADS_NATIVE=y UCLIBC_HAS_THREADS=y -PTHREADS_DEBUG_SUPPORT=y -LINUXTHREADS_OLD=y +UCLIBC_HAS_TLS=y +# PTHREADS_DEBUG_SUPPORT is not set UCLIBC_HAS_SYSLOG=y UCLIBC_HAS_LFS=y # MALLOC is not set @@ -89,8 +93,9 @@ MALLOC_STANDARD=y MALLOC_GLIBC_COMPAT=y UCLIBC_DYNAMIC_ATEXIT=y COMPAT_ATEXIT=y -# UCLIBC_SUSV3_LEGACY is not set +UCLIBC_SUSV3_LEGACY=y # UCLIBC_SUSV3_LEGACY_MACROS is not set +UCLIBC_SUSV4_LEGACY=y # UCLIBC_HAS_STUBS is not set UCLIBC_HAS_SHADOW=y UCLIBC_HAS_PROGRAM_INVOCATION_NAME=y @@ -98,12 +103,14 @@ UCLIBC_HAS___PROGNAME=y UCLIBC_HAS_PTY=y ASSUME_DEVPTS=y UNIX98PTY_ONLY=y -# UCLIBC_HAS_GETPT is not set +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 @@ -126,7 +133,7 @@ UCLIBC_HAS_BSD_ERR=y UCLIBC_HAS_REALTIME=y UCLIBC_HAS_ADVANCED_REALTIME=y UCLIBC_HAS_EPOLL=y -UCLIBC_HAS_XATTR=y +# UCLIBC_HAS_XATTR is not set # UCLIBC_HAS_PROFILING is not set UCLIBC_HAS_CRYPT_IMPL=y UCLIBC_HAS_CRYPT=y @@ -140,6 +147,10 @@ UCLIBC_HAS_REENTRANT_RPC=y 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_LIBRESOLV_STUB=y +UCLIBC_HAS_LIBNSL_STUB=y # # String and Stdio Support @@ -180,26 +191,30 @@ UCLIBC_HAS_ERRNO_MESSAGES=y UCLIBC_HAS_SIGNUM_MESSAGES=y # UCLIBC_HAS_SYS_SIGLIST is not set UCLIBC_HAS_GNU_GETOPT=y +UCLIBC_HAS_STDIO_FUTEXES=y UCLIBC_HAS_GNU_GETSUBOPT=y # # Big and Tall # UCLIBC_HAS_REGEX=y -UCLIBC_HAS_REGEX_OLD=y +# UCLIBC_HAS_REGEX_OLD is not set UCLIBC_HAS_FNMATCH=y -UCLIBC_HAS_FNMATCH_OLD=y +# UCLIBC_HAS_FNMATCH_OLD is not set UCLIBC_HAS_WORDEXP=y +UCLIBC_HAS_NFTW=y UCLIBC_HAS_FTW=y UCLIBC_HAS_GLOB=y UCLIBC_HAS_GNU_GLOB=y +# UCLIBC_HAS_UTMPX is not set # # Library Installation Options # -SHARED_LIB_LOADER_PREFIX="/lib" RUNTIME_PREFIX="/" DEVEL_PREFIX="/usr/" +MULTILIB_DIR="lib" +HARDWIRED_ABSPATH=y # # Security options @@ -217,13 +232,12 @@ UCLIBC_BUILD_NOEXECSTACK=y CROSS_COMPILER_PREFIX="" UCLIBC_EXTRA_CFLAGS="" # DODEBUG is not set -# DODEBUG_PT is not set DOSTRIP=y # DOASSERTS is not set # SUPPORT_LD_DEBUG is not set # SUPPORT_LD_DEBUG_EARLY is not set # UCLIBC_MALLOC_DEBUGGING is not set WARNINGS="-Wall" -# EXTRA_WARNINGS is not set +EXTRA_WARNINGS=y # DOMULTI is not set # UCLIBC_MJN3_ONLY is not set -- cgit v1.2.3