This is the mail archive of the java-patches@gcc.gnu.org mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

3.1 PATCH: libjava configure.host updates for Solaris 2/IRIX 6/Tru64 UNIX


I had already submitted a version of this patch

	http://gcc.gnu.org/ml/java/2002-03/msg00605.html

which Tom ok'd for branch and trunk:

	http://gcc.gnu.org/ml/java/2002-04/msg00026.html

Since the file has changed considerably since my original patch, here's an
updated one, verified by bootstrapping on sparc-sun-solaris2.5.1,
sparc-sun-solaris2.8, i386-pc-solaris2.8 and alpha-dec-osf5.1.

This patch tries to clearly separate between per-cpu, per-os and
triplet-specific properties.  Unfortunately, it is hard to read in both
unidiff and context-diff formats.

Ok for branch and trunk?

	Rainer


Mon Mar 18 19:18:14 2002  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>

	* configure.host: Introduce host_cpu and host_os switches, moving
	cpu- or os-only sections here.
	Sort host switch.
	(solaris2*, alpha*-dec-osf*, mips-sgi-irix6*): Use
	-fcheck-references for CHECKREFSPEC. 
	(i?86-*-solaris2*): Keep default DIVIDESPEC.

Index: configure.host
===================================================================
RCS file: /cvs/gcc/gcc/libjava/configure.host,v
retrieving revision 1.23.2.6
diff -u -p -r1.23.2.6 configure.host
--- configure.host	11 Apr 2002 22:20:48 -0000	1.23.2.6
+++ configure.host	16 Apr 2002 16:57:30 -0000
@@ -1,7 +1,7 @@
 # configure.host
 
 # This shell script handles all host based configuration for libgcj.
-# It sets various shell variables based on the the host and the
+# It sets various shell variables based on the host and the
 # configuration options.  You can modify this shell script without
 # needing to rerun autoconf.
 
@@ -12,6 +12,7 @@
 # It uses the following shell variables:
 #   host		The configuration host
 #   host_cpu		The configuration host CPU
+#   host_os             The configuration host OS
 #   target_optspace	--enable-target-optspace ("yes", "no", "")
 
 # It sets the following shell variables:
@@ -54,9 +55,6 @@ esac
 
 AM_RUNTESTFLAGS= 
 
-# Set any host dependent compiler flags.
-# THIS TABLE IS SORTED.  KEEP IT THAT WAY.
-
 echo "$target"
 
 DIVIDESPEC=-fuse-divide-subroutine
@@ -64,18 +62,15 @@ EXCEPTIONSPEC=-fnon-call-exceptions
 CHECKREFSPEC=
 
 # This case statement supports per-CPU defaults.
-case "${host}" in
-  mips-tx39-*|mipstx39-unknown-*)
-	libgcj_flags="${libgcj_flags} -G 0"
-	LDFLAGS="$LDFLAGS -Tjmr3904dram.ld"
-	AM_RUNTESTFLAGS="--target_board=jmr3904-sim"	
-	# Use "Ecos" processes since they are a no-op.
-	PROCESS=Ecos
-	FILE=Posix
- 	enable_java_net_default=no
- 	enable_getenv_properties_default=no
+# THIS TABLE IS SORTED.  KEEP IT THAT WAY.
+case "${host_cpu}" in
+  alpha*)
+	sysdeps_dir=alpha
+	libgcj_flags="${libgcj_flags} -mieee"
+	libgcj_interpreter=yes
+	enable_hash_synchronization_default=yes
 	;;
-  i686-*|i586-*|i486-*|i386-*)
+  i[34567]86)
 	sysdeps_dir=i386
 	libgcj_flags="${libgcj_flags} -ffloat-store"
 	libgcj_interpreter=yes
@@ -85,55 +80,80 @@ case "${host}" in
 	enable_hash_synchronization_default=yes
 	slow_pthread_self=yes
 	;;
-  alpha*-*)
-	sysdeps_dir=alpha
-	libgcj_flags="${libgcj_flags} -mieee"
+  ia64)
+	sysdeps_dir=ia64
+        libgcj_flags="${libgcj_flags} -funwind-tables"
 	libgcj_interpreter=yes
 	enable_hash_synchronization_default=yes
+  	can_unwind_signal=yes
 	;;
-  powerpc*-*)
+  powerpc*)
 	sysdeps_dir=powerpc
 	libgcj_interpreter=yes
 	enable_hash_synchronization_default=yes
 	slow_pthread_self=yes
 	;;
-  sparc-*)
-        ;;
-  ia64-*)
-	sysdeps_dir=ia64
-        libgcj_flags="${libgcj_flags} -funwind-tables"
-	libgcj_interpreter=yes
-	enable_hash_synchronization_default=yes
-	;;
-  xscale*-elf)
-	with_libffi_default=no
-	PROCESS=Ecos
-	FILE=Posix
-	CHECKREFSPEC=-fcheck-references
-	EXCEPTIONSPEC=
-	enable_java_net_default=no
-	enable_getenv_properties_default=no
-	enable_main_args_default=no
-	;;
 esac
 
 # This case statement supports generic port properties and may refine
 # the above per-CPU defaults.  Note: If your OS implements
 # MD_FALLBACK_FRAME_STATE_FOR, then you want to set can_unwind_signal
 # here.
-case "${host}" in
-  i[34567]86*-linux* | \
-  powerpc*-linux* | \
-  alpha*-linux* | \
-  ia64-*)
-  	can_unwind_signal=yes
-	;;
-  *-*-darwin*)
+# THIS TABLE IS SORTED.  KEEP IT THAT WAY.
+case "${host_os}" in
+  darwin*)
 	enable_hash_synchronization_default=no
 	slow_pthread_self=
 	;;
-  *-*-freebsd*)
+  freebsd*)
 	slow_pthread_self=
+	;;
+  solaris2*)
+	CHECKREFSPEC=-fcheck-references
+	;;
+esac
+
+# Set any flags dependent on the full host triplet.
+# THIS TABLE IS SORTED.  KEEP IT THAT WAY.
+case "${host}" in
+  alpha*-*-linux*)
+  	can_unwind_signal=yes
+	;;
+  alpha*-dec-osf*)
+	CHECKREFSPEC=-fcheck-references
+	;;
+  i[34567]86-*-linux*)
+  	can_unwind_signal=yes
+	;;
+  i[34567]86-*-solaris2*)
+	# override i?86 default
+	DIVIDESPEC=-fuse-divide-subroutine
+	;;
+  mips-sgi-irix6*)
+	CHECKREFSPEC=-fcheck-references
+	;;
+  mips-tx39-*|mipstx39-unknown-*)
+	libgcj_flags="${libgcj_flags} -G 0"
+	LDFLAGS="$LDFLAGS -Tjmr3904dram.ld"
+	AM_RUNTESTFLAGS="--target_board=jmr3904-sim"	
+	# Use "Ecos" processes since they are a no-op.
+	PROCESS=Ecos
+	FILE=Posix
+ 	enable_java_net_default=no
+ 	enable_getenv_properties_default=no
+	;;
+  powerpc*-*-linux*)
+  	can_unwind_signal=yes
+	;;
+  xscale*-elf)
+	with_libffi_default=no
+	PROCESS=Ecos
+	FILE=Posix
+	CHECKREFSPEC=-fcheck-references
+	EXCEPTIONSPEC=
+	enable_java_net_default=no
+	enable_getenv_properties_default=no
+	enable_main_args_default=no
 	;;
 esac
 


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]