source: trunk/third/gcc/libjava/configure.host @ 18474

Revision 18474, 4.1 KB checked in by ghudson, 22 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r18473, which included commits to RCS files with non-trunk default branches.
Line 
1# configure.host
2
3# This shell script handles all host based configuration for libgcj.
4# It sets various shell variables based on the the host and the
5# configuration options.  You can modify this shell script without
6# needing to rerun autoconf.
7
8# This shell script should be invoked as
9#   . configure.host
10# If it encounters an error, it will exit with a message.
11
12# It uses the following shell variables:
13#   host                The configuration host
14#   host_cpu            The configuration host CPU
15#   target_optspace     --enable-target-optspace ("yes", "no", "")
16
17# It sets the following shell variables:
18#   libgcj_cflags       Special CFLAGS to use when building
19#   libgcj_cxxflags     Special CXXFLAGS to use when building
20#   libgcj_javaflags    Special JAVAFLAGS to use when building
21#   libgcj_interpreter  If the bytecode interpreter supports this platform.
22#   enable_java_net_default  If java.net native code should be enabled by
23#                            default.
24#   enable_hash_synchronization_default  If hash synchronization should be
25#                                        enabled by default.
26#   sysdeps_dir         Directory containing system-dependent headers
27#   slow_pthread_self   The synchronization code should try to avoid
28#                       pthread_self calls by caching thread IDs in a hashtable
29#   can_unwind_signal   Set to "yes" if the EH unwinder supports throwing
30#                       from a signal handler.
31
32libgcj_flags=
33libgcj_cflags=
34libgcj_cxxflags=
35libgcj_javaflags=
36libgcj_interpreter=
37enable_java_net_default=yes
38enable_hash_synchronization_default=no
39sysdeps_dir=generic
40slow_pthread_self=
41can_unwind_signal=no
42
43case "${target_optspace}:${host}" in
44  yes:*)
45    libgcj_flags="${libgcj_flags} -Os"
46    ;;
47  :m32r-* | :d10v-* | :d30v-*)
48    libgcj_flags="${libgcj_flags} -Os"
49    ;;
50  no:* | :*)
51    # Nothing.
52    ;;
53esac
54
55AM_RUNTESTFLAGS=
56
57# Set any host dependent compiler flags.
58# THIS TABLE IS SORTED.  KEEP IT THAT WAY.
59
60echo "$target"
61
62DIVIDESPEC=-fuse-divide-subroutine
63EXCEPTIONSPEC=-fnon-call-exceptions
64CHECKREFSPEC=
65
66# This case statement supports per-CPU defaults.
67case "${host}" in
68  mips-tx39-*|mipstx39-unknown-*)
69        libgcj_flags="${libgcj_flags} -G 0"
70        LDFLAGS="$LDFLAGS -Tjmr3904dram.ld"
71        AM_RUNTESTFLAGS="--target_board=jmr3904-sim"   
72        # Use "Ecos" processes since they are a no-op.
73        PROCESS=Ecos
74        FILE=Posix
75        enable_java_net_default=no
76        enable_getenv_properties_default=no
77        ;;
78  i686-*|i586-*|i486-*|i386-*)
79        sysdeps_dir=i386
80        libgcj_flags="${libgcj_flags} -ffloat-store"
81        libgcj_interpreter=yes
82        libgcj_cxxflags="-D__NO_MATH_INLINES"
83        libgcj_cflags="-D__NO_MATH_INLINES"
84        DIVIDESPEC=-fno-use-divide-subroutine
85        enable_hash_synchronization_default=yes
86        slow_pthread_self=yes
87        ;;
88  alpha*-*)
89        sysdeps_dir=alpha
90        libgcj_flags="${libgcj_flags} -mieee"
91        libgcj_interpreter=yes
92        enable_hash_synchronization_default=yes
93        ;;
94  powerpc*-*)
95        sysdeps_dir=powerpc
96        libgcj_interpreter=yes
97        enable_hash_synchronization_default=yes
98        slow_pthread_self=yes
99        ;;
100  sparc-*)
101        ;;
102  ia64-*)
103        sysdeps_dir=ia64
104        libgcj_flags="${libgcj_flags} -funwind-tables"
105        libgcj_interpreter=yes
106        enable_hash_synchronization_default=yes
107        ;;
108  xscale*-elf)
109        with_libffi_default=no
110        PROCESS=Ecos
111        FILE=Posix
112        CHECKREFSPEC=-fcheck-references
113        EXCEPTIONSPEC=
114        enable_java_net_default=no
115        enable_getenv_properties_default=no
116        enable_main_args_default=no
117        ;;
118esac
119
120# This case statement supports generic port properties and may refine
121# the above per-CPU defaults.  Note: If your OS implements
122# MD_FALLBACK_FRAME_STATE_FOR, then you want to set can_unwind_signal
123# here.
124case "${host}" in
125  i[34567]86*-linux* | \
126  powerpc*-linux* | \
127  alpha*-linux* | \
128  sparc*-linux* | \
129  ia64-*)
130        can_unwind_signal=yes
131        ;;
132  *-*-darwin*)
133        enable_hash_synchronization_default=no
134        slow_pthread_self=
135        ;;
136  *-*-freebsd*)
137        slow_pthread_self=
138        ;;
139  *-cygwin*)
140        # The cygwin linker doesn't do 8-byte alignment by default, so
141        # disable hash synchronization for now.
142        enable_hash_synchronization_default=no
143        slow_pthread_self=
144        ;;
145esac
146
147libgcj_cflags="${libgcj_cflags} ${libgcj_flags}"
148libgcj_cxxflags="${libgcj_cxxflags} ${libgcj_flags}"
149libgcj_javaflags="${libgcj_javaflags} ${libgcj_flags}"
Note: See TracBrowser for help on using the repository browser.