Initial commit
[kopensolaris-gnu/patches.git] / gcc-4.3.1.diff
1 diff -uraN gcc-4.3-4.3.1.orig/debian/control gcc-4.3-4.3.1/debian/control
2 --- gcc-4.3-4.3.1.orig/debian/control   2008-10-03 08:40:55.000000000 -0400
3 +++ gcc-4.3-4.3.1/debian/control        2008-10-03 08:41:30.205163432 -0400
4 @@ -4,7 +4,7 @@
5  Maintainer: Debian GCC Maintainers <debian-gcc@lists.debian.org>
6  Uploaders: Matthias Klose <doko@debian.org>
7  Standards-Version: 3.7.3
8 -Build-Depends: dpkg-dev (>= 1.14.15), debhelper (>= 5.0.62), gcc-multilib [amd64 i386 mips mipsel powerpc ppc64 s390 sparc kfreebsd-amd64], libc6.1-dev (>= 2.5) [alpha ia64] | libc0.3-dev (>= 2.5) [hurd-i386] | libc0.1-dev (>= 2.5) [kfreebsd-i386 kfreebsd-amd64] | libc6-dev (>= 2.5), libc6-dev-amd64 [i386], libc6-dev-sparc64 [sparc], libc6-dev-s390x [s390], libc6-dev-i386 [amd64], libc6-dev-powerpc [ppc64], libc6-dev-ppc64 [powerpc], libc0.1-dev-i386 [kfreebsd-amd64], lib32gcc1 [amd64 ppc64 kfreebsd-amd64], lib64gcc1 [i386 powerpc sparc s390], libc6-dev-mips64 [mips mipsel], libc6-dev-mipsn32 [mips mipsel], libunwind7-dev (>= 0.98.5-6) [ia64], libatomic-ops-dev [ia64], m4, autoconf, automake1.9, libtool, autogen, gawk, expect-tcl8.3 [hppa], dejagnu [!none !hurd-i386], lzma, binutils (>= 2.18.1~cvs20080103-2) [mips mipsel] | binutils-multiarch (>= 2.18.1~cvs20080103-2) [mips mipsel], binutils (>= 2.17cvs20070426) | binutils-multiarch (>= 2.17cvs20070426), binutils-hppa64 (>= 2.17cvs20070426) [hppa], gperf (>= 3.0.1), bison (>= 1:2.3), flex, gettext, texinfo (>= 4.3), libmpfr-dev (>= 2.3.0), locales [!hurd-i386 !m68k], procps [!hurd-i386], sharutils, binutils-spu (>= 2.18.1~cvs20080103-3) [powerpc ppc64], newlib-spu (>= 1.16.0) [powerpc ppc64], realpath (>= 1.9.12), chrpath, lsb-release, make (>= 3.81)
9 +Build-Depends: dpkg-dev (>= 1.14.15), debhelper (>= 5.0.62), gcc-multilib [amd64 i386 mips mipsel powerpc ppc64 s390 sparc kfreebsd-amd64 kopensolaris-amd64], libc6.1-dev (>= 2.5) [alpha ia64] | libc0.3-dev (>= 2.5) [hurd-i386] | libc0.1-dev (>= 2.5) [kfreebsd-i386 kfreebsd-amd64] | libc6-dev (>= 2.5), libc6-dev-amd64 [i386], libc6-dev-sparc64 [sparc], libc6-dev-s390x [s390], libc6-dev-i386 [amd64], libc6-dev-powerpc [ppc64], libc6-dev-ppc64 [powerpc], libc0.1-dev-i386 [kfreebsd-amd64], lib32gcc1 [amd64 ppc64 kfreebsd-amd64], lib64gcc1 [i386 powerpc sparc s390], libc6-dev-mips64 [mips mipsel], libc6-dev-mipsn32 [mips mipsel], libunwind7-dev (>= 0.98.5-6) [ia64], libatomic-ops-dev [ia64], m4, autoconf, automake1.9, libtool, autogen, gawk, expect-tcl8.3 [hppa], dejagnu [!none !hurd-i386], lzma, binutils (>= 2.18.1~cvs20080103-2) [mips mipsel] | binutils-multiarch (>= 2.18.1~cvs20080103-2) [mips mipsel], binutils (>= 2.17cvs20070426) | binutils-multiarch (>= 2.17cvs20070426), binutils-hppa64 (>= 2.17cvs20070426) [hppa], gperf (>= 3.0.1), bison (>= 1:2.3), flex, gettext, texinfo (>= 4.3), libmpfr-dev (>= 2.3.0), locales [!hurd-i386 !m68k], procps [!hurd-i386], sharutils, binutils-spu (>= 2.18.1~cvs20080103-3) [powerpc ppc64], newlib-spu (>= 1.16.0) [powerpc ppc64], realpath (>= 1.9.12), chrpath, lsb-release, make (>= 3.81)
10  Build-Depends-Indep: doxygen (>= 1.4.2), graphviz (>= 2.2), gsfonts-x11, texlive-latex-base, 
11  
12  Package: gcc-4.3-base
13 diff -uraN gcc-4.3-4.3.1.orig/debian/control.m4 gcc-4.3-4.3.1/debian/control.m4
14 --- gcc-4.3-4.3.1.orig/debian/control.m4        2008-10-03 08:40:55.000000000 -0400
15 +++ gcc-4.3-4.3.1/debian/control.m4     2008-10-03 08:41:30.206037764 -0400
16 @@ -48,7 +48,7 @@
17  ifdef(`TARGET',`dnl cross
18  Build-Depends: dpkg-dev (>= 1.14.15), debhelper (>= 5.0.62), dpkg-cross (>= 1.25.99), LIBC_BUILD_DEP, LIBC_BIARCH_BUILD_DEP LIBUNWIND_BUILD_DEP LIBATOMIC_OPS_BUILD_DEP m4, autoconf, automake1.9, libtool, autogen, gawk, lzma, BINUTILS_BUILD_DEP, bison (>= 1:2.3), flex, realpath (>= 1.9.12), lsb-release, make (>= 3.81)
19  ',`dnl native
20 -Build-Depends: dpkg-dev (>= 1.14.15), debhelper (>= 5.0.62), gcc-multilib [amd64 i386 mips mipsel powerpc ppc64 s390 sparc kfreebsd-amd64], LIBC_BUILD_DEP, LIBC_BIARCH_BUILD_DEP libunwind7-dev (>= 0.98.5-6) [ia64], libatomic-ops-dev [ia64], m4, autoconf, automake1.9, libtool, autogen, gawk, CHECK_BUILD_DEP, lzma, BINUTILS_BUILD_DEP, binutils-hppa64 (>= BINUTILSV) [hppa], gperf (>= 3.0.1), bison (>= 1:2.3), flex, gettext, texinfo (>= 4.3), libmpfr-dev (>= 2.3.0), FORTRAN_BUILD_DEP locales [locale_no_archs], procps [linux_gnu_archs], sharutils, PASCAL_BUILD_DEP JAVA_BUILD_DEP GNAT_BUILD_DEP SPU_BUILD_DEP realpath (>= 1.9.12), chrpath, lsb-release, make (>= 3.81)
21 +Build-Depends: dpkg-dev (>= 1.14.15), debhelper (>= 5.0.62), gcc-multilib [amd64 i386 mips mipsel powerpc ppc64 s390 sparc kfreebsd-amd64 kopensolaris-amd64], LIBC_BUILD_DEP, LIBC_BIARCH_BUILD_DEP libunwind7-dev (>= 0.98.5-6) [ia64], libatomic-ops-dev [ia64], m4, autoconf, automake1.9, libtool, autogen, gawk, CHECK_BUILD_DEP, lzma, BINUTILS_BUILD_DEP, binutils-hppa64 (>= BINUTILSV) [hppa], gperf (>= 3.0.1), bison (>= 1:2.3), flex, gettext, texinfo (>= 4.3), libmpfr-dev (>= 2.3.0), FORTRAN_BUILD_DEP locales [locale_no_archs], procps [linux_gnu_archs], sharutils, PASCAL_BUILD_DEP JAVA_BUILD_DEP GNAT_BUILD_DEP SPU_BUILD_DEP realpath (>= 1.9.12), chrpath, lsb-release, make (>= 3.81)
22  Build-Depends-Indep: LIBSTDCXX_BUILD_INDEP JAVA_BUILD_INDEP
23  ')dnl
24  dnl Build-Conflicts: qt3-dev-tools
25 @@ -1559,7 +1559,7 @@
26  
27  ifenabled(`d ',`
28  Package: gdc`'PV
29 -Architecture: i386 amd64 powerpc ppc64 lpia kfreebsd-i386 kfreebsd-amd64
30 +Architecture: i386 amd64 powerpc ppc64 lpia kfreebsd-i386 kfreebsd-amd64 kopensolaris-i386 kopensolaris-amd64
31  Priority: PRI(optional)
32  Depends: SOFTBASEDEP, g++`'PV (>= ${gcc:SoftVersion}), zlib1g-dev, ${shlibs:Depends}
33  Provides: gdc, d-compiler
34 diff -uraN gcc-4.3-4.3.1.orig/debian/multiarch.inc gcc-4.3-4.3.1/debian/multiarch.inc
35 --- gcc-4.3-4.3.1.orig/debian/multiarch.inc     2008-10-03 08:40:55.000000000 -0400
36 +++ gcc-4.3-4.3.1/debian/multiarch.inc  2008-10-03 08:41:30.206341997 -0400
37 @@ -36,3 +36,7 @@
38  #if defined(__x86_64_kfreebsd_gnu__)
39    { "32",  "i486-kfreebsd-gnu"},
40  #endif
41 +
42 +#if defined(__x86_64_kopensolaris_gnu__)
43 +  { "32",  "i486-kopensolaris-gnu"},
44 +#endif
45 diff -uraN gcc-4.3-4.3.1.orig/debian/patches/cpu-default-i486.dpatch gcc-4.3-4.3.1/debian/patches/cpu-default-i486.dpatch
46 --- gcc-4.3-4.3.1.orig/debian/patches/cpu-default-i486.dpatch   2008-10-03 08:40:55.000000000 -0400
47 +++ gcc-4.3-4.3.1/debian/patches/cpu-default-i486.dpatch        2008-10-03 08:41:30.206612291 -0400
48 @@ -26,12 +26,16 @@
49  
50  --- gcc/config/i386/i386.c~    2007-06-28 13:23:31.000000000 +0200
51  +++ gcc/config/i386/i386.c     2007-06-28 13:26:33.000000000 +0200
52 -@@ -1953,7 +1953,7 @@
53 +@@ -1953,7 +1953,11 @@
54              "-mtune=generic instead as appropriate.");
55   
56     if (!ix86_arch_string)
57  -    ix86_arch_string = TARGET_64BIT ? "x86-64" : "i386";
58 ++#ifdef __OpenSolaris_kernel__
59 ++    ix86_arch_string = TARGET_64BIT ? "x86-64" : "i586";
60 ++#else
61  +    ix86_arch_string = TARGET_64BIT ? "x86-64" : "i486";
62 ++#endif
63     else
64       ix86_arch_specified = 1;
65     
66 diff -uraN gcc-4.3-4.3.1.orig/debian/patches/kopensolaris-gnu.dpatch gcc-4.3-4.3.1/debian/patches/kopensolaris-gnu.dpatch
67 --- gcc-4.3-4.3.1.orig/debian/patches/kopensolaris-gnu.dpatch   1969-12-31 19:00:00.000000000 -0500
68 +++ gcc-4.3-4.3.1/debian/patches/kopensolaris-gnu.dpatch        2008-10-03 08:41:55.335748824 -0400
69 @@ -0,0 +1,2414 @@
70 +#! /bin/sh -e
71 +
72 +dir=
73 +if [ $# -eq 3 -a "$2" = '-d' ]; then
74 +    pdir="-d $3"
75 +    dir="$3/"
76 +elif [ $# -ne 1 ]; then
77 +    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
78 +    exit 1
79 +fi
80 +case "$1" in
81 +    -patch)
82 +        patch $pdir -f --no-backup-if-mismatch -p1 < $0
83 +        ;;
84 +    -unpatch)
85 +        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
86 +        ;;
87 +    *)
88 +        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
89 +        exit 1
90 +esac
91 +exit 0
92 +
93 +diff -uraN src.orig/boehm-gc/configure src/boehm-gc/configure
94 +--- src.orig/boehm-gc/configure        2008-01-24 11:31:24.000000000 -0500
95 ++++ src/boehm-gc/configure     2008-10-03 03:06:34.689220215 -0400
96 +@@ -5046,7 +5046,7 @@
97 +   ;;
98
99 + # This must be Linux ELF.
100 +-linux* | k*bsd*-gnu)
101 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
102 +   lt_cv_deplibs_check_method=pass_all
103 +   ;;
104
105 +@@ -5780,7 +5780,7 @@
106 +   ;;
107
108 + x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
109 +-s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
110 ++s390*-*linux*|s390*-*tpf*|sparc*-*linux*|x86_64-*kopensolaris*-gnu)
111 +   # Find out which ABI we are using.
112 +   echo 'int i;' > conftest.$ac_ext
113 +   if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
114 +@@ -5794,7 +5794,7 @@
115 +         x86_64-*kfreebsd*-gnu)
116 +           LD="${LD-ld} -m elf_i386_fbsd"
117 +           ;;
118 +-        x86_64-*linux*)
119 ++        x86_64-*linux*|x86_64-*kopensolaris*-gnu)
120 +           LD="${LD-ld} -m elf_i386"
121 +           ;;
122 +         ppc64-*linux*|powerpc64-*linux*)
123 +@@ -5813,7 +5813,7 @@
124 +         x86_64-*kfreebsd*-gnu)
125 +           LD="${LD-ld} -m elf_x86_64_fbsd"
126 +           ;;
127 +-        x86_64-*linux*)
128 ++        x86_64-*linux*|x86_64-*kopensolaris*-gnu)
129 +           LD="${LD-ld} -m elf_x86_64"
130 +           ;;
131 +         ppc*-*linux*|powerpc*-*linux*)
132 +@@ -7722,7 +7722,7 @@
133 +       lt_prog_compiler_static='-non_shared'
134 +       ;;
135
136 +-    linux* | k*bsd*-gnu)
137 ++    linux* | k*bsd*-gnu | kopensolaris*-gnu)
138 +       case $cc_basename in
139 +       icc* | ecc*)
140 +       lt_prog_compiler_wl='-Wl,'
141 +@@ -8263,7 +8263,7 @@
142 +       archive_expsym_cmds='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
143 +       ;;
144
145 +-    gnu* | linux* | tpf* | k*bsd*-gnu)
146 ++    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
147 +       tmp_diet=no
148 +       if test "$host_os" = linux-dietlibc; then
149 +       case $cc_basename in
150 +@@ -9828,7 +9828,7 @@
151 +   ;;
152
153 + # This must be Linux ELF.
154 +-linux* | k*bsd*-gnu)
155 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
156 +   version_type=linux
157 +   need_lib_prefix=no
158 +   need_version=no
159 +@@ -12038,7 +12038,7 @@
160 +         inherit_rpath_CXX=yes
161 +         ;;
162
163 +-      linux* | k*bsd*-gnu)
164 ++      linux* | k*bsd*-gnu | kopensolaris*-gnu)
165 +         case $cc_basename in
166 +           KCC*)
167 +           # Kuck and Associates, Inc. (KAI) C++ Compiler
168 +@@ -12847,7 +12847,7 @@
169 +           ;;
170 +       esac
171 +       ;;
172 +-      linux* | k*bsd*-gnu)
173 ++      linux* | k*bsd*-gnu | kopensolaris*-gnu)
174 +       case $cc_basename in
175 +         KCC*)
176 +           # KAI C++ Compiler
177 +@@ -13742,7 +13742,7 @@
178 +   ;;
179
180 + # This must be Linux ELF.
181 +-linux* | k*bsd*-gnu)
182 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
183 +   version_type=linux
184 +   need_lib_prefix=no
185 +   need_version=no
186 +@@ -14311,6 +14311,13 @@
187 +       AM_CPPFLAGS="$AM_CPPFLAGS -pthread"
188 +       THREADLIBS=-pthread
189 +               ;;
190 ++     *-*-kopensolaris*-gnu)
191 ++
192 ++cat >>confdefs.h <<\_ACEOF
193 ++#define GC_SOLARIS_PTHREADS 1
194 ++_ACEOF
195 ++
196 ++      ;;
197 +      *-*-solaris*)
198
199 + cat >>confdefs.h <<\_ACEOF
200 +diff -uraN src.orig/boehm-gc/configure.ac src/boehm-gc/configure.ac
201 +--- src.orig/boehm-gc/configure.ac     2007-07-02 10:56:58.000000000 -0400
202 ++++ src/boehm-gc/configure.ac  2008-10-03 03:06:34.697362390 -0400
203 +@@ -172,6 +172,9 @@
204 +       AM_CPPFLAGS="$AM_CPPFLAGS -pthread"
205 +       THREADLIBS=-pthread
206 +               ;;
207 ++     *-*-kopensolaris*-gnu)
208 ++      AC_DEFINE(GC_SOLARIS_PTHREADS,1,[support for Solaris pthreads])
209 ++      ;;
210 +      *-*-solaris*)
211 +       AC_DEFINE(GC_SOLARIS_PTHREADS,1,[support for Solaris pthreads])
212 +       # Need to use alternate thread library, otherwise gctest hangs
213 +diff -uraN src.orig/boehm-gc/dyn_load.c src/boehm-gc/dyn_load.c
214 +--- src.orig/boehm-gc/dyn_load.c       2007-07-02 10:56:58.000000000 -0400
215 ++++ src/boehm-gc/dyn_load.c    2008-10-03 03:06:34.703175743 -0400
216 +@@ -26,7 +26,8 @@
217 +  * None of this is safe with dlclose and incremental collection.
218 +  * But then not much of anything is safe in the presence of dlclose.
219 +  */
220 +-#if (defined(__linux__) || defined(__GLIBC__)) && !defined(_GNU_SOURCE)
221 ++#if (defined(__linux__) || defined(__GLIBC__) || \
222 ++    defined(__OpenSolaris_kernel__)) && !defined(_GNU_SOURCE)
223 +     /* Can't test LINUX, since this must be define before other includes */
224 + #   define _GNU_SOURCE
225 + #endif
226 +@@ -58,7 +59,7 @@
227 +     !defined(RS6000) && !defined(SCO_ELF) && !defined(DGUX) && \
228 +     !(defined(FREEBSD) && defined(__ELF__)) && \
229 +     !(defined(NETBSD) && defined(__ELF__)) && !defined(HURD) && \
230 +-    !defined(DARWIN)
231 ++    !defined(DARWIN) && !defined(__OpenSolaris_kernel__)
232 +  --> We only know how to find data segments of dynamic libraries for the
233 +  --> above.  Additional SVR4 variants might not be too
234 +  --> hard to add.
235 +@@ -87,7 +88,8 @@
236
237 + #if defined(LINUX) && defined(__ELF__) || defined(SCO_ELF) || \
238 +     (defined(FREEBSD) && defined(__ELF__)) || defined(DGUX) || \
239 +-    (defined(NETBSD) && defined(__ELF__)) || defined(HURD)
240 ++    (defined(NETBSD) && defined(__ELF__)) || defined(HURD) || \
241 ++    defined(__OpenSolaris_kernel__)
242 + #   include <stddef.h>
243 + #   include <elf.h>
244 + #   include <link.h>
245 +@@ -298,7 +300,8 @@
246
247 + #if defined(LINUX) && defined(__ELF__) || defined(SCO_ELF) || \
248 +     (defined(FREEBSD) && defined(__ELF__)) || defined(DGUX) || \
249 +-    (defined(NETBSD) && defined(__ELF__)) || defined(HURD)
250 ++    (defined(NETBSD) && defined(__ELF__)) || defined(HURD) || \
251 ++    defined(__OpenSolaris_kernel__)
252
253
254 + #ifdef USE_PROC_FOR_LIBRARIES
255 +diff -uraN src.orig/boehm-gc/include/private/gcconfig.h src/boehm-gc/include/private/gcconfig.h
256 +--- src.orig/boehm-gc/include/private/gcconfig.h       2008-01-26 13:24:37.000000000 -0500
257 ++++ src/boehm-gc/include/private/gcconfig.h    2008-10-03 03:06:34.708514119 -0400
258 +@@ -148,12 +148,12 @@
259 + #    define SEQUENT
260 + #    define mach_type_known
261 + # endif
262 +-# if defined(sun) && (defined(i386) || defined(__i386__))
263 ++# if (defined(sun) || defined(__OpenSolaris_kernel__)) && (defined(i386) || defined(__i386__))
264 + #    define I386
265 + #    define SUNOS5
266 + #    define mach_type_known
267 + # endif
268 +-# if defined(sun) && defined(__amd64)
269 ++# if (defined(sun) || defined(__OpenSolaris_kernel__)) && defined(__amd64)
270 + #    define X86_64
271 + #    define SUNOS5
272 + #    define mach_type_known
273 +@@ -2137,7 +2137,9 @@
274 + # if defined(SUNOS5) || defined(DRSNX)
275 +           /* OS has SUNOS5 style semi-undocumented interface to dynamic       */
276 +           /* loader.                                                          */
277 +-#   define SUNOS5DL
278 ++#   if !defined(__OpenSolaris_kernel__)
279 ++#     define SUNOS5DL
280 ++#   endif
281 +           /* OS has SUNOS5 style signal handlers.                             */
282 + #   define SUNOS5SIGS
283 + # endif
284 +diff -uraN src.orig/config.guess src/config.guess
285 +--- src.orig/config.guess      2008-01-22 21:37:40.000000000 -0500
286 ++++ src/config.guess   2008-10-03 03:06:34.718674989 -0400
287 +@@ -4,7 +4,7 @@
288 + #   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
289 + #   Free Software Foundation, Inc.
290
291 +-timestamp='2008-01-23'
292 ++timestamp='2008-04-14'
293
294 + # This file is free software; you can redistribute it and/or modify it
295 + # under the terms of the GNU General Public License as published by
296 +@@ -828,6 +828,9 @@
297 +       # the GNU system
298 +       echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
299 +       exit ;;
300 ++    *:GNU/kOpenSolaris:*:*)
301 ++      echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'`-gnu
302 ++      exit ;;
303 +     *:GNU/*:*:*)
304 +       # other systems with GNU libc and userland
305 +       echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
306 +@@ -985,9 +988,6 @@
307 +         a.out-i386-linux)
308 +               echo "${UNAME_MACHINE}-pc-linux-gnuaout"
309 +               exit ;;
310 +-        coff-i386)
311 +-              echo "${UNAME_MACHINE}-pc-linux-gnucoff"
312 +-              exit ;;
313 +         "")
314 +               # Either a pre-BFD a.out linker (linux-gnuoldld) or
315 +               # one that does not give us useful --help.
316 +@@ -1216,6 +1216,9 @@
317 +     BePC:BeOS:*:*)    # BeOS running on Intel PC compatible.
318 +       echo i586-pc-beos
319 +       exit ;;
320 ++    BePC:Haiku:*:*)   # Haiku running on Intel PC compatible.
321 ++      echo i586-pc-haiku
322 ++      exit ;;
323 +     SX-4:SUPER-UX:*:*)
324 +       echo sx4-nec-superux${UNAME_RELEASE}
325 +       exit ;;
326 +diff -uraN src.orig/config.sub src/config.sub
327 +--- src.orig/config.sub        2008-01-22 21:37:40.000000000 -0500
328 ++++ src/config.sub     2008-10-03 03:06:34.726365639 -0400
329 +@@ -4,7 +4,7 @@
330 + #   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
331 + #   Free Software Foundation, Inc.
332
333 +-timestamp='2008-01-16'
334 ++timestamp='2008-06-16'
335
336 + # This file is (in principle) common to ALL GNU software.
337 + # The presence of a machine in this file suggests that SOME GNU software
338 +@@ -122,7 +122,7 @@
339 + case $maybe_os in
340 +   nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
341 +   uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
342 +-  storm-chaos* | os2-emx* | rtmk-nova*)
343 ++  storm-chaos* | os2-emx* | rtmk-nova* | kopensolaris*-gnu*)
344 +     os=-$maybe_os
345 +     basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
346 +     ;;
347 +@@ -250,12 +250,14 @@
348 +       | i370 | i860 | i960 | ia64 \
349 +       | ip2k | iq2000 \
350 +       | m32c | m32r | m32rle | m68000 | m68k | m88k \
351 +-      | maxq | mb | microblaze | mcore | mep \
352 ++      | maxq | mb | microblaze | mcore | mep | metag \
353 +       | mips | mipsbe | mipseb | mipsel | mipsle \
354 +       | mips16 \
355 +       | mips64 | mips64el \
356 +-      | mips64vr | mips64vrel \
357 ++      | mips64octeon | mips64octeonel \
358 +       | mips64orion | mips64orionel \
359 ++      | mips64r5900 | mips64r5900el \
360 ++      | mips64vr | mips64vrel \
361 +       | mips64vr4100 | mips64vr4100el \
362 +       | mips64vr4300 | mips64vr4300el \
363 +       | mips64vr5000 | mips64vr5000el \
364 +@@ -331,12 +333,14 @@
365 +       | ip2k-* | iq2000-* \
366 +       | m32c-* | m32r-* | m32rle-* \
367 +       | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
368 +-      | m88110-* | m88k-* | maxq-* | mcore-* \
369 ++      | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
370 +       | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
371 +       | mips16-* \
372 +       | mips64-* | mips64el-* \
373 +-      | mips64vr-* | mips64vrel-* \
374 ++      | mips64octeon-* | mips64octeonel-* \
375 +       | mips64orion-* | mips64orionel-* \
376 ++      | mips64r5900-* | mips64r5900el-* \
377 ++      | mips64vr-* | mips64vrel-* \
378 +       | mips64vr4100-* | mips64vr4100el-* \
379 +       | mips64vr4300-* | mips64vr4300el-* \
380 +       | mips64vr5000-* | mips64vr5000el-* \
381 +@@ -364,7 +368,7 @@
382 +       | sparclite-* \
383 +       | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
384 +       | tahoe-* | thumb-* \
385 +-      | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
386 ++      | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \
387 +       | tron-* \
388 +       | v850-* | v850e-* | vax-* \
389 +       | we32k-* \
390 +@@ -459,6 +463,10 @@
391 +               basic_machine=c90-cray
392 +               os=-unicos
393 +               ;;
394 ++        cegcc)
395 ++              basic_machine=arm-unknown
396 ++              os=-cegcc
397 ++              ;;
398 +       convex-c1)
399 +               basic_machine=c1-convex
400 +               os=-bsd
401 +@@ -526,6 +534,10 @@
402 +               basic_machine=m88k-motorola
403 +               os=-sysv3
404 +               ;;
405 ++      dicos)
406 ++              basic_machine=i686-pc
407 ++              os=-dicos
408 ++              ;;
409 +       djgpp)
410 +               basic_machine=i586-pc
411 +               os=-msdosdjgpp
412 +@@ -1248,7 +1260,7 @@
413 +             | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
414 +             | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
415 +             | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
416 +-            | -chorusos* | -chorusrdb* \
417 ++            | -chorusos* | -chorusrdb* | -cegcc* \
418 +             | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
419 +             | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
420 +             | -uxpv* | -beos* | -mpeix* | -udk* \
421 +@@ -1258,7 +1270,7 @@
422 +             | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
423 +             | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
424 +             | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
425 +-            | -skyos* | -haiku* | -rdos* | -toppers* | -drops*)
426 ++            | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -kopensolaris*-gnu*)
427 +       # Remember, each alternative MUST END IN *, to match a version number.
428 +               ;;
429 +       -qnx*)
430 +@@ -1388,6 +1400,9 @@
431 +       -zvmoe)
432 +               os=-zvmoe
433 +               ;;
434 ++      -dicos*)
435 ++              os=-dicos
436 ++              ;;
437 +       -none)
438 +               ;;
439 +       *)
440 +diff -uraN src.orig/configure src/configure
441 +--- src.orig/configure 2008-02-01 22:29:30.000000000 -0500
442 ++++ src/configure      2008-10-03 03:06:34.743884646 -0400
443 +@@ -2095,7 +2095,7 @@
444 + # Disable libmudflap on some systems.
445 + if test x$enable_libmudflap = x ; then
446 +     case "${target}" in
447 +-    *-*-linux* | *-*-gnu* | *-*-k*bsd*-gnu | bfin*-*-uclinux*)
448 ++    *-*-linux* | *-*-gnu* | *-*-k*bsd*-gnu | kopensolaris*-gnu | bfin*-*-uclinux*)
449 +         # Enable libmudflap by default in GNU and friends.
450 +       ;;
451 +     *-*-freebsd*)
452 +@@ -2112,7 +2112,7 @@
453 + if test x$enable_libgomp = x ; then
454 +     # Enable libgomp by default on hosted POSIX systems.
455 +     case "${target}" in
456 +-    *-*-linux* | *-*-gnu* | *-*-k*bsd*-gnu)
457 ++    *-*-linux* | *-*-gnu* | *-*-k*bsd*-gnu | kopensolaris*-gnu)
458 +       ;;
459 +     *-*-netbsd* | *-*-freebsd* | *-*-openbsd*)
460 +       ;;
461 +@@ -2603,7 +2603,7 @@
462 +   ip2k-*-*)
463 +     noconfigdirs="$noconfigdirs target-libiberty target-libstdc++-v3 ${libgcj}"
464 +     ;;
465 +-  *-*-linux* | *-*-gnu* | *-*-k*bsd*-gnu)
466 ++  *-*-linux* | *-*-gnu* | *-*-k*bsd*-gnu | kopensolaris*-gnu)
467 +     noconfigdirs="$noconfigdirs target-newlib target-libgloss"
468 +     ;;
469 +   *-*-lynxos*)
470 +@@ -5311,7 +5311,7 @@
471 +   *-*-netware*)
472 +     target_makefile_frag="config/mt-netware"
473 +     ;;
474 +-  *-*-linux* | *-*-gnu* | *-*-k*bsd*-gnu)
475 ++  *-*-linux* | *-*-gnu* | *-*-k*bsd*-gnu | kopensolaris*-gnu)
476 +     target_makefile_frag="config/mt-gnu"
477 +     ;;
478 +   *-*-aix4.[3456789]* | *-*-aix[56789].*)
479 +diff -uraN src.orig/configure.ac src/configure.ac
480 +--- src.orig/configure.ac      2008-02-01 22:29:30.000000000 -0500
481 ++++ src/configure.ac   2008-10-03 03:06:34.750549040 -0400
482 +@@ -372,7 +372,7 @@
483 + # Disable libmudflap on some systems.
484 + if test x$enable_libmudflap = x ; then
485 +     case "${target}" in
486 +-    *-*-linux* | *-*-gnu* | *-*-k*bsd*-gnu | bfin*-*-uclinux*)
487 ++    *-*-linux* | *-*-gnu* | *-*-k*bsd*-gnu | *-*-kopensolaris*-gnu | bfin*-*-uclinux*)
488 +         # Enable libmudflap by default in GNU and friends.
489 +       ;;
490 +     *-*-freebsd*)
491 +@@ -389,7 +389,7 @@
492 + if test x$enable_libgomp = x ; then
493 +     # Enable libgomp by default on hosted POSIX systems.
494 +     case "${target}" in
495 +-    *-*-linux* | *-*-gnu* | *-*-k*bsd*-gnu)
496 ++    *-*-linux* | *-*-gnu* | *-*-kopensolaris*-gnu | *-*-k*bsd*-gnu)
497 +       ;;
498 +     *-*-netbsd* | *-*-freebsd* | *-*-openbsd*)
499 +       ;;
500 +@@ -880,7 +880,7 @@
501 +   ip2k-*-*)
502 +     noconfigdirs="$noconfigdirs target-libiberty target-libstdc++-v3 ${libgcj}"
503 +     ;;
504 +-  *-*-linux* | *-*-gnu* | *-*-k*bsd*-gnu)
505 ++  *-*-linux* | *-*-gnu* | *-*-k*bsd*-gnu | *-*-kopensolaris*-gnu)
506 +     noconfigdirs="$noconfigdirs target-newlib target-libgloss"
507 +     ;;
508 +   *-*-lynxos*)
509 +@@ -1831,7 +1831,7 @@
510 +   *-*-netware*)
511 +     target_makefile_frag="config/mt-netware"
512 +     ;;
513 +-  *-*-linux* | *-*-gnu* | *-*-k*bsd*-gnu)
514 ++  *-*-linux* | *-*-gnu* | *-*-k*bsd*-gnu | *-*-kopensolaris*-gnu)
515 +     target_makefile_frag="config/mt-gnu"
516 +     ;;
517 +   *-*-aix4.[[3456789]]* | *-*-aix[[56789]].*)
518 +diff -uraN src.orig/gcc/config/i386/kopensolaris-gnu.h src/gcc/config/i386/kopensolaris-gnu.h
519 +--- src.orig/gcc/config/i386/kopensolaris-gnu.h        1969-12-31 19:00:00.000000000 -0500
520 ++++ src/gcc/config/i386/kopensolaris-gnu.h     2008-10-03 03:06:34.750861684 -0400
521 +@@ -0,0 +1,22 @@
522 ++/* Definitions for Intel 386 running kOpenSolaris-based GNU systems with ELF format
523 ++   Copyright (C) 2008
524 ++   Free Software Foundation, Inc.
525 ++   Contributed by David Bartley <dtbartle@csclub.uwaterloo.ca>.
526 ++
527 ++This file is part of GCC.
528 ++
529 ++GCC is free software; you can redistribute it and/or modify
530 ++it under the terms of the GNU General Public License as published by
531 ++the Free Software Foundation; either version 3, or (at your option)
532 ++any later version.
533 ++
534 ++GCC is distributed in the hope that it will be useful,
535 ++but WITHOUT ANY WARRANTY; without even the implied warranty of
536 ++MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
537 ++GNU General Public License for more details.
538 ++
539 ++You should have received a copy of the GNU General Public License
540 ++along with GCC; see the file COPYING3.  If not see
541 ++<http://www.gnu.org/licenses/>.  */
542 ++
543 ++#define MD_UNWIND_SUPPORT "config/i386/sol2-unwind.h"
544 +diff -uraN src.orig/gcc/config/i386/sol2-unwind.h src/gcc/config/i386/sol2-unwind.h
545 +--- src.orig/gcc/config/i386/sol2-unwind.h     1969-12-31 19:00:00.000000000 -0500
546 ++++ src/gcc/config/i386/sol2-unwind.h  2008-10-03 03:06:34.751236291 -0400
547 +@@ -0,0 +1,155 @@
548 ++/* DWARF2 EH unwinding support for AMD x86-64 and x86.
549 ++   Copyright (C) 2004, 2005, 2006, 2008 Free Software Foundation, Inc.
550 ++
551 ++Based on i386/linux-unwind.h.
552 ++Modified for OpenSolaris by David Bartley <dtbartle@csclub.uwaterloo.ca>, 2008.
553 ++
554 ++This file is part of GCC.
555 ++
556 ++GCC is free software; you can redistribute it and/or modify
557 ++it under the terms of the GNU General Public License as published by
558 ++the Free Software Foundation; either version 2, or (at your option)
559 ++any later version.
560 ++
561 ++In addition to the permissions in the GNU General Public License, the
562 ++Free Software Foundation gives you unlimited permission to link the
563 ++compiled version of this file with other programs, and to distribute
564 ++those programs without any restriction coming from the use of this
565 ++file.  (The General Public License restrictions do apply in other
566 ++respects; for example, they cover modification of the file, and
567 ++distribution when not linked into another program.)
568 ++
569 ++GCC is distributed in the hope that it will be useful,
570 ++but WITHOUT ANY WARRANTY; without even the implied warranty of
571 ++MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
572 ++GNU General Public License for more details.
573 ++
574 ++You should have received a copy of the GNU General Public License
575 ++along with GCC; see the file COPYING.  If not, write to
576 ++the Free Software Foundation, 51 Franklin Street, Fifth Floor,
577 ++Boston, MA 02110-1301, USA.  */
578 ++
579 ++/* Do code reading to identify a signal frame, and set the frame
580 ++   state data appropriately.  See unwind-dw2.c for the structs.
581 ++   Don't use this at all if inhibit_libc is used.  */
582 ++
583 ++#ifndef inhibit_libc
584 ++
585 ++#ifdef __x86_64__
586 ++
587 ++#include <ucontext.h>
588 ++#include <sys/regset.h>
589 ++
590 ++#define MD_FALLBACK_FRAME_STATE_FOR x86_64_fallback_frame_state
591 ++
592 ++static _Unwind_Reason_Code
593 ++x86_64_fallback_frame_state (struct _Unwind_Context *context,
594 ++                           _Unwind_FrameState *fs)
595 ++{
596 ++  long new_cfa;
597 ++  ucontext_t *ctx;
598 ++  greg_t *regs;
599 ++
600 ++  /* Solaris inserts an address of -1 into the base of the signal stack.  */
601 ++  if (*((void **)context->cfa - 1) != (void *)-1)
602 ++    return _URC_END_OF_STACK;
603 ++
604 ++  /* The 3rd argument of __sighandler is the previous context.  */
605 ++  ctx = *((void **)context->cfa + 2);
606 ++  regs = ctx->uc_mcontext.gregs;
607 ++
608 ++  new_cfa = regs[REG_RSP];
609 ++  fs->regs.cfa_how = CFA_REG_OFFSET;
610 ++  /* Register 7 is rsp  */
611 ++  fs->regs.cfa_reg = 7;
612 ++  fs->regs.cfa_offset = new_cfa - (long) context->cfa;
613 ++
614 ++  /* The SVR4 register numbering macros aren't usable in libgcc.  */
615 ++  fs->regs.reg[0].how = REG_SAVED_OFFSET;
616 ++  fs->regs.reg[0].loc.offset = (long)&regs[REG_RAX] - new_cfa;
617 ++  fs->regs.reg[1].how = REG_SAVED_OFFSET;
618 ++  fs->regs.reg[1].loc.offset = (long)&regs[REG_RDX] - new_cfa;
619 ++  fs->regs.reg[2].how = REG_SAVED_OFFSET;
620 ++  fs->regs.reg[2].loc.offset = (long)&regs[REG_RCX] - new_cfa;
621 ++  fs->regs.reg[3].how = REG_SAVED_OFFSET;
622 ++  fs->regs.reg[3].loc.offset = (long)&regs[REG_RBX] - new_cfa;
623 ++  fs->regs.reg[4].how = REG_SAVED_OFFSET;
624 ++  fs->regs.reg[4].loc.offset = (long)&regs[REG_RSI] - new_cfa;
625 ++  fs->regs.reg[5].how = REG_SAVED_OFFSET;
626 ++  fs->regs.reg[5].loc.offset = (long)&regs[REG_RDI] - new_cfa;
627 ++  fs->regs.reg[6].how = REG_SAVED_OFFSET;
628 ++  fs->regs.reg[6].loc.offset = (long)&regs[REG_RBP] - new_cfa;
629 ++  fs->regs.reg[8].how = REG_SAVED_OFFSET;
630 ++  fs->regs.reg[8].loc.offset = (long)&regs[REG_R8] - new_cfa;
631 ++  fs->regs.reg[9].how = REG_SAVED_OFFSET;
632 ++  fs->regs.reg[9].loc.offset = (long)&regs[REG_R9] - new_cfa;
633 ++  fs->regs.reg[10].how = REG_SAVED_OFFSET;
634 ++  fs->regs.reg[10].loc.offset = (long)&regs[REG_R10] - new_cfa;
635 ++  fs->regs.reg[11].how = REG_SAVED_OFFSET;
636 ++  fs->regs.reg[11].loc.offset = (long)&regs[REG_R11] - new_cfa;
637 ++  fs->regs.reg[12].how = REG_SAVED_OFFSET;
638 ++  fs->regs.reg[12].loc.offset = (long)&regs[REG_R12] - new_cfa;
639 ++  fs->regs.reg[13].how = REG_SAVED_OFFSET;
640 ++  fs->regs.reg[13].loc.offset = (long)&regs[REG_R13] - new_cfa;
641 ++  fs->regs.reg[14].how = REG_SAVED_OFFSET;
642 ++  fs->regs.reg[14].loc.offset = (long)&regs[REG_R14] - new_cfa;
643 ++  fs->regs.reg[15].how = REG_SAVED_OFFSET;
644 ++  fs->regs.reg[15].loc.offset = (long)&regs[REG_R15] - new_cfa;
645 ++  fs->regs.reg[16].how = REG_SAVED_OFFSET;
646 ++  fs->regs.reg[16].loc.offset = (long)&regs[REG_RIP] - new_cfa;
647 ++  fs->retaddr_column = 16;
648 ++  fs->signal_frame = 1;
649 ++  return _URC_NO_REASON;
650 ++}
651 ++
652 ++#else /* ifdef __x86_64__  */
653 ++
654 ++#include <ucontext.h>
655 ++#include <sys/regset.h>
656 ++
657 ++#define MD_FALLBACK_FRAME_STATE_FOR x86_fallback_frame_state
658 ++
659 ++static _Unwind_Reason_Code
660 ++x86_fallback_frame_state (struct _Unwind_Context *context,
661 ++                        _Unwind_FrameState *fs)
662 ++{
663 ++  long new_cfa;
664 ++  ucontext_t *ctx;
665 ++  greg_t *regs;
666 ++
667 ++  /* Solaris inserts an address of -1 into the base of the signal stack.  */
668 ++  if (*((void **)context->cfa - 1) != (void *)-1)
669 ++    return _URC_END_OF_STACK;
670 ++
671 ++  /* The 3rd argument of __sighandler is the previous context.  */
672 ++  ctx = *((void **)context->cfa + 2);
673 ++  regs = ctx->uc_mcontext.gregs;
674 ++
675 ++  new_cfa = regs[UESP];
676 ++  fs->regs.cfa_how = CFA_REG_OFFSET;
677 ++  fs->regs.cfa_reg = 4;
678 ++  fs->regs.cfa_offset = new_cfa - (long) context->cfa;
679 ++
680 ++  /* The SVR4 register numbering macros aren't usable in libgcc.  */
681 ++  fs->regs.reg[0].how = REG_SAVED_OFFSET;
682 ++  fs->regs.reg[0].loc.offset = (long)&regs[EAX] - new_cfa;
683 ++  fs->regs.reg[3].how = REG_SAVED_OFFSET;
684 ++  fs->regs.reg[3].loc.offset = (long)&regs[EBX] - new_cfa;
685 ++  fs->regs.reg[1].how = REG_SAVED_OFFSET;
686 ++  fs->regs.reg[1].loc.offset = (long)&regs[ECX] - new_cfa;
687 ++  fs->regs.reg[2].how = REG_SAVED_OFFSET;
688 ++  fs->regs.reg[2].loc.offset = (long)&regs[EDX] - new_cfa;
689 ++  fs->regs.reg[6].how = REG_SAVED_OFFSET;
690 ++  fs->regs.reg[6].loc.offset = (long)&regs[ESI] - new_cfa;
691 ++  fs->regs.reg[7].how = REG_SAVED_OFFSET;
692 ++  fs->regs.reg[7].loc.offset = (long)&regs[EDI] - new_cfa;
693 ++  fs->regs.reg[5].how = REG_SAVED_OFFSET;
694 ++  fs->regs.reg[5].loc.offset = (long)&regs[EBP] - new_cfa;
695 ++  fs->regs.reg[8].how = REG_SAVED_OFFSET;
696 ++  fs->regs.reg[8].loc.offset = (long)&regs[EIP] - new_cfa;
697 ++  fs->retaddr_column = 8;
698 ++  fs->signal_frame = 1;
699 ++  return _URC_NO_REASON;
700 ++}
701 ++#endif /* ifdef __x86_64__  */
702 ++#endif /* ifdef inhibit_libc  */
703 +diff -uraN src.orig/gcc/config/kopensolaris-gnu.h src/gcc/config/kopensolaris-gnu.h
704 +--- src.orig/gcc/config/kopensolaris-gnu.h     1969-12-31 19:00:00.000000000 -0500
705 ++++ src/gcc/config/kopensolaris-gnu.h  2008-10-03 03:06:34.751485724 -0400
706 +@@ -0,0 +1,39 @@
707 ++/* Definitions for OpenSolaris-based GNU systems with ELF format
708 ++   Copyright (C) 2004, 2006, 2007, 2008
709 ++   Free Software Foundation, Inc.
710 ++   Contributed by David Bartley <dtbartle@csclub.uwaterloo.ca>, 2008.
711 ++   Based on kfreebsd-gnu.h contributed by Robert Millan.
712 ++
713 ++This file is part of GCC.
714 ++
715 ++GCC is free software; you can redistribute it and/or modify
716 ++it under the terms of the GNU General Public License as published by
717 ++the Free Software Foundation; either version 3, or (at your option)
718 ++any later version.
719 ++
720 ++GCC is distributed in the hope that it will be useful,
721 ++but WITHOUT ANY WARRANTY; without even the implied warranty of
722 ++MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
723 ++GNU General Public License for more details.
724 ++
725 ++You should have received a copy of the GNU General Public License
726 ++along with GCC; see the file COPYING3.  If not see
727 ++<http://www.gnu.org/licenses/>.  */
728 ++
729 ++#undef LINUX_TARGET_OS_CPP_BUILTINS
730 ++#define LINUX_TARGET_OS_CPP_BUILTINS()                \
731 ++  do                                          \
732 ++    {                                         \
733 ++      builtin_define ("__OpenSolaris_kernel__");      \
734 ++      builtin_define_std ("unix");            \
735 ++      builtin_assert ("system=unix");         \
736 ++      builtin_assert ("system=posix");        \
737 ++    }                                         \
738 ++  while (0)
739 ++
740 ++#ifdef GLIBC_DYNAMIC_LINKER
741 ++#undef GLIBC_DYNAMIC_LINKER
742 ++#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1"
743 ++#endif
744 ++
745 ++#undef MD_UNWIND_SUPPORT
746 +diff -uraN src.orig/gcc/config.gcc src/gcc/config.gcc
747 +--- src.orig/gcc/config.gcc    2008-10-03 03:02:05.191731000 -0400
748 ++++ src/gcc/config.gcc 2008-10-03 03:06:34.752309891 -0400
749 +@@ -491,7 +491,7 @@
750 + *-*-linux*libc1* | *-*-linux*aout*)
751 +   # Avoid the generic linux case.
752 +   ;;
753 +-*-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | *-*-knetbsd*-gnu)
754 ++*-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | *-*-knetbsd*-gnu | *-*-kopensolaris*-gnu )
755 +   # Must come before *-*-gnu* (because of *-*-linux-gnu* systems).
756 +   extra_parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o"
757 +   extra_options="${extra_options} linux.opt"
758 +@@ -1151,7 +1151,7 @@
759 +       tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h dbxcoff.h i386/i386-coff.h"
760 +       use_fixproto=yes
761 +       ;;
762 +-i[34567]86-*-linux* | i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-gnu)
763 ++i[34567]86-*-linux* | i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-gnu | i[34567]86-*-kopensolaris*-gnu )
764 +                       # Intel 80386's running GNU/*
765 +                       # with ELF format using glibc 2
766 +       tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h"
767 +@@ -1182,15 +1182,17 @@
768 +               ;;
769 +       i[34567]86-*-knetbsd*-gnu) tm_file="${tm_file} i386/linux.h knetbsd-gnu.h i386/knetbsd-gnu.h" ;;
770 +       i[34567]86-*-kfreebsd*-gnu) tm_file="${tm_file} i386/linux.h kfreebsd-gnu.h i386/kfreebsd-gnu.h" ;;
771 ++      i[34567]86-*-kopensolaris*-gnu) tm_file="${tm_file} i386/linux.h kopensolaris-gnu.h i386/kopensolaris-gnu.h" ;;
772 +       esac
773 +       tmake_file="${tmake_file} i386/t-crtstuff i386/t-crtpc i386/t-crtfm t-dfprules"
774 +       ;;
775 +-x86_64-*-linux* | x86_64-*-kfreebsd*-gnu | x86_64-*-knetbsd*-gnu)
776 ++x86_64-*-linux* | x86_64-*-kfreebsd*-gnu | x86_64-*-knetbsd*-gnu | x86_64-*-kopensolaris*-gnu )
777 +       tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h \
778 +                i386/x86-64.h i386/linux64.h"
779 +       case ${target} in
780 +       x86_64-*-kfreebsd*-gnu) tm_file="${tm_file} kfreebsd-gnu.h" ;;
781 +       x86_64-*-knetbsd*-gnu) tm_file="${tm_file} knetbsd-gnu.h" ;;
782 ++      x86_64-*-kopensolaris*-gnu) tm_file="${tm_file} kopensolaris-gnu.h" ;;
783 +       esac
784 +       tmake_file="${tmake_file} i386/t-linux64 i386/t-crtstuff i386/t-crtpc i386/t-crtfm i386/t-fprules-softfp64 soft-fp/t-softfp t-dfprules"
785 +       ;;
786 +diff -uraN src.orig/gcc/configure src/gcc/configure
787 +--- src.orig/gcc/configure     2008-10-03 03:02:46.453830000 -0400
788 ++++ src/gcc/configure  2008-10-03 03:06:34.776355916 -0400
789 +@@ -14428,7 +14428,7 @@
790 +   ;;
791
792 + # This must be Linux ELF.
793 +-linux* | k*bsd*-gnu)
794 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
795 +   lt_cv_deplibs_check_method=pass_all
796 +   ;;
797
798 +@@ -15161,7 +15161,7 @@
799 +   ;;
800
801 + x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
802 +-s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
803 ++s390*-*linux*|s390*-*tpf*|sparc*-*linux*|x86_64-*kopensolaris*-gnu)
804 +   # Find out which ABI we are using.
805 +   echo 'int i;' > conftest.$ac_ext
806 +   if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
807 +@@ -15175,7 +15175,7 @@
808 +         x86_64-*kfreebsd*-gnu)
809 +           LD="${LD-ld} -m elf_i386_fbsd"
810 +           ;;
811 +-        x86_64-*linux*)
812 ++        x86_64-*linux*|x86_64-*kopensolaris*-gnu)
813 +           LD="${LD-ld} -m elf_i386"
814 +           ;;
815 +         ppc64-*linux*|powerpc64-*linux*)
816 +@@ -15194,7 +15194,7 @@
817 +         x86_64-*kfreebsd*-gnu)
818 +           LD="${LD-ld} -m elf_x86_64_fbsd"
819 +           ;;
820 +-        x86_64-*linux*)
821 ++        x86_64-*linux*|x86_64-*kopensolaris*-gnu)
822 +           LD="${LD-ld} -m elf_x86_64"
823 +           ;;
824 +         ppc*-*linux*|powerpc*-*linux*)
825 +@@ -15917,7 +15917,7 @@
826 +       lt_prog_compiler_static='-non_shared'
827 +       ;;
828
829 +-    linux* | k*bsd*-gnu)
830 ++    linux* | k*bsd*-gnu | kopensolaris*-gnu)
831 +       case $cc_basename in
832 +       icc* | ecc*)
833 +       lt_prog_compiler_wl='-Wl,'
834 +@@ -16458,7 +16458,7 @@
835 +       archive_expsym_cmds='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
836 +       ;;
837
838 +-    gnu* | linux* | tpf* | k*bsd*-gnu)
839 ++    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
840 +       tmp_diet=no
841 +       if test "$host_os" = linux-dietlibc; then
842 +       case $cc_basename in
843 +@@ -18008,7 +18008,7 @@
844 +   ;;
845
846 + # This must be Linux ELF.
847 +-linux* | k*bsd*-gnu)
848 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
849 +   version_type=linux
850 +   need_lib_prefix=no
851 +   need_version=no
852 +diff -uraN src.orig/gcc/testsuite/gcc.c-torture/execute/990127-2.x src/gcc/testsuite/gcc.c-torture/execute/990127-2.x
853 +--- src.orig/gcc/testsuite/gcc.c-torture/execute/990127-2.x    2007-05-21 16:41:34.000000000 -0400
854 ++++ src/gcc/testsuite/gcc.c-torture/execute/990127-2.x 2008-10-03 03:06:34.785943732 -0400
855 +@@ -5,9 +5,11 @@
856
857 + if { [istarget i?86-*-linux*]
858 +      || [istarget i?86-*-kfreebsd*-gnu]
859 ++     || [istarget i?86-*-kopensolaris*-gnu]
860 +      || [istarget i?86-*-knetbsd*-gnu]
861 +      || [istarget x86_64-*-linux*]
862 +      || [istarget x86_64-*-kfreebsd*-gnu]
863 ++     || [istarget x86_64-*-kopensolaris*-gnu]
864 +      || [istarget x86_64-*-knetbsd*-gnu] } {
865 +       set additional_flags "-mpc64"
866 + }
867 +diff -uraN src.orig/libffi/configure src/libffi/configure
868 +--- src.orig/libffi/configure  2008-06-06 10:49:11.000000000 -0400
869 ++++ src/libffi/configure       2008-10-03 03:06:34.806641689 -0400
870 +@@ -4171,7 +4171,7 @@
871 +   ;;
872
873 + # This must be Linux ELF.
874 +-linux* | k*bsd*-gnu)
875 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
876 +   lt_cv_deplibs_check_method=pass_all
877 +   ;;
878
879 +@@ -4905,7 +4905,7 @@
880 +   ;;
881
882 + x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
883 +-s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
884 ++s390*-*linux*|s390*-*tpf*|sparc*-*linux*|x86_64-*kopensolaris*-gnu)
885 +   # Find out which ABI we are using.
886 +   echo 'int i;' > conftest.$ac_ext
887 +   if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
888 +@@ -4919,7 +4919,7 @@
889 +         x86_64-*kfreebsd*-gnu)
890 +           LD="${LD-ld} -m elf_i386_fbsd"
891 +           ;;
892 +-        x86_64-*linux*)
893 ++        x86_64-*linux*|x86_64-*kopensolaris*-gnu)
894 +           LD="${LD-ld} -m elf_i386"
895 +           ;;
896 +         ppc64-*linux*|powerpc64-*linux*)
897 +@@ -4938,7 +4938,7 @@
898 +         x86_64-*kfreebsd*-gnu)
899 +           LD="${LD-ld} -m elf_x86_64_fbsd"
900 +           ;;
901 +-        x86_64-*linux*)
902 ++        x86_64-*linux*|x86_64-*kopensolaris*-gnu)
903 +           LD="${LD-ld} -m elf_x86_64"
904 +           ;;
905 +         ppc*-*linux*|powerpc*-*linux*)
906 +@@ -6141,7 +6141,7 @@
907 +       lt_prog_compiler_static='-non_shared'
908 +       ;;
909
910 +-    linux* | k*bsd*-gnu)
911 ++    linux* | k*bsd*-gnu | kopensolaris*-gnu)
912 +       case $cc_basename in
913 +       icc* | ecc*)
914 +       lt_prog_compiler_wl='-Wl,'
915 +@@ -6682,7 +6682,7 @@
916 +       archive_expsym_cmds='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
917 +       ;;
918
919 +-    gnu* | linux* | tpf* | k*bsd*-gnu)
920 ++    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
921 +       tmp_diet=no
922 +       if test "$host_os" = linux-dietlibc; then
923 +       case $cc_basename in
924 +@@ -8232,7 +8232,7 @@
925 +   ;;
926
927 + # This must be Linux ELF.
928 +-linux* | k*bsd*-gnu)
929 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
930 +   version_type=linux
931 +   need_lib_prefix=no
932 +   need_version=no
933 +diff -uraN src.orig/libgcc/config.host src/libgcc/config.host
934 +--- src.orig/libgcc/config.host        2008-01-25 15:49:04.000000000 -0500
935 ++++ src/libgcc/config.host     2008-10-03 03:06:34.807256606 -0400
936 +@@ -162,7 +162,7 @@
937 + *-*-linux*libc1* | *-*-linux*aout*)
938 +   # Avoid the generic linux case.
939 +   ;;
940 +-*-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | *-*-knetbsd*-gnu)
941 ++*-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | *-*-knetbsd*-gnu | *-*-kopensolaris*-gnu)
942 +   # Must come before *-*-gnu* (because of *-*-linux-gnu* systems).
943 +   extra_parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o"
944 +   ;;
945 +@@ -325,11 +325,13 @@
946 +       ;;
947 + i[34567]86-*-coff*)
948 +       ;;
949 +-i[34567]86-*-linux* | i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-gnu)
950 ++i[34567]86-*-linux* | i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-gnu | \
951 ++i[34567]86-*-kopensolaris*-gnu)
952 +       extra_parts="$extra_parts crtprec32.o crtprec64.o crtprec80.o crtfastmath.o"
953 +       tmake_file="${tmake_file} i386/t-crtpc i386/t-crtfm"
954 +       ;;
955 +-x86_64-*-linux* | x86_64-*-kfreebsd*-gnu | x86_64-*-knetbsd*-gnu)
956 ++x86_64-*-linux* | x86_64-*-kfreebsd*-gnu | x86_64-*-knetbsd*-gnu | \
957 ++x86_64-*-kopensolaris*-gnu)
958 +       extra_parts="$extra_parts crtprec32.o crtprec64.o crtprec80.o crtfastmath.o"
959 +       tmake_file="${tmake_file} i386/t-crtpc i386/t-crtfm"
960 +       ;;
961 +diff -uraN src.orig/libgfortran/configure src/libgfortran/configure
962 +--- src.orig/libgfortran/configure     2008-06-06 10:49:11.000000000 -0400
963 ++++ src/libgfortran/configure  2008-10-03 03:06:34.846307990 -0400
964 +@@ -4712,7 +4712,7 @@
965 +   ;;
966
967 + # This must be Linux ELF.
968 +-linux* | k*bsd*-gnu)
969 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
970 +   lt_cv_deplibs_check_method=pass_all
971 +   ;;
972
973 +@@ -5445,7 +5445,7 @@
974 +   ;;
975
976 + x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
977 +-s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
978 ++s390*-*linux*|s390*-*tpf*|sparc*-*linux*|x86_64-*kopensolaris*-gnu)
979 +   # Find out which ABI we are using.
980 +   echo 'int i;' > conftest.$ac_ext
981 +   if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
982 +@@ -5459,7 +5459,7 @@
983 +         x86_64-*kfreebsd*-gnu)
984 +           LD="${LD-ld} -m elf_i386_fbsd"
985 +           ;;
986 +-        x86_64-*linux*)
987 ++        x86_64-*linux*|x86_64-*kopensolaris*-gnu)
988 +           LD="${LD-ld} -m elf_i386"
989 +           ;;
990 +         ppc64-*linux*|powerpc64-*linux*)
991 +@@ -5478,7 +5478,7 @@
992 +         x86_64-*kfreebsd*-gnu)
993 +           LD="${LD-ld} -m elf_x86_64_fbsd"
994 +           ;;
995 +-        x86_64-*linux*)
996 ++        x86_64-*linux*|x86_64-*kopensolaris*-gnu)
997 +           LD="${LD-ld} -m elf_x86_64"
998 +           ;;
999 +         ppc*-*linux*|powerpc*-*linux*)
1000 +@@ -6686,7 +6686,7 @@
1001 +       lt_prog_compiler_static='-non_shared'
1002 +       ;;
1003
1004 +-    linux* | k*bsd*-gnu)
1005 ++    linux* | k*bsd*-gnu | kopensolaris*-gnu)
1006 +       case $cc_basename in
1007 +       icc* | ecc*)
1008 +       lt_prog_compiler_wl='-Wl,'
1009 +@@ -7227,7 +7227,7 @@
1010 +       archive_expsym_cmds='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
1011 +       ;;
1012
1013 +-    gnu* | linux* | tpf* | k*bsd*-gnu)
1014 ++    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
1015 +       tmp_diet=no
1016 +       if test "$host_os" = linux-dietlibc; then
1017 +       case $cc_basename in
1018 +@@ -8792,7 +8792,7 @@
1019 +   ;;
1020
1021 + # This must be Linux ELF.
1022 +-linux* | k*bsd*-gnu)
1023 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
1024 +   version_type=linux
1025 +   need_lib_prefix=no
1026 +   need_version=no
1027 +@@ -11083,7 +11083,7 @@
1028 +       lt_prog_compiler_static_FC='-non_shared'
1029 +       ;;
1030
1031 +-    linux* | k*bsd*-gnu)
1032 ++    linux* | k*bsd*-gnu | kopensolaris*-gnu)
1033 +       case $cc_basename in
1034 +       icc* | ecc*)
1035 +       lt_prog_compiler_wl_FC='-Wl,'
1036 +@@ -11609,7 +11609,7 @@
1037 +       archive_expsym_cmds_FC='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
1038 +       ;;
1039
1040 +-    gnu* | linux* | tpf* | k*bsd*-gnu)
1041 ++    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
1042 +       tmp_diet=no
1043 +       if test "$host_os" = linux-dietlibc; then
1044 +       case $cc_basename in
1045 +@@ -13000,7 +13000,7 @@
1046 +   ;;
1047
1048 + # This must be Linux ELF.
1049 +-linux* | k*bsd*-gnu)
1050 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
1051 +   version_type=linux
1052 +   need_lib_prefix=no
1053 +   need_version=no
1054 +diff -uraN src.orig/libgomp/configure src/libgomp/configure
1055 +--- src.orig/libgomp/configure 2008-01-24 11:23:13.000000000 -0500
1056 ++++ src/libgomp/configure      2008-10-03 03:06:34.875307286 -0400
1057 +@@ -4583,7 +4583,7 @@
1058 +   ;;
1059
1060 + # This must be Linux ELF.
1061 +-linux* | k*bsd*-gnu)
1062 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
1063 +   lt_cv_deplibs_check_method=pass_all
1064 +   ;;
1065
1066 +@@ -5317,7 +5317,7 @@
1067 +   ;;
1068
1069 + x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
1070 +-s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
1071 ++s390*-*linux*|s390*-*tpf*|sparc*-*linux*|x86_64-*kopensolaris*-gnu)
1072 +   # Find out which ABI we are using.
1073 +   echo 'int i;' > conftest.$ac_ext
1074 +   if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
1075 +@@ -5331,7 +5331,7 @@
1076 +         x86_64-*kfreebsd*-gnu)
1077 +           LD="${LD-ld} -m elf_i386_fbsd"
1078 +           ;;
1079 +-        x86_64-*linux*)
1080 ++        x86_64-*linux*|x86_64-*kopensolaris*-gnu)
1081 +           LD="${LD-ld} -m elf_i386"
1082 +           ;;
1083 +         ppc64-*linux*|powerpc64-*linux*)
1084 +@@ -5350,7 +5350,7 @@
1085 +         x86_64-*kfreebsd*-gnu)
1086 +           LD="${LD-ld} -m elf_x86_64_fbsd"
1087 +           ;;
1088 +-        x86_64-*linux*)
1089 ++        x86_64-*linux*|x86_64-*kopensolaris*-gnu)
1090 +           LD="${LD-ld} -m elf_x86_64"
1091 +           ;;
1092 +         ppc*-*linux*|powerpc*-*linux*)
1093 +@@ -6553,7 +6553,7 @@
1094 +       lt_prog_compiler_static='-non_shared'
1095 +       ;;
1096
1097 +-    linux* | k*bsd*-gnu)
1098 ++    linux* | k*bsd*-gnu | kopensolaris*-gnu)
1099 +       case $cc_basename in
1100 +       icc* | ecc*)
1101 +       lt_prog_compiler_wl='-Wl,'
1102 +@@ -7094,7 +7094,7 @@
1103 +       archive_expsym_cmds='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
1104 +       ;;
1105
1106 +-    gnu* | linux* | tpf* | k*bsd*-gnu)
1107 ++    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
1108 +       tmp_diet=no
1109 +       if test "$host_os" = linux-dietlibc; then
1110 +       case $cc_basename in
1111 +@@ -8644,7 +8644,7 @@
1112 +   ;;
1113
1114 + # This must be Linux ELF.
1115 +-linux* | k*bsd*-gnu)
1116 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
1117 +   version_type=linux
1118 +   need_lib_prefix=no
1119 +   need_version=no
1120 +@@ -10920,7 +10920,7 @@
1121 +       lt_prog_compiler_static_FC='-non_shared'
1122 +       ;;
1123
1124 +-    linux* | k*bsd*-gnu)
1125 ++    linux* | k*bsd*-gnu | kopensolaris*-gnu)
1126 +       case $cc_basename in
1127 +       icc* | ecc*)
1128 +       lt_prog_compiler_wl_FC='-Wl,'
1129 +@@ -11446,7 +11446,7 @@
1130 +       archive_expsym_cmds_FC='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
1131 +       ;;
1132
1133 +-    gnu* | linux* | tpf* | k*bsd*-gnu)
1134 ++    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
1135 +       tmp_diet=no
1136 +       if test "$host_os" = linux-dietlibc; then
1137 +       case $cc_basename in
1138 +@@ -12822,7 +12822,7 @@
1139 +   ;;
1140
1141 + # This must be Linux ELF.
1142 +-linux* | k*bsd*-gnu)
1143 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
1144 +   version_type=linux
1145 +   need_lib_prefix=no
1146 +   need_version=no
1147 +diff -uraN src.orig/libjava/classpath/config.guess src/libjava/classpath/config.guess
1148 +--- src.orig/libjava/classpath/config.guess    2007-06-03 19:18:43.000000000 -0400
1149 ++++ src/libjava/classpath/config.guess 2008-10-03 03:06:34.876423585 -0400
1150 +@@ -1,10 +1,10 @@
1151 + #! /bin/sh
1152 + # Attempt to guess a canonical system name.
1153 + #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
1154 +-#   2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation,
1155 +-#   Inc.
1156 ++#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
1157 ++#   Free Software Foundation, Inc.
1158
1159 +-timestamp='2006-12-08'
1160 ++timestamp='2008-04-14'
1161
1162 + # This file is free software; you can redistribute it and/or modify it
1163 + # under the terms of the GNU General Public License as published by
1164 +@@ -56,8 +56,8 @@
1165 + GNU config.guess ($timestamp)
1166
1167 + Originally written by Per Bothner.
1168 +-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
1169 +-Free Software Foundation, Inc.
1170 ++Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
1171 ++2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
1172
1173 + This is free software; see the source for copying conditions.  There is NO
1174 + warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
1175 +@@ -330,7 +330,7 @@
1176 +     sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
1177 +       echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
1178 +       exit ;;
1179 +-    i86pc:SunOS:5.*:*)
1180 ++    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
1181 +       echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
1182 +       exit ;;
1183 +     sun4*:SunOS:6*:*)
1184 +@@ -532,7 +532,7 @@
1185 +               echo rs6000-ibm-aix3.2
1186 +       fi
1187 +       exit ;;
1188 +-    *:AIX:*:[45])
1189 ++    *:AIX:*:[456])
1190 +       IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
1191 +       if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
1192 +               IBM_ARCH=rs6000
1193 +@@ -781,7 +781,7 @@
1194 +     i*:CYGWIN*:*)
1195 +       echo ${UNAME_MACHINE}-pc-cygwin
1196 +       exit ;;
1197 +-    i*:MINGW*:*)
1198 ++    *:MINGW*:*)
1199 +       echo ${UNAME_MACHINE}-pc-mingw32
1200 +       exit ;;
1201 +     i*:windows32*:*)
1202 +@@ -791,12 +791,18 @@
1203 +     i*:PW*:*)
1204 +       echo ${UNAME_MACHINE}-pc-pw32
1205 +       exit ;;
1206 +-    x86:Interix*:[3456]*)
1207 +-      echo i586-pc-interix${UNAME_RELEASE}
1208 +-      exit ;;
1209 +-    EM64T:Interix*:[3456]* | authenticamd:Interix*:[3456]*)
1210 +-      echo x86_64-unknown-interix${UNAME_RELEASE}
1211 +-      exit ;;
1212 ++    *:Interix*:[3456]*)
1213 ++      case ${UNAME_MACHINE} in
1214 ++          x86)
1215 ++              echo i586-pc-interix${UNAME_RELEASE}
1216 ++              exit ;;
1217 ++          EM64T | authenticamd)
1218 ++              echo x86_64-unknown-interix${UNAME_RELEASE}
1219 ++              exit ;;
1220 ++          IA64)
1221 ++              echo ia64-unknown-interix${UNAME_RELEASE}
1222 ++              exit ;;
1223 ++      esac ;;
1224 +     [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
1225 +       echo i${UNAME_MACHINE}-pc-mks
1226 +       exit ;;
1227 +@@ -822,6 +828,9 @@
1228 +       # the GNU system
1229 +       echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
1230 +       exit ;;
1231 ++    *:GNU/kOpenSolaris:*:*)
1232 ++      echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'`-gnu
1233 ++      exit ;;
1234 +     *:GNU/*:*:*)
1235 +       # other systems with GNU libc and userland
1236 +       echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
1237 +@@ -830,7 +839,14 @@
1238 +       echo ${UNAME_MACHINE}-pc-minix
1239 +       exit ;;
1240 +     arm*:Linux:*:*)
1241 +-      echo ${UNAME_MACHINE}-unknown-linux-gnu
1242 ++      eval $set_cc_for_build
1243 ++      if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
1244 ++          | grep -q __ARM_EABI__
1245 ++      then
1246 ++          echo ${UNAME_MACHINE}-unknown-linux-gnu
1247 ++      else
1248 ++          echo ${UNAME_MACHINE}-unknown-linux-gnueabi
1249 ++      fi
1250 +       exit ;;
1251 +     avr32*:Linux:*:*)
1252 +       echo ${UNAME_MACHINE}-unknown-linux-gnu
1253 +@@ -951,8 +967,8 @@
1254 +     x86_64:Linux:*:*)
1255 +       echo x86_64-unknown-linux-gnu
1256 +       exit ;;
1257 +-    xtensa:Linux:*:*)
1258 +-      echo xtensa-unknown-linux-gnu
1259 ++    xtensa*:Linux:*:*)
1260 ++      echo ${UNAME_MACHINE}-unknown-linux-gnu
1261 +       exit ;;
1262 +     i*86:Linux:*:*)
1263 +       # The BFD linker knows what the default object file format is, so
1264 +@@ -972,9 +988,6 @@
1265 +         a.out-i386-linux)
1266 +               echo "${UNAME_MACHINE}-pc-linux-gnuaout"
1267 +               exit ;;
1268 +-        coff-i386)
1269 +-              echo "${UNAME_MACHINE}-pc-linux-gnucoff"
1270 +-              exit ;;
1271 +         "")
1272 +               # Either a pre-BFD a.out linker (linux-gnuoldld) or
1273 +               # one that does not give us useful --help.
1274 +@@ -1203,6 +1216,9 @@
1275 +     BePC:BeOS:*:*)    # BeOS running on Intel PC compatible.
1276 +       echo i586-pc-beos
1277 +       exit ;;
1278 ++    BePC:Haiku:*:*)   # Haiku running on Intel PC compatible.
1279 ++      echo i586-pc-haiku
1280 ++      exit ;;
1281 +     SX-4:SUPER-UX:*:*)
1282 +       echo sx4-nec-superux${UNAME_RELEASE}
1283 +       exit ;;
1284 +@@ -1218,6 +1234,9 @@
1285 +     SX-8:SUPER-UX:*:*)
1286 +       echo sx8-nec-superux${UNAME_RELEASE}
1287 +       exit ;;
1288 ++    SX-8R:SUPER-UX:*:*)
1289 ++      echo sx8r-nec-superux${UNAME_RELEASE}
1290 ++      exit ;;
1291 +     Power*:Rhapsody:*:*)
1292 +       echo powerpc-apple-rhapsody${UNAME_RELEASE}
1293 +       exit ;;
1294 +@@ -1468,9 +1487,9 @@
1295 + the operating system you are using. It is advised that you
1296 + download the most up to date version of the config scripts from
1297
1298 +-  http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess
1299 ++  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
1300 + and
1301 +-  http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub
1302 ++  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
1303
1304 + If the version you run ($0) is already up to date, please
1305 + send the following data and any information you think might be
1306 +diff -uraN src.orig/libjava/classpath/config.sub src/libjava/classpath/config.sub
1307 +--- src.orig/libjava/classpath/config.sub      2007-06-03 19:18:43.000000000 -0400
1308 ++++ src/libjava/classpath/config.sub   2008-10-03 03:06:34.877167268 -0400
1309 +@@ -1,10 +1,10 @@
1310 + #! /bin/sh
1311 + # Configuration validation subroutine script.
1312 + #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
1313 +-#   2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation,
1314 +-#   Inc.
1315 ++#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
1316 ++#   Free Software Foundation, Inc.
1317
1318 +-timestamp='2006-12-08'
1319 ++timestamp='2008-06-16'
1320
1321 + # This file is (in principle) common to ALL GNU software.
1322 + # The presence of a machine in this file suggests that SOME GNU software
1323 +@@ -72,8 +72,8 @@
1324 + version="\
1325 + GNU config.sub ($timestamp)
1326
1327 +-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
1328 +-Free Software Foundation, Inc.
1329 ++Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
1330 ++2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
1331
1332 + This is free software; see the source for copying conditions.  There is NO
1333 + warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
1334 +@@ -122,7 +122,7 @@
1335 + case $maybe_os in
1336 +   nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
1337 +   uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
1338 +-  storm-chaos* | os2-emx* | rtmk-nova*)
1339 ++  storm-chaos* | os2-emx* | rtmk-nova* | kopensolaris*-gnu*)
1340 +     os=-$maybe_os
1341 +     basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
1342 +     ;;
1343 +@@ -250,13 +250,14 @@
1344 +       | i370 | i860 | i960 | ia64 \
1345 +       | ip2k | iq2000 \
1346 +       | m32c | m32r | m32rle | m68000 | m68k | m88k \
1347 +-      | maxq | mb | microblaze | mcore \
1348 +-      | mep \
1349 ++      | maxq | mb | microblaze | mcore | mep | metag \
1350 +       | mips | mipsbe | mipseb | mipsel | mipsle \
1351 +       | mips16 \
1352 +       | mips64 | mips64el \
1353 +-      | mips64vr | mips64vrel \
1354 ++      | mips64octeon | mips64octeonel \
1355 +       | mips64orion | mips64orionel \
1356 ++      | mips64r5900 | mips64r5900el \
1357 ++      | mips64vr | mips64vrel \
1358 +       | mips64vr4100 | mips64vr4100el \
1359 +       | mips64vr4300 | mips64vr4300el \
1360 +       | mips64vr5000 | mips64vr5000el \
1361 +@@ -332,13 +333,14 @@
1362 +       | ip2k-* | iq2000-* \
1363 +       | m32c-* | m32r-* | m32rle-* \
1364 +       | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
1365 +-      | m88110-* | m88k-* | maxq-* | mcore-* \
1366 ++      | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
1367 +       | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
1368 +-      | mep-* \
1369 +       | mips16-* \
1370 +       | mips64-* | mips64el-* \
1371 +-      | mips64vr-* | mips64vrel-* \
1372 ++      | mips64octeon-* | mips64octeonel-* \
1373 +       | mips64orion-* | mips64orionel-* \
1374 ++      | mips64r5900-* | mips64r5900el-* \
1375 ++      | mips64vr-* | mips64vrel-* \
1376 +       | mips64vr4100-* | mips64vr4100el-* \
1377 +       | mips64vr4300-* | mips64vr4300el-* \
1378 +       | mips64vr5000-* | mips64vr5000el-* \
1379 +@@ -366,15 +368,19 @@
1380 +       | sparclite-* \
1381 +       | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
1382 +       | tahoe-* | thumb-* \
1383 +-      | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
1384 ++      | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \
1385 +       | tron-* \
1386 +       | v850-* | v850e-* | vax-* \
1387 +       | we32k-* \
1388 +       | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
1389 +-      | xstormy16-* | xtensa-* \
1390 ++      | xstormy16-* | xtensa*-* \
1391 +       | ymp-* \
1392 +       | z8k-*)
1393 +               ;;
1394 ++      # Recognize the basic CPU types without company name, with glob match.
1395 ++      xtensa*)
1396 ++              basic_machine=$basic_machine-unknown
1397 ++              ;;
1398 +       # Recognize the various machine names and aliases which stand
1399 +       # for a CPU type and a company and sometimes even an OS.
1400 +       386bsd)
1401 +@@ -445,10 +451,22 @@
1402 +               basic_machine=ns32k-sequent
1403 +               os=-dynix
1404 +               ;;
1405 ++      blackfin)
1406 ++              basic_machine=bfin-unknown
1407 ++              os=-linux
1408 ++              ;;
1409 ++      blackfin-*)
1410 ++              basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
1411 ++              os=-linux
1412 ++              ;;
1413 +       c90)
1414 +               basic_machine=c90-cray
1415 +               os=-unicos
1416 +               ;;
1417 ++        cegcc)
1418 ++              basic_machine=arm-unknown
1419 ++              os=-cegcc
1420 ++              ;;
1421 +       convex-c1)
1422 +               basic_machine=c1-convex
1423 +               os=-bsd
1424 +@@ -477,8 +495,8 @@
1425 +               basic_machine=craynv-cray
1426 +               os=-unicosmp
1427 +               ;;
1428 +-      cr16c)
1429 +-              basic_machine=cr16c-unknown
1430 ++      cr16)
1431 ++              basic_machine=cr16-unknown
1432 +               os=-elf
1433 +               ;;
1434 +       crds | unos)
1435 +@@ -516,6 +534,10 @@
1436 +               basic_machine=m88k-motorola
1437 +               os=-sysv3
1438 +               ;;
1439 ++      dicos)
1440 ++              basic_machine=i686-pc
1441 ++              os=-dicos
1442 ++              ;;
1443 +       djgpp)
1444 +               basic_machine=i586-pc
1445 +               os=-msdosdjgpp
1446 +@@ -670,6 +692,14 @@
1447 +               basic_machine=m68k-isi
1448 +               os=-sysv
1449 +               ;;
1450 ++      m68knommu)
1451 ++              basic_machine=m68k-unknown
1452 ++              os=-linux
1453 ++              ;;
1454 ++      m68knommu-*)
1455 ++              basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
1456 ++              os=-linux
1457 ++              ;;
1458 +       m88k-omron*)
1459 +               basic_machine=m88k-omron
1460 +               ;;
1461 +@@ -685,6 +715,10 @@
1462 +               basic_machine=i386-pc
1463 +               os=-mingw32
1464 +               ;;
1465 ++      mingw32ce)
1466 ++              basic_machine=arm-unknown
1467 ++              os=-mingw32ce
1468 ++              ;;
1469 +       miniframe)
1470 +               basic_machine=m68000-convergent
1471 +               ;;
1472 +@@ -811,6 +845,14 @@
1473 +               basic_machine=i860-intel
1474 +               os=-osf
1475 +               ;;
1476 ++      parisc)
1477 ++              basic_machine=hppa-unknown
1478 ++              os=-linux
1479 ++              ;;
1480 ++      parisc-*)
1481 ++              basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
1482 ++              os=-linux
1483 ++              ;;
1484 +       pbd)
1485 +               basic_machine=sparc-tti
1486 +               ;;
1487 +@@ -1019,6 +1061,10 @@
1488 +               basic_machine=tic6x-unknown
1489 +               os=-coff
1490 +               ;;
1491 ++      tile*)
1492 ++              basic_machine=tile-unknown
1493 ++              os=-linux-gnu
1494 ++              ;;
1495 +       tx39)
1496 +               basic_machine=mipstx39-unknown
1497 +               ;;
1498 +@@ -1214,7 +1260,7 @@
1499 +             | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
1500 +             | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
1501 +             | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
1502 +-            | -chorusos* | -chorusrdb* \
1503 ++            | -chorusos* | -chorusrdb* | -cegcc* \
1504 +             | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
1505 +             | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
1506 +             | -uxpv* | -beos* | -mpeix* | -udk* \
1507 +@@ -1224,7 +1270,7 @@
1508 +             | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
1509 +             | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
1510 +             | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
1511 +-            | -skyos* | -haiku* | -rdos* | -toppers*)
1512 ++            | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -kopensolaris*-gnu*)
1513 +       # Remember, each alternative MUST END IN *, to match a version number.
1514 +               ;;
1515 +       -qnx*)
1516 +@@ -1354,6 +1400,9 @@
1517 +       -zvmoe)
1518 +               os=-zvmoe
1519 +               ;;
1520 ++      -dicos*)
1521 ++              os=-dicos
1522 ++              ;;
1523 +       -none)
1524 +               ;;
1525 +       *)
1526 +@@ -1419,6 +1468,9 @@
1527 +       m68*-cisco)
1528 +               os=-aout
1529 +               ;;
1530 ++        mep-*)
1531 ++              os=-elf
1532 ++              ;;
1533 +       mips*-cisco)
1534 +               os=-elf
1535 +               ;;
1536 +diff -uraN src.orig/libjava/classpath/configure src/libjava/classpath/configure
1537 +--- src.orig/libjava/classpath/configure       2008-10-03 03:02:46.382650000 -0400
1538 ++++ src/libjava/classpath/configure    2008-10-03 03:06:34.884145319 -0400
1539 +@@ -6917,7 +6917,7 @@
1540 +   ;;
1541
1542 + # This must be Linux ELF.
1543 +-linux* | k*bsd*-gnu)
1544 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
1545 +   lt_cv_deplibs_check_method=pass_all
1546 +   ;;
1547
1548 +@@ -7698,7 +7698,7 @@
1549 +   ;;
1550
1551 + x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
1552 +-s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
1553 ++s390*-*linux*|s390*-*tpf*|sparc*-*linux*|x86_64-*kopensolaris*-gnu)
1554 +   # Find out which ABI we are using.
1555 +   echo 'int i;' > conftest.$ac_ext
1556 +   if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
1557 +@@ -7712,7 +7712,7 @@
1558 +         x86_64-*kfreebsd*-gnu)
1559 +           LD="${LD-ld} -m elf_i386_fbsd"
1560 +           ;;
1561 +-        x86_64-*linux*)
1562 ++        x86_64-*linux*|x86_64-*kopensolaris*-gnu)
1563 +           LD="${LD-ld} -m elf_i386"
1564 +           ;;
1565 +         ppc64-*linux*|powerpc64-*linux*)
1566 +@@ -7731,7 +7731,7 @@
1567 +         x86_64-*kfreebsd*-gnu)
1568 +           LD="${LD-ld} -m elf_x86_64_fbsd"
1569 +           ;;
1570 +-        x86_64-*linux*)
1571 ++        x86_64-*linux*|x86_64-*kopensolaris*-gnu)
1572 +           LD="${LD-ld} -m elf_x86_64"
1573 +           ;;
1574 +         ppc*-*linux*|powerpc*-*linux*)
1575 +@@ -8460,7 +8460,7 @@
1576 +       lt_prog_compiler_static='-non_shared'
1577 +       ;;
1578
1579 +-    linux* | k*bsd*-gnu)
1580 ++    linux* | k*bsd*-gnu | kopensolaris*-gnu)
1581 +       case $cc_basename in
1582 +       icc* | ecc*)
1583 +       lt_prog_compiler_wl='-Wl,'
1584 +@@ -9001,7 +9001,7 @@
1585 +       archive_expsym_cmds='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
1586 +       ;;
1587
1588 +-    gnu* | linux* | tpf* | k*bsd*-gnu)
1589 ++    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
1590 +       tmp_diet=no
1591 +       if test "$host_os" = linux-dietlibc; then
1592 +       case $cc_basename in
1593 +@@ -10560,7 +10560,7 @@
1594 +   ;;
1595
1596 + # This must be Linux ELF.
1597 +-linux* | k*bsd*-gnu)
1598 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
1599 +   version_type=linux
1600 +   need_lib_prefix=no
1601 +   need_version=no
1602 +@@ -15067,7 +15067,7 @@
1603 +         inherit_rpath_CXX=yes
1604 +         ;;
1605
1606 +-      linux* | k*bsd*-gnu)
1607 ++      linux* | k*bsd*-gnu | kopensolaris*-gnu)
1608 +         case $cc_basename in
1609 +           KCC*)
1610 +           # Kuck and Associates, Inc. (KAI) C++ Compiler
1611 +@@ -15876,7 +15876,7 @@
1612 +           ;;
1613 +       esac
1614 +       ;;
1615 +-      linux* | k*bsd*-gnu)
1616 ++      linux* | k*bsd*-gnu | kopensolaris*-gnu)
1617 +       case $cc_basename in
1618 +         KCC*)
1619 +           # KAI C++ Compiler
1620 +@@ -16771,7 +16771,7 @@
1621 +   ;;
1622
1623 + # This must be Linux ELF.
1624 +-linux* | k*bsd*-gnu)
1625 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
1626 +   version_type=linux
1627 +   need_lib_prefix=no
1628 +   need_version=no
1629 +diff -uraN src.orig/libjava/classpath/ltcf-cxx.sh src/libjava/classpath/ltcf-cxx.sh
1630 +--- src.orig/libjava/classpath/ltcf-cxx.sh     2005-09-23 17:31:04.000000000 -0400
1631 ++++ src/libjava/classpath/ltcf-cxx.sh  2008-10-03 03:06:34.885228208 -0400
1632 +@@ -381,7 +381,7 @@
1633 +         ;;
1634 +     esac
1635 +     ;;
1636 +-  linux*)
1637 ++  linux* | kopensolaris*-gnu)
1638 +     case $cc_basename in
1639 +       KCC)
1640 +         # Kuck and Associates, Inc. (KAI) C++ Compiler
1641 +@@ -840,7 +840,7 @@
1642 +           ;;
1643 +       esac
1644 +       ;;
1645 +-    linux*)
1646 ++    linux* | kopensolaris*-gnu)
1647 +       case $cc_basename in
1648 +         KCC)
1649 +           # KAI C++ Compiler
1650 +diff -uraN src.orig/libjava/classpath/ltconfig src/libjava/classpath/ltconfig
1651 +--- src.orig/libjava/classpath/ltconfig        2007-06-03 19:18:43.000000000 -0400
1652 ++++ src/libjava/classpath/ltconfig     2008-10-03 03:06:34.886010081 -0400
1653 +@@ -1251,7 +1251,7 @@
1654 +   ;;
1655
1656 + # This must be Linux ELF.
1657 +-linux-gnu*)
1658 ++linux-gnu* | kopensolaris*-gnu*)
1659 +   version_type=linux
1660 +   need_lib_prefix=no
1661 +   need_version=no
1662 +diff -uraN src.orig/libjava/configure src/libjava/configure
1663 +--- src.orig/libjava/configure 2008-10-03 03:02:35.165530000 -0400
1664 ++++ src/libjava/configure      2008-10-03 03:07:29.123590515 -0400
1665 +@@ -5640,7 +5640,7 @@
1666 +   ;;
1667
1668 + # This must be Linux ELF.
1669 +-linux*|k*bsd*-gnu)
1670 ++linux*|k*bsd*-gnu | kopensolaris*-gnu)
1671 +   version_type=linux
1672 +   need_lib_prefix=no
1673 +   need_version=no
1674 +@@ -7296,7 +7296,7 @@
1675 +   ;;
1676
1677 + # This must be Linux ELF.
1678 +-linux* | k*bsd*-gnu)
1679 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
1680 +   lt_cv_deplibs_check_method=pass_all
1681 +   ;;
1682
1683 +@@ -8078,7 +8078,7 @@
1684 +   ;;
1685
1686 + x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
1687 +-s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
1688 ++s390*-*linux*|s390*-*tpf*|sparc*-*linux*|x86_64-*kopensolaris*-gnu)
1689 +   # Find out which ABI we are using.
1690 +   echo 'int i;' > conftest.$ac_ext
1691 +   if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
1692 +@@ -8092,7 +8092,7 @@
1693 +         x86_64-*kfreebsd*-gnu)
1694 +           LD="${LD-ld} -m elf_i386_fbsd"
1695 +           ;;
1696 +-        x86_64-*linux*)
1697 ++        x86_64-*linux*|x86_64-*kopensolaris*-gnu)
1698 +           LD="${LD-ld} -m elf_i386"
1699 +           ;;
1700 +         ppc64-*linux*|powerpc64-*linux*)
1701 +@@ -8111,7 +8111,7 @@
1702 +         x86_64-*kfreebsd*-gnu)
1703 +           LD="${LD-ld} -m elf_x86_64_fbsd"
1704 +           ;;
1705 +-        x86_64-*linux*)
1706 ++        x86_64-*linux*|x86_64-*kopensolaris*-gnu)
1707 +           LD="${LD-ld} -m elf_x86_64"
1708 +           ;;
1709 +         ppc*-*linux*|powerpc*-*linux*)
1710 +@@ -9911,7 +9911,7 @@
1711 +       lt_prog_compiler_static='-non_shared'
1712 +       ;;
1713
1714 +-    linux* | k*bsd*-gnu)
1715 ++    linux* | k*bsd*-gnu | kopensolaris*-gnu)
1716 +       case $cc_basename in
1717 +       icc* | ecc*)
1718 +       lt_prog_compiler_wl='-Wl,'
1719 +@@ -10452,7 +10452,7 @@
1720 +       archive_expsym_cmds='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
1721 +       ;;
1722
1723 +-    gnu* | linux* | tpf* | k*bsd*-gnu)
1724 ++    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
1725 +       tmp_diet=no
1726 +       if test "$host_os" = linux-dietlibc; then
1727 +       case $cc_basename in
1728 +@@ -12011,7 +12011,7 @@
1729 +   ;;
1730
1731 + # This must be Linux ELF.
1732 +-linux* | k*bsd*-gnu)
1733 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
1734 +   version_type=linux
1735 +   need_lib_prefix=no
1736 +   need_version=no
1737 +@@ -14182,7 +14182,7 @@
1738 +         inherit_rpath_CXX=yes
1739 +         ;;
1740
1741 +-      linux* | k*bsd*-gnu)
1742 ++      linux* | k*bsd*-gnu | kopensolaris*-gnu)
1743 +         case $cc_basename in
1744 +           KCC*)
1745 +           # Kuck and Associates, Inc. (KAI) C++ Compiler
1746 +@@ -14991,7 +14991,7 @@
1747 +           ;;
1748 +       esac
1749 +       ;;
1750 +-      linux* | k*bsd*-gnu)
1751 ++      linux* | k*bsd*-gnu | kopensolaris*-gnu)
1752 +       case $cc_basename in
1753 +         KCC*)
1754 +           # KAI C++ Compiler
1755 +@@ -15886,7 +15886,7 @@
1756 +   ;;
1757
1758 + # This must be Linux ELF.
1759 +-linux* | k*bsd*-gnu)
1760 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
1761 +   version_type=linux
1762 +   need_lib_prefix=no
1763 +   need_version=no
1764 +@@ -16873,7 +16873,7 @@
1765 +       lt_prog_compiler_static_GCJ='-non_shared'
1766 +       ;;
1767
1768 +-    linux* | k*bsd*-gnu)
1769 ++    linux* | k*bsd*-gnu | kopensolaris*-gnu)
1770 +       case $cc_basename in
1771 +       icc* | ecc*)
1772 +       lt_prog_compiler_wl_GCJ='-Wl,'
1773 +@@ -17399,7 +17399,7 @@
1774 +       archive_expsym_cmds_GCJ='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
1775 +       ;;
1776
1777 +-    gnu* | linux* | tpf* | k*bsd*-gnu)
1778 ++    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
1779 +       tmp_diet=no
1780 +       if test "$host_os" = linux-dietlibc; then
1781 +       case $cc_basename in
1782 +@@ -18804,7 +18804,7 @@
1783 +   ;;
1784
1785 + # This must be Linux ELF.
1786 +-linux* | k*bsd*-gnu)
1787 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
1788 +   version_type=linux
1789 +   need_lib_prefix=no
1790 +   need_version=no
1791 +@@ -19894,6 +19894,9 @@
1792 +         SYSTEMSPEC="-lunicows $SYSTEMSPEC"
1793 +       fi
1794 +     ;;
1795 ++    *kopensolaris*-gnu)
1796 ++      SYSTEMSPEC=-zexeclastload
1797 ++    ;;
1798 +     *)
1799 +       SYSTEMSPEC=
1800 +     ;;
1801 +diff -uraN src.orig/libjava/configure.ac src/libjava/configure.ac
1802 +--- src.orig/libjava/configure.ac      2008-10-03 03:02:31.601387000 -0400
1803 ++++ src/libjava/configure.ac   2008-10-03 03:07:23.331820970 -0400
1804 +@@ -770,6 +770,9 @@
1805 +         SYSTEMSPEC="-lunicows $SYSTEMSPEC"
1806 +       fi
1807 +     ;;
1808 ++    *kopensolaris*-gnu)
1809 ++      SYSTEMSPEC=-zexeclastload
1810 ++    ;;
1811 +     *)
1812 +       SYSTEMSPEC=
1813 +     ;;
1814 +diff -uraN src.orig/libjava/configure.host src/libjava/configure.host
1815 +--- src.orig/libjava/configure.host    2007-12-08 14:23:58.000000000 -0500
1816 ++++ src/libjava/configure.host 2008-10-03 03:06:34.893431392 -0400
1817 +@@ -365,7 +365,7 @@
1818 + esac
1819
1820 + case "${host}" in
1821 +-  *linux*|*-kfreebsd*-gnu|*-gnu*)
1822 ++  *linux*|*-kfreebsd*-gnu|*-kopensolaris*-gnu|*-gnu*)
1823 +     use_libgcj_bc=yes
1824 +   ;;
1825 +   *)
1826 +diff -uraN src.orig/libjava/libltdl/acinclude.m4 src/libjava/libltdl/acinclude.m4
1827 +--- src.orig/libjava/libltdl/acinclude.m4      2006-04-06 15:22:45.000000000 -0400
1828 ++++ src/libjava/libltdl/acinclude.m4   2008-10-03 03:06:34.895070681 -0400
1829 +@@ -519,14 +519,15 @@
1830 +   rm -rf conftest*
1831 +   ;;
1832
1833 +-x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*|s390*-*linux*|sparc*-*linux*)
1834 ++x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*|s390*-*linux*|sparc*-*linux*| \
1835 ++x86_64-*kopensolaris*-gnu)
1836 +   # Find out which ABI we are using.
1837 +   echo 'int i;' > conftest.$ac_ext
1838 +   if AC_TRY_EVAL(ac_compile); then
1839 +     case "`/usr/bin/file conftest.o`" in
1840 +     *32-bit*)
1841 +       case $host in
1842 +-        x86_64-*linux*)
1843 ++        x86_64-*linux*|x86_64-*kopensolaris*-gnu)
1844 +           LD="${LD-ld} -m elf_i386"
1845 +           ;;
1846 +         ppc64-*linux*|powerpc64-*linux*)
1847 +@@ -542,7 +543,7 @@
1848 +       ;;
1849 +     *64-bit*)
1850 +       case $host in
1851 +-        x86_64-*linux*)
1852 ++        x86_64-*linux*|x86_64-*kopensolaris*-gnu)
1853 +           LD="${LD-ld} -m elf_x86_64"
1854 +           ;;
1855 +         ppc*-*linux*|powerpc*-*linux*)
1856 +@@ -1494,7 +1495,7 @@
1857 +   ;;
1858
1859 + # This must be Linux ELF.
1860 +-linux*)
1861 ++linux* | kopensolaris*-gnu)
1862 +   version_type=linux
1863 +   need_lib_prefix=no
1864 +   need_version=no
1865 +@@ -2277,7 +2278,7 @@
1866 +   ;;
1867
1868 + # This must be Linux ELF.
1869 +-linux*)
1870 ++linux* | kopensolaris*-gnu)
1871 +   lt_cv_deplibs_check_method=pass_all
1872 +   ;;
1873
1874 +@@ -3051,7 +3052,7 @@
1875 +     # conventions
1876 +     _LT_AC_TAGVAR(ld_shlibs, $1)=yes
1877 +     ;;
1878 +-  gnu*)
1879 ++  gnu* | kopensolaris*-gnu)
1880 +     ;;
1881 +   hpux9*)
1882 +     _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
1883 +@@ -5071,7 +5072,7 @@
1884 +       _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
1885 +       ;;
1886
1887 +-    linux*)
1888 ++    linux* | kopensolaris*-gnu)
1889 +       case $cc_basename in
1890 +       icc* | ecc*)
1891 +       _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
1892 +@@ -5352,7 +5353,7 @@
1893 +       fi
1894 +       ;;
1895
1896 +-    linux*)
1897 ++    linux* | kopensolaris*-gnu)
1898 +       if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
1899 +       tmp_addflag=
1900 +       case $cc_basename,$host_cpu in
1901 +@@ -6307,7 +6308,7 @@
1902 +     # If you are looking for one http://www.opendarwin.org/projects/dlcompat
1903 +     libltdl_cv_sys_dlopen_deplibs=yes
1904 +     ;;
1905 +-  gnu* | linux* | kfreebsd*-gnu | knetbsd*-gnu)
1906 ++  gnu* | linux* | kfreebsd*-gnu | knetbsd*-gnu | kopensolaris*-gnu)
1907 +     # GNU and its variants, using gnu ld.so (Glibc)
1908 +     libltdl_cv_sys_dlopen_deplibs=yes
1909 +     ;;
1910 +diff -uraN src.orig/libjava/libltdl/configure src/libjava/libltdl/configure
1911 +--- src.orig/libjava/libltdl/configure 2007-01-17 14:48:52.000000000 -0500
1912 ++++ src/libjava/libltdl/configure      2008-10-03 03:06:34.900316115 -0400
1913 +@@ -3818,7 +3818,7 @@
1914 +   ;;
1915
1916 + # This must be Linux ELF.
1917 +-linux*)
1918 ++linux* | kopensolaris*-gnu)
1919 +   lt_cv_deplibs_check_method=pass_all
1920 +   ;;
1921
1922 +@@ -3971,7 +3971,7 @@
1923 +   rm -rf conftest*
1924 +   ;;
1925
1926 +-x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*|s390*-*linux*|sparc*-*linux*)
1927 ++x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*|s390*-*linux*|sparc*-*linux*|x86_64-*kopensolaris*-gnu)
1928 +   # Find out which ABI we are using.
1929 +   echo 'int i;' > conftest.$ac_ext
1930 +   if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
1931 +@@ -3982,7 +3982,7 @@
1932 +     case "`/usr/bin/file conftest.o`" in
1933 +     *32-bit*)
1934 +       case $host in
1935 +-        x86_64-*linux*)
1936 ++        x86_64-*linux*|x86_64-*kopensolaris*-gnu)
1937 +           LD="${LD-ld} -m elf_i386"
1938 +           ;;
1939 +         ppc64-*linux*|powerpc64-*linux*)
1940 +@@ -3998,7 +3998,7 @@
1941 +       ;;
1942 +     *64-bit*)
1943 +       case $host in
1944 +-        x86_64-*linux*)
1945 ++        x86_64-*linux*|x86_64-*kopensolaris*-gnu)
1946 +           LD="${LD-ld} -m elf_x86_64"
1947 +           ;;
1948 +         ppc*-*linux*|powerpc*-*linux*)
1949 +@@ -8550,7 +8550,7 @@
1950 +   ;;
1951
1952 + # This must be Linux ELF.
1953 +-linux*)
1954 ++linux* | kopensolaris*-gnu)
1955 +   version_type=linux
1956 +   need_lib_prefix=no
1957 +   need_version=no
1958 +@@ -12348,7 +12348,7 @@
1959 +   ;;
1960
1961 + # This must be Linux ELF.
1962 +-linux*)
1963 ++linux* | kopensolaris*-gnu)
1964 +   version_type=linux
1965 +   need_lib_prefix=no
1966 +   need_version=no
1967 +@@ -15629,7 +15629,7 @@
1968 +   ;;
1969
1970 + # This must be Linux ELF.
1971 +-linux*)
1972 ++linux* | kopensolaris*-gnu)
1973 +   version_type=linux
1974 +   need_lib_prefix=no
1975 +   need_version=no
1976 +@@ -18115,7 +18115,7 @@
1977 +   ;;
1978
1979 + # This must be Linux ELF.
1980 +-linux*)
1981 ++linux* | kopensolaris*-gnu)
1982 +   version_type=linux
1983 +   need_lib_prefix=no
1984 +   need_version=no
1985 +diff -uraN src.orig/libjava/shlibpath.m4 src/libjava/shlibpath.m4
1986 +--- src.orig/libjava/shlibpath.m4      2008-01-24 11:35:10.000000000 -0500
1987 ++++ src/libjava/shlibpath.m4   2008-10-03 03:06:34.901114616 -0400
1988 +@@ -361,7 +361,7 @@
1989 +   ;;
1990
1991 + # This must be Linux ELF.
1992 +-linux*|k*bsd*-gnu)
1993 ++linux*|k*bsd*-gnu|kopensolaris*-gnu)
1994 +   version_type=linux
1995 +   need_lib_prefix=no
1996 +   need_version=no
1997 +diff -uraN src.orig/libmudflap/configure src/libmudflap/configure
1998 +--- src.orig/libmudflap/configure      2008-01-24 11:30:08.000000000 -0500
1999 ++++ src/libmudflap/configure   2008-10-03 03:06:34.922282694 -0400
2000 +@@ -6199,7 +6199,7 @@
2001 +   ;;
2002
2003 + # This must be Linux ELF.
2004 +-linux* | k*bsd*-gnu)
2005 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
2006 +   lt_cv_deplibs_check_method=pass_all
2007 +   ;;
2008
2009 +@@ -6932,7 +6932,7 @@
2010 +   ;;
2011
2012 + x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
2013 +-s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
2014 ++s390*-*linux*|s390*-*tpf*|sparc*-*linux*|x86_64-*kopensolaris*-gnu)
2015 +   # Find out which ABI we are using.
2016 +   echo 'int i;' > conftest.$ac_ext
2017 +   if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
2018 +@@ -6946,7 +6946,7 @@
2019 +         x86_64-*kfreebsd*-gnu)
2020 +           LD="${LD-ld} -m elf_i386_fbsd"
2021 +           ;;
2022 +-        x86_64-*linux*)
2023 ++        x86_64-*linux*|x86_64-*kopensolaris*-gnu)
2024 +           LD="${LD-ld} -m elf_i386"
2025 +           ;;
2026 +         ppc64-*linux*|powerpc64-*linux*)
2027 +@@ -6965,7 +6965,7 @@
2028 +         x86_64-*kfreebsd*-gnu)
2029 +           LD="${LD-ld} -m elf_x86_64_fbsd"
2030 +           ;;
2031 +-        x86_64-*linux*)
2032 ++        x86_64-*linux*|x86_64-*kopensolaris*-gnu)
2033 +           LD="${LD-ld} -m elf_x86_64"
2034 +           ;;
2035 +         ppc*-*linux*|powerpc*-*linux*)
2036 +@@ -7695,7 +7695,7 @@
2037 +       lt_prog_compiler_static='-non_shared'
2038 +       ;;
2039
2040 +-    linux* | k*bsd*-gnu)
2041 ++    linux* | k*bsd*-gnu | kopensolaris*-gnu)
2042 +       case $cc_basename in
2043 +       icc* | ecc*)
2044 +       lt_prog_compiler_wl='-Wl,'
2045 +@@ -8236,7 +8236,7 @@
2046 +       archive_expsym_cmds='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
2047 +       ;;
2048
2049 +-    gnu* | linux* | tpf* | k*bsd*-gnu)
2050 ++    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
2051 +       tmp_diet=no
2052 +       if test "$host_os" = linux-dietlibc; then
2053 +       case $cc_basename in
2054 +@@ -9786,7 +9786,7 @@
2055 +   ;;
2056
2057 + # This must be Linux ELF.
2058 +-linux* | k*bsd*-gnu)
2059 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
2060 +   version_type=linux
2061 +   need_lib_prefix=no
2062 +   need_version=no
2063 +diff -uraN src.orig/libobjc/configure src/libobjc/configure
2064 +--- src.orig/libobjc/configure 2008-10-03 03:02:07.620165000 -0400
2065 ++++ src/libobjc/configure      2008-10-03 03:06:34.930973794 -0400
2066 +@@ -5123,7 +5123,7 @@
2067 +   ;;
2068
2069 + # This must be Linux ELF.
2070 +-linux* | k*bsd*-gnu)
2071 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
2072 +   lt_cv_deplibs_check_method=pass_all
2073 +   ;;
2074
2075 +@@ -5905,7 +5905,7 @@
2076 +   ;;
2077
2078 + x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
2079 +-s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
2080 ++s390*-*linux*|s390*-*tpf*|sparc*-*linux*|x86_64-*kopensolaris*-gnu)
2081 +   # Find out which ABI we are using.
2082 +   echo 'int i;' > conftest.$ac_ext
2083 +   if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
2084 +@@ -5919,7 +5919,7 @@
2085 +         x86_64-*kfreebsd*-gnu)
2086 +           LD="${LD-ld} -m elf_i386_fbsd"
2087 +           ;;
2088 +-        x86_64-*linux*)
2089 ++        x86_64-*linux*|x86_64-*kopensolaris*-gnu)
2090 +           LD="${LD-ld} -m elf_i386"
2091 +           ;;
2092 +         ppc64-*linux*|powerpc64-*linux*)
2093 +@@ -5938,7 +5938,7 @@
2094 +         x86_64-*kfreebsd*-gnu)
2095 +           LD="${LD-ld} -m elf_x86_64_fbsd"
2096 +           ;;
2097 +-        x86_64-*linux*)
2098 ++        x86_64-*linux*|x86_64-*kopensolaris*-gnu)
2099 +           LD="${LD-ld} -m elf_x86_64"
2100 +           ;;
2101 +         ppc*-*linux*|powerpc*-*linux*)
2102 +@@ -7141,7 +7141,7 @@
2103 +       lt_prog_compiler_static='-non_shared'
2104 +       ;;
2105
2106 +-    linux* | k*bsd*-gnu)
2107 ++    linux* | k*bsd*-gnu | kopensolaris*-gnu)
2108 +       case $cc_basename in
2109 +       icc* | ecc*)
2110 +       lt_prog_compiler_wl='-Wl,'
2111 +@@ -7682,7 +7682,7 @@
2112 +       archive_expsym_cmds='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
2113 +       ;;
2114
2115 +-    gnu* | linux* | tpf* | k*bsd*-gnu)
2116 ++    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
2117 +       tmp_diet=no
2118 +       if test "$host_os" = linux-dietlibc; then
2119 +       case $cc_basename in
2120 +@@ -9241,7 +9241,7 @@
2121 +   ;;
2122
2123 + # This must be Linux ELF.
2124 +-linux* | k*bsd*-gnu)
2125 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
2126 +   version_type=linux
2127 +   need_lib_prefix=no
2128 +   need_version=no
2129 +diff -uraN src.orig/libssp/configure src/libssp/configure
2130 +--- src.orig/libssp/configure  2008-01-24 11:33:29.000000000 -0500
2131 ++++ src/libssp/configure       2008-10-03 03:06:34.933328221 -0400
2132 +@@ -5176,7 +5176,7 @@
2133 +   ;;
2134
2135 + # This must be Linux ELF.
2136 +-linux* | k*bsd*-gnu)
2137 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
2138 +   lt_cv_deplibs_check_method=pass_all
2139 +   ;;
2140
2141 +@@ -5909,7 +5909,7 @@
2142 +   ;;
2143
2144 + x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
2145 +-s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
2146 ++s390*-*linux*|s390*-*tpf*|sparc*-*linux*|x86_64-*kopensolaris*-gnu)
2147 +   # Find out which ABI we are using.
2148 +   echo 'int i;' > conftest.$ac_ext
2149 +   if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
2150 +@@ -5923,7 +5923,7 @@
2151 +         x86_64-*kfreebsd*-gnu)
2152 +           LD="${LD-ld} -m elf_i386_fbsd"
2153 +           ;;
2154 +-        x86_64-*linux*)
2155 ++        x86_64-*linux*|x86_64-*kopensolaris*-gnu)
2156 +           LD="${LD-ld} -m elf_i386"
2157 +           ;;
2158 +         ppc64-*linux*|powerpc64-*linux*)
2159 +@@ -5942,7 +5942,7 @@
2160 +         x86_64-*kfreebsd*-gnu)
2161 +           LD="${LD-ld} -m elf_x86_64_fbsd"
2162 +           ;;
2163 +-        x86_64-*linux*)
2164 ++        x86_64-*linux*|x86_64-*kopensolaris*-gnu)
2165 +           LD="${LD-ld} -m elf_x86_64"
2166 +           ;;
2167 +         ppc*-*linux*|powerpc*-*linux*)
2168 +@@ -6677,7 +6677,7 @@
2169 +       lt_prog_compiler_static='-non_shared'
2170 +       ;;
2171
2172 +-    linux* | k*bsd*-gnu)
2173 ++    linux* | k*bsd*-gnu | kopensolaris*-gnu)
2174 +       case $cc_basename in
2175 +       icc* | ecc*)
2176 +       lt_prog_compiler_wl='-Wl,'
2177 +@@ -7218,7 +7218,7 @@
2178 +       archive_expsym_cmds='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
2179 +       ;;
2180
2181 +-    gnu* | linux* | tpf* | k*bsd*-gnu)
2182 ++    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
2183 +       tmp_diet=no
2184 +       if test "$host_os" = linux-dietlibc; then
2185 +       case $cc_basename in
2186 +@@ -8783,7 +8783,7 @@
2187 +   ;;
2188
2189 + # This must be Linux ELF.
2190 +-linux* | k*bsd*-gnu)
2191 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
2192 +   version_type=linux
2193 +   need_lib_prefix=no
2194 +   need_version=no
2195 +diff -uraN src.orig/libstdc++-v3/acinclude.m4 src/libstdc++-v3/acinclude.m4
2196 +--- src.orig/libstdc++-v3/acinclude.m4 2008-04-25 12:52:57.000000000 -0400
2197 ++++ src/libstdc++-v3/acinclude.m4      2008-10-03 03:06:34.939478422 -0400
2198 +@@ -1370,7 +1370,7 @@
2199 +   # Default to "generic".
2200 +   if test $enable_clocale_flag = auto; then
2201 +     case ${target_os} in
2202 +-      linux* | gnu* | kfreebsd*-gnu | knetbsd*-gnu)
2203 ++      linux* | gnu* | kfreebsd*-gnu | knetbsd*-gnu | kopensolaris*-gnu)
2204 +         enable_clocale_flag=gnu       
2205 +         ;;
2206 +       darwin* | freebsd*)
2207 +@@ -1603,7 +1603,7 @@
2208 +   # Default to "new".
2209 +   if test $enable_libstdcxx_allocator_flag = auto; then
2210 +     case ${target_os} in
2211 +-      linux* | gnu* | kfreebsd*-gnu | knetbsd*-gnu)
2212 ++      linux* | gnu* | kfreebsd*-gnu | knetbsd*-gnu | kopensolaris*-gnu)
2213 +         enable_libstdcxx_allocator_flag=new
2214 +         ;;
2215 +       *)
2216 +diff -uraN src.orig/libstdc++-v3/configure src/libstdc++-v3/configure
2217 +--- src.orig/libstdc++-v3/configure    2008-10-03 03:02:05.621397000 -0400
2218 ++++ src/libstdc++-v3/configure 2008-10-03 03:06:35.032205107 -0400
2219 +@@ -5000,7 +5000,7 @@
2220 +   ;;
2221
2222 + # This must be Linux ELF.
2223 +-linux* | k*bsd*-gnu)
2224 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
2225 +   lt_cv_deplibs_check_method=pass_all
2226 +   ;;
2227
2228 +@@ -5733,7 +5733,7 @@
2229 +   ;;
2230
2231 + x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
2232 +-s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
2233 ++s390*-*linux*|s390*-*tpf*|sparc*-*linux*|x86_64-*kopensolaris*-gnu)
2234 +   # Find out which ABI we are using.
2235 +   echo 'int i;' > conftest.$ac_ext
2236 +   if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
2237 +@@ -5747,7 +5747,7 @@
2238 +         x86_64-*kfreebsd*-gnu)
2239 +           LD="${LD-ld} -m elf_i386_fbsd"
2240 +           ;;
2241 +-        x86_64-*linux*)
2242 ++        x86_64-*linux*|x86_64-*kopensolaris*-gnu)
2243 +           LD="${LD-ld} -m elf_i386"
2244 +           ;;
2245 +         ppc64-*linux*|powerpc64-*linux*)
2246 +@@ -5766,7 +5766,7 @@
2247 +         x86_64-*kfreebsd*-gnu)
2248 +           LD="${LD-ld} -m elf_x86_64_fbsd"
2249 +           ;;
2250 +-        x86_64-*linux*)
2251 ++        x86_64-*linux*|x86_64-*kopensolaris*-gnu)
2252 +           LD="${LD-ld} -m elf_x86_64"
2253 +           ;;
2254 +         ppc*-*linux*|powerpc*-*linux*)
2255 +@@ -7331,7 +7331,7 @@
2256 +       lt_prog_compiler_static='-non_shared'
2257 +       ;;
2258
2259 +-    linux* | k*bsd*-gnu)
2260 ++    linux* | k*bsd*-gnu | kopensolaris*-gnu)
2261 +       case $cc_basename in
2262 +       icc* | ecc*)
2263 +       lt_prog_compiler_wl='-Wl,'
2264 +@@ -7872,7 +7872,7 @@
2265 +       archive_expsym_cmds='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
2266 +       ;;
2267
2268 +-    gnu* | linux* | tpf* | k*bsd*-gnu)
2269 ++    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
2270 +       tmp_diet=no
2271 +       if test "$host_os" = linux-dietlibc; then
2272 +       case $cc_basename in
2273 +@@ -9437,7 +9437,7 @@
2274 +   ;;
2275
2276 + # This must be Linux ELF.
2277 +-linux* | k*bsd*-gnu)
2278 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
2279 +   version_type=linux
2280 +   need_lib_prefix=no
2281 +   need_version=no
2282 +@@ -11647,7 +11647,7 @@
2283 +         inherit_rpath_CXX=yes
2284 +         ;;
2285
2286 +-      linux* | k*bsd*-gnu)
2287 ++      linux* | k*bsd*-gnu | kopensolaris*-gnu)
2288 +         case $cc_basename in
2289 +           KCC*)
2290 +           # Kuck and Associates, Inc. (KAI) C++ Compiler
2291 +@@ -12456,7 +12456,7 @@
2292 +           ;;
2293 +       esac
2294 +       ;;
2295 +-      linux* | k*bsd*-gnu)
2296 ++      linux* | k*bsd*-gnu | kopensolaris*-gnu)
2297 +       case $cc_basename in
2298 +         KCC*)
2299 +           # KAI C++ Compiler
2300 +@@ -13351,7 +13351,7 @@
2301 +   ;;
2302
2303 + # This must be Linux ELF.
2304 +-linux* | k*bsd*-gnu)
2305 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
2306 +   version_type=linux
2307 +   need_lib_prefix=no
2308 +   need_version=no
2309 +diff -uraN src.orig/libstdc++-v3/configure.host src/libstdc++-v3/configure.host
2310 +--- src.orig/libstdc++-v3/configure.host       2007-12-15 16:33:45.000000000 -0500
2311 ++++ src/libstdc++-v3/configure.host    2008-10-03 03:06:35.043560387 -0400
2312 +@@ -233,7 +233,7 @@
2313 +   freebsd*)
2314 +     os_include_dir="os/bsd/freebsd"
2315 +     ;;
2316 +-  gnu* | linux* | kfreebsd*-gnu | knetbsd*-gnu)
2317 ++  gnu* | linux* | kfreebsd*-gnu | knetbsd*-gnu | kopensolaris*-gnu)
2318 +     if [ "$uclibc" = "yes" ]; then
2319 +       os_include_dir="os/uclibc"
2320 +     else
2321 +diff -uraN src.orig/libstdc++-v3/crossconfig.m4 src/libstdc++-v3/crossconfig.m4
2322 +--- src.orig/libstdc++-v3/crossconfig.m4       2008-01-14 19:15:43.000000000 -0500
2323 ++++ src/libstdc++-v3/crossconfig.m4    2008-10-03 03:06:35.049066668 -0400
2324 +@@ -193,7 +193,8 @@
2325 +       ;;
2326 +     esac
2327 +     ;;
2328 +-  *-linux* | *-uclinux* | *-gnu* | *-kfreebsd*-gnu | *-knetbsd*-gnu)
2329 ++  *-linux* | *-uclinux* | *-gnu* | *-kfreebsd*-gnu | *-knetbsd*-gnu | \
2330 ++  *-kopensolaris*-gnu)
2331 +     AC_CHECK_HEADERS([nan.h ieeefp.h endian.h sys/isa_defs.h \
2332 +       machine/endian.h machine/param.h sys/machine.h sys/types.h \
2333 +       fp.h float.h endian.h inttypes.h locale.h float.h stdint.h \
2334 +diff -uraN src.orig/libtool.m4 src/libtool.m4
2335 +--- src.orig/libtool.m4        2008-02-15 22:57:53.000000000 -0500
2336 ++++ src/libtool.m4     2008-10-03 03:06:35.050677584 -0400
2337 +@@ -1133,7 +1133,7 @@
2338 +   ;;
2339
2340 + x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
2341 +-s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
2342 ++s390*-*linux*|s390*-*tpf*|sparc*-*linux*|x86_64-*kopensolaris*-gnu)
2343 +   # Find out which ABI we are using.
2344 +   echo 'int i;' > conftest.$ac_ext
2345 +   if AC_TRY_EVAL(ac_compile); then
2346 +@@ -1143,7 +1143,7 @@
2347 +         x86_64-*kfreebsd*-gnu)
2348 +           LD="${LD-ld} -m elf_i386_fbsd"
2349 +           ;;
2350 +-        x86_64-*linux*)
2351 ++        x86_64-*linux*|x86_64-*kopensolaris*-gnu)
2352 +           LD="${LD-ld} -m elf_i386"
2353 +           ;;
2354 +         ppc64-*linux*|powerpc64-*linux*)
2355 +@@ -1162,7 +1162,7 @@
2356 +         x86_64-*kfreebsd*-gnu)
2357 +           LD="${LD-ld} -m elf_x86_64_fbsd"
2358 +           ;;
2359 +-        x86_64-*linux*)
2360 ++        x86_64-*linux*|x86_64-*kopensolaris*-gnu)
2361 +           LD="${LD-ld} -m elf_x86_64"
2362 +           ;;
2363 +         ppc*-*linux*|powerpc*-*linux*)
2364 +@@ -2312,7 +2312,7 @@
2365 +   ;;
2366
2367 + # This must be Linux ELF.
2368 +-linux* | k*bsd*-gnu)
2369 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
2370 +   version_type=linux
2371 +   need_lib_prefix=no
2372 +   need_version=no
2373 +@@ -2925,7 +2925,7 @@
2374 +   ;;
2375
2376 + # This must be Linux ELF.
2377 +-linux* | k*bsd*-gnu)
2378 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
2379 +   lt_cv_deplibs_check_method=pass_all
2380 +   ;;
2381
2382 +@@ -3545,7 +3545,7 @@
2383 +           ;;
2384 +       esac
2385 +       ;;
2386 +-      linux* | k*bsd*-gnu)
2387 ++      linux* | k*bsd*-gnu | kopensolaris*-gnu)
2388 +       case $cc_basename in
2389 +         KCC*)
2390 +           # KAI C++ Compiler
2391 +@@ -3819,7 +3819,7 @@
2392 +       _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
2393 +       ;;
2394
2395 +-    linux* | k*bsd*-gnu)
2396 ++    linux* | k*bsd*-gnu | kopensolaris*-gnu)
2397 +       case $cc_basename in
2398 +       icc* | ecc*)
2399 +       _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
2400 +@@ -4178,7 +4178,7 @@
2401 +       _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
2402 +       ;;
2403
2404 +-    gnu* | linux* | tpf* | k*bsd*-gnu)
2405 ++    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
2406 +       tmp_diet=no
2407 +       if test "$host_os" = linux-dietlibc; then
2408 +       case $cc_basename in
2409 +@@ -5755,7 +5755,7 @@
2410 +         _LT_TAGVAR(inherit_rpath, $1)=yes
2411 +         ;;
2412
2413 +-      linux* | k*bsd*-gnu)
2414 ++      linux* | k*bsd*-gnu | kopensolaris*-gnu)
2415 +         case $cc_basename in
2416 +           KCC*)
2417 +           # Kuck and Associates, Inc. (KAI) C++ Compiler
2418 +diff -uraN src.orig/zlib/configure src/zlib/configure
2419 +--- src.orig/zlib/configure    2008-01-24 11:27:14.000000000 -0500
2420 ++++ src/zlib/configure 2008-10-03 03:06:35.079368192 -0400
2421 +@@ -4140,7 +4140,7 @@
2422 +   ;;
2423
2424 + # This must be Linux ELF.
2425 +-linux* | k*bsd*-gnu)
2426 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
2427 +   lt_cv_deplibs_check_method=pass_all
2428 +   ;;
2429
2430 +@@ -4874,7 +4874,7 @@
2431 +   ;;
2432
2433 + x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
2434 +-s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
2435 ++s390*-*linux*|s390*-*tpf*|sparc*-*linux*|x86_64-*kopensolaris*-gnu)
2436 +   # Find out which ABI we are using.
2437 +   echo 'int i;' > conftest.$ac_ext
2438 +   if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
2439 +@@ -4888,7 +4888,7 @@
2440 +         x86_64-*kfreebsd*-gnu)
2441 +           LD="${LD-ld} -m elf_i386_fbsd"
2442 +           ;;
2443 +-        x86_64-*linux*)
2444 ++        x86_64-*linux*|x86_64-*kopensolaris*-gnu)
2445 +           LD="${LD-ld} -m elf_i386"
2446 +           ;;
2447 +         ppc64-*linux*|powerpc64-*linux*)
2448 +@@ -4907,7 +4907,7 @@
2449 +         x86_64-*kfreebsd*-gnu)
2450 +           LD="${LD-ld} -m elf_x86_64_fbsd"
2451 +           ;;
2452 +-        x86_64-*linux*)
2453 ++        x86_64-*linux*|x86_64-*kopensolaris*-gnu)
2454 +           LD="${LD-ld} -m elf_x86_64"
2455 +           ;;
2456 +         ppc*-*linux*|powerpc*-*linux*)
2457 +@@ -6115,7 +6115,7 @@
2458 +       lt_prog_compiler_static='-non_shared'
2459 +       ;;
2460
2461 +-    linux* | k*bsd*-gnu)
2462 ++    linux* | k*bsd*-gnu | kopensolaris*-gnu)
2463 +       case $cc_basename in
2464 +       icc* | ecc*)
2465 +       lt_prog_compiler_wl='-Wl,'
2466 +@@ -6656,7 +6656,7 @@
2467 +       archive_expsym_cmds='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
2468 +       ;;
2469
2470 +-    gnu* | linux* | tpf* | k*bsd*-gnu)
2471 ++    gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
2472 +       tmp_diet=no
2473 +       if test "$host_os" = linux-dietlibc; then
2474 +       case $cc_basename in
2475 +@@ -8221,7 +8221,7 @@
2476 +   ;;
2477
2478 + # This must be Linux ELF.
2479 +-linux* | k*bsd*-gnu)
2480 ++linux* | k*bsd*-gnu | kopensolaris*-gnu)
2481 +   version_type=linux
2482 +   need_lib_prefix=no
2483 +   need_version=no
2484 diff -uraN gcc-4.3-4.3.1.orig/debian/patches/series gcc-4.3-4.3.1/debian/patches/series
2485 --- gcc-4.3-4.3.1.orig/debian/patches/series    2008-10-03 08:40:55.000000000 -0400
2486 +++ gcc-4.3-4.3.1/debian/patches/series 2008-10-03 08:41:30.208777875 -0400
2487 @@ -61,3 +61,4 @@
2488  libjava-nobiarch-check.dpatch -p0
2489  config-ml.dpatch -p0
2490  gcc-multilib64dir.dpatch -p0
2491 +kopensolaris-gnu.dpatch -p1
2492 diff -uraN gcc-4.3-4.3.1.orig/debian/rules.defs gcc-4.3-4.3.1/debian/rules.defs
2493 --- gcc-4.3-4.3.1.orig/debian/rules.defs        2008-10-03 08:40:55.000000000 -0400
2494 +++ gcc-4.3-4.3.1/debian/rules.defs     2008-10-03 08:41:30.209227697 -0400
2495 @@ -390,7 +390,7 @@
2496  
2497  ifeq ($(with_java),yes)
2498    with_java_alsa := yes
2499 -  ifneq (,$(filter $(DEB_TARGET_GNU_SYSTEM), kfreebsd-gnu gnu))
2500 +  ifneq (,$(filter $(DEB_TARGET_GNU_SYSTEM), kfreebsd-gnu gnu kopensolaris-gnu))
2501      with_java_alsa := no
2502    endif
2503  endif
2504 @@ -989,7 +989,7 @@
2505    export TARGET64_MACHINE
2506  endif
2507  
2508 -biarch32_archs := /amd64/ppc64/kfreebsd-amd64/
2509 +biarch32_archs := /amd64/ppc64/kfreebsd-amd64/kopensolaris-amd64/
2510  ifneq (yes,$(call envfilt, biarch, , ,yes))
2511    biarch32_archs :=
2512  endif
2513 diff -uraN gcc-4.3-4.3.1.orig/debian/rules.patch gcc-4.3-4.3.1/debian/rules.patch
2514 --- gcc-4.3-4.3.1.orig/debian/rules.patch       2008-10-03 08:40:55.000000000 -0400
2515 +++ gcc-4.3-4.3.1/debian/rules.patch    2008-10-03 08:41:30.209560622 -0400
2516 @@ -179,6 +179,10 @@
2517    debian_patches += kbsd-gnu-ada
2518  endif
2519  
2520 +ifeq ($(DEB_TARGET_ARCH_OS),kopensolaris)
2521 +   debian_patches += kopensolaris-gnu
2522 +endif
2523 +
2524  ifeq ($(DEB_CROSS),yes)
2525    debian_patches += cross-include cross-fixes
2526  endif