3.1 PATCH: libjava configure.host updates for Solaris 2/IRIX 6/Tru64 UNIX
Rainer Orth
ro@TechFak.Uni-Bielefeld.DE
Tue Apr 16 10:06:00 GMT 2002
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
More information about the Java-patches
mailing list