Mercurial > hg > release > icedtea7-forest-2.0 > jdk
changeset 4562:333e434c8cae
Add support for SH architecture.
author | andrew |
---|---|
date | Thu, 22 Sep 2011 01:54:39 +0100 |
parents | 36b175c67e06 |
children | 7ec1845521ed |
files | make/common/Defs-linux.gmk make/common/shared/Compiler-gcc.gmk make/common/shared/Platform.gmk make/javax/sound/SoundDefs.gmk make/jdk_generic_profile.sh src/share/native/com/sun/media/sound/SoundDefs.h |
diffstat | 6 files changed, 27 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/make/common/Defs-linux.gmk Thu Sep 22 01:53:15 2011 +0100 +++ b/make/common/Defs-linux.gmk Thu Sep 22 01:54:39 2011 +0100 @@ -119,6 +119,7 @@ LDFLAGS_COMMON_sparc += -m32 -mcpu=v9 CFLAGS_REQUIRED_arm += -fsigned-char -D_LITTLE_ENDIAN CFLAGS_REQUIRED_ppc += -fsigned-char -D_BIG_ENDIAN +CFLAGS_REQUIRED_sh += -mieee ifeq ($(ZERO_BUILD), true) CFLAGS_REQUIRED = $(ZERO_ARCHFLAG) ifeq ($(ZERO_ENDIANNESS), little) @@ -197,11 +198,15 @@ CPP_ARCH_FLAGS = -DARCH='"$(ARCH)"' -# Alpha arch does not like "alpha" defined (potential general arch cleanup issue here) -ifneq ($(ARCH),alpha) +# Alpha and sh archs do not like "alpha" or "sh" defined (potential general arch cleanup issue here) +ifeq ($(ARCH),alpha) + CPP_ARCH_FLAGS += -D_$(ARCH)_ +else +ifeq ($(ARCH),sh) + CPP_ARCH_FLAGS += -D_$(ARCH)_ +else CPP_ARCH_FLAGS += -D$(ARCH) -else - CPP_ARCH_FLAGS += -D_$(ARCH)_ +endif endif CPPFLAGS_COMMON = $(CPP_ARCH_FLAGS) -DLINUX $(VERSION_DEFINES) \
--- a/make/common/shared/Compiler-gcc.gmk Thu Sep 22 01:53:15 2011 +0100 +++ b/make/common/shared/Compiler-gcc.gmk Thu Sep 22 01:54:39 2011 +0100 @@ -127,6 +127,11 @@ REQUIRED_CC_VER = 3.2 REQUIRED_GCC_VER = 3.2.* endif + ifneq ("$(findstring sh,$(ARCH))", "") + # sh4*, sh3* + REQUIRED_CC_VER = 4.0 + REQUIRED_GCC_VER = 4.0.* + endif # Option used to create a shared library SHARED_LIBRARY_FLAG = -shared -mimpure-text SUN_COMP_VER := $(shell $(CC) --verbose 2>&1 )
--- a/make/common/shared/Platform.gmk Thu Sep 22 01:53:15 2011 +0100 +++ b/make/common/shared/Platform.gmk Thu Sep 22 01:54:39 2011 +0100 @@ -179,6 +179,9 @@ arm*) \ echo arm \ ;; \ + sh*) \ + echo sh \ + ;; \ *) \ echo $(mach) \ ;; \ @@ -208,6 +211,9 @@ ifeq ($(ARCH), ia64) ARCH_DATA_MODEL=64 endif + ifeq ($(ARCH), sh) + ARCH_DATA_MODEL=32 + endif endif endif
--- a/make/javax/sound/SoundDefs.gmk Thu Sep 22 01:53:15 2011 +0100 +++ b/make/javax/sound/SoundDefs.gmk Thu Sep 22 01:54:39 2011 +0100 @@ -126,6 +126,10 @@ CPPFLAGS += -DX_ARCH=X_PPC endif # ARCH ppc + ifeq ($(ARCH), sh) + CPPFLAGS += -DX_ARCH=X_SH + endif # ARCH Renesas SuperH(sh) + endif
--- a/make/jdk_generic_profile.sh Thu Sep 22 01:53:15 2011 +0100 +++ b/make/jdk_generic_profile.sh Thu Sep 22 01:54:39 2011 +0100 @@ -259,13 +259,14 @@ i?86) ZERO_LIBARCH=i386 ;; sparc64) ZERO_LIBARCH=sparcv9 ;; arm*) ZERO_LIBARCH=arm ;; + sh*) ZERO_LIBARCH=sh ;; *) ZERO_LIBARCH="$(arch)" esac export ZERO_LIBARCH # ARCH_DATA_MODEL is the number of bits in a pointer case "${ZERO_LIBARCH}" in - i386|ppc|s390|sparc|arm) + i386|ppc|s390|sparc|arm|sh) ARCH_DATA_MODEL=32 ;; amd64|ppc64|s390x|sparcv9|ia64|alpha)
--- a/src/share/native/com/sun/media/sound/SoundDefs.h Thu Sep 22 01:53:15 2011 +0100 +++ b/src/share/native/com/sun/media/sound/SoundDefs.h Thu Sep 22 01:54:39 2011 +0100 @@ -48,7 +48,7 @@ #define X_PPC64 13 #define X_S390 14 #define X_S390X 15 - +#define X_SH 16 // ********************************** // Make sure you set X_PLATFORM and X_ARCH defines correctly.