- some more sparc{,64} twiddling
authorBernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Sat, 15 Sep 2007 22:04:49 +0000 (22:04 -0000)
committerBernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Sat, 15 Sep 2007 22:04:49 +0000 (22:04 -0000)
Config.in
package/Makefile.in
toolchain/uClibc/uclibc.mk

index 7d3dde8053152ff3f1cee7b6d0cb14b4cb5dd197..4ed8304cf15628070dc2395460e1e8af9883a677 100644 (file)
--- a/Config.in
+++ b/Config.in
@@ -286,7 +286,7 @@ endchoice
 
 choice
        prompt "Target Architecture Variant"
-       depends BR2_sparc || BR2_sparc64
+       depends BR2_sparc
        default BR2_sparc_v7
        help
          Specific CPU variant to use
@@ -315,6 +315,8 @@ config BR2_sparc_tsc701
        bool "tsc701"
 config BR2_sparc_v9
        bool "v9"
+config BR2_sparc_v9b
+       bool "v9b"
 config BR2_sparc_ultrasparc
        bool "ultrasparc"
 config BR2_sparc_ultrasparc3
@@ -323,6 +325,31 @@ config BR2_sparc_niagara
        bool "niagara"
 endchoice
 
+choice
+       prompt "Target Architecture Variant"
+       depends BR2_sparc64
+       default BR2_sparc64_v9
+       help
+         Specific CPU variant to use
+
+config BR2_sparc64_v9
+       bool "v9"
+config BR2_sparc64_v9b
+       bool "v9b"
+config BR2_sparc64_ultrasparc
+       bool "ultrasparc"
+config BR2_sparc64_ultrasparc3
+       bool "ultrasparc3"
+config BR2_sparc64_niagara
+       bool "niagara"
+endchoice
+
+config BR2_SPARC_TYPE
+       string
+       default V7      if BR2_sparc_v7 || BR2_sparc_cypress || BR2_sparc_sparclite || BR2_sparc_f930 || BR2_sparc_f934 || BR2_sparc_sparclite86x || BR2_sparc_sparclet || BR2_sparc_tsc701
+       default V8      if BR2_sparc_v8 || BR2_sparc_supersparc || BR2_sparc_hypersparc
+       default V9      if BR2_sparc_v9 || BR2_sparc_ultrasparc || BR2_sparc_ultrasparc3 || BR2_sparc_niagara || BR2_sparc64_v9 || BR2_sparc64_ultrasparc || BR2_sparc64_ultrasparc3 || BR2_sparc64_niagara
+       default V9B     if BR2_sparc_v9b || BR2_sparc64_v9b
 
 choice
        prompt "Target Architecture Variant"
@@ -557,10 +584,10 @@ config BR2_GCC_TARGET_TUNE
        default sparclite86x    if BR2_sparc_sparclite86x
        default sparclet        if BR2_sparc_sparclet
        default tsc701          if BR2_sparc_tsc701
-       default v9              if BR2_sparc_v9
-       default ultrasparc      if BR2_sparc_ultrasparc
-       default ultrasparc3     if BR2_sparc_ultrasparc3
-       default niagara         if BR2_sparc_niagara
+       default v9              if BR2_sparc_v9 || BR2_sparc_v9b || BR2_sparc64_v9 || BR2_sparc64_v9b
+       default ultrasparc      if BR2_sparc_ultrasparc || BR2_sparc64_ultrasparc
+       default ultrasparc3     if BR2_sparc_ultrasparc3 || BR2_sparc64_ultrasparc3
+       default niagara         if BR2_sparc_niagara || BR2_sparc64_niagara
        default g5              if BR2_s390_g5
        default g6              if BR2_s390_g6
        default z900            if BR2_s390_z900
index a3d408fd54a656f676245f68f01caf1ccbbfefe2..df57304d171abcfec6e0f7d726cfb1f6fb292487 100644 (file)
@@ -46,6 +46,13 @@ ifeq ($(BR2_SOFT_FLOAT),y)
 TARGET_CFLAGS+=-msoft-float
 endif
 
+ifeq ($(BR2_sparc_v9b),y)
+TARGET_CFLAGS+=-mvis
+endif
+ifeq ($(BR2_sparc64_v9b),y)
+TARGET_CFLAGS+=-mvis
+endif
+
 TARGET_CXXFLAGS=$(TARGET_CFLAGS)
 
 # else it's an external toolchain
index 6056d986ec9744ff04aeb76dc3a3b7b77326ac16..d17a7f7ef795ebaf1218c79e75060d89a2a1a864 100644 (file)
@@ -75,6 +75,7 @@ UCLIBC_TARGET_ENDIAN:=$(shell $(SHELL) -c "echo $(ARCH) | sed \
                -e 's/mips/BIG/' \
                -e 's/sh[234].*eb/BIG/' \
                -e 's/sh[234]/LITTLE/' \
+               -e 's/sparc.*/BIG/' \
 ")
 
 ifneq ($(UCLIBC_TARGET_ENDIAN),LITTLE)
@@ -88,7 +89,9 @@ else
 UCLIBC_NOT_TARGET_ENDIAN:=LITTLE
 endif
 
-ARM_CONFIG:=CONFIG_$(strip $(subst ",, $(BR2_ARM_TYPE)))
+UCLIBC_ARM_TYPE:=CONFIG_$(strip $(subst ",, $(BR2_ARM_TYPE)))
+#"))
+UCLIBC_SPARC_TYPE:=CONFIG_SPARC_$(strip $(subst ",, $(BR2_SPARC_TYPE)))
 #"))
 
 $(DL_DIR)/$(UCLIBC_SOURCE):
@@ -136,7 +139,7 @@ $(UCLIBC_DIR)/.oldconfig: $(UCLIBC_DIR)/.unpacked $(UCLIBC_CONFIG_FILE)
 ifeq ($(UCLIBC_TARGET_ARCH),arm)
        $(SED) 's/^\(CONFIG_[^_]*[_]*ARM[^=]*\)=.*/# \1 is not set/g' \
                 $(UCLIBC_DIR)/.oldconfig
-       $(SED) 's/^.*$(ARM_CONFIG).*/$(ARM_CONFIG)=y/g' $(UCLIBC_DIR)/.oldconfig
+       $(SED) 's/^.*$(UCLIBC_ARM_TYPE).*/$(UCLIBC_ARM_TYPE)=y/g' $(UCLIBC_DIR)/.oldconfig
 ifeq ($(BR2_ARM_EABI),y)
        /bin/echo "# CONFIG_ARM_OABI is not set" >> $(UCLIBC_DIR)/.oldconfig
        /bin/echo "CONFIG_ARM_EABI=y" >> $(UCLIBC_DIR)/.oldconfig
@@ -178,6 +181,13 @@ ifeq ($(BR2_sh4),y)
        $(SED) 's,# CONFIG_SH4 is not set,CONFIG_SH4=y,g' $(UCLIBC_DIR)/.oldconfig
 endif
 endif
+ifeq ($(UCLIBC_TARGET_ARCH),sparc)
+       $(SED) 's/^\(CONFIG_[^_]*[_]*SPARC[^=]*\)=.*/# \1 is not set/g' \
+                $(UCLIBC_DIR)/.oldconfig
+       for i in V7 V8 V9 V9B; do echo "# CONFIG_SPARC_$$i is not set"; done \
+               >> $(UCLIBC_DIR)/.oldconfig
+       $(SED) 's/^.*$(UCLIBC_SPARC_TYPE).*/$(UCLIBC_SPARC_TYPE)=y/g' $(UCLIBC_DIR)/.oldconfig
+endif
 ifneq ($(UCLIBC_TARGET_ENDIAN),)
        # The above doesn't work for me, so redo
        $(SED) 's/.*\(ARCH_$(UCLIBC_NOT_TARGET_ENDIAN)_ENDIAN\).*/# \1 is not set/g' \