Remove obsolete Solaris 8 support
Rainer Orth
ro@CeBiTec.Uni-Bielefeld.DE
Mon Mar 12 18:22:00 GMT 2012
Since even extended support for Solaris 8 ends by March 31st, this patch
removes Solaris 8 support from mainline. Given that extended support
for Solaris 9 lasts until October 2014, I guess that will remain in GCC
for at least one major release.
Again, I don't expect the patch to be controversial, but a few issues
bear mention:
* Although libgcc/config/sparc/sol2-unwind.h could be simplified quite a
bit, perhaps we could go further: I wonder if the remaining nframes = 2
case really applies to Solaris 9. If not, one could massivly simplify
this code.
* As in the IRIX case, I wonder if removing Solaris 8 support from libgo
is a good idea while it still is supported on the 4.7 branch.
* In libstdc++, all checks for the presence of overloads can be replaced
by hardcoded values. This also allows __CORRECT_ISO_CPP_MATH_H_PROTO2
to be removed and to drop the `1' in __CORRECT_ISO_CPP_MATH_H_PROTO1.
* I haven't yet checked if the Solaris references in
libstdc++-v3/config/io/basic_file_stdio.cc are correct or also apply
to newer versions. This can probably wait for a later time.
* libstdc++-v3/doc/xml/manual/internals.xml still has various references
to older Solaris versions. I haven't touched those.
Bootstrapped without regressions on {i386-pc, sparc-sun}-solaris2.{9, 10, 11}
(Solaris 9/SPARC still running). Ok for mainline if that passes (though
I guess I don't need approval for most of these changes)?
Thanks.
Rainer
2012-03-11 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
libstdc++-v3:
* config/os/solaris/solaris2.8: Rename to ...
* config/os/solaris/solaris2.9: ... this.
* config/abi/post/solaris2.8: Rename to ...
* config/abi/post/solaris2.9: ... this.
* configure.host (os_include_dir): Remove solaris2.8.
Reflect renaming.
(abi_baseline_pair): Remove *-*-solaris2.8.
Reflect renaming.
* configure.ac (GLIBCXX_CHECK_MATH_PROTO): Remove
(GLIBCXX_CHECK_STDLIB_PROTO): Remove.
* acinclude.m4 (GLIBCXX_CHECK_MATH_PROTO): Remove
(GLIBCXX_CHECK_STDLIB_PROTO): Remove.
(GLIBCXX_CHECK_GTHREADS): Remove Solaris 8 handling.
* crossconfig.m4 (GLIBCXX_CROSSCONFIG): Remove *-solaris2.8
handling.
* configure: Regenerate.
* config.h.in: Regenerate.
* config/os/solaris/solaris2.9/os_defines.h
(__CORRECT_ISO_CPP_MATH_H_PROTO): Define.
(__CORRECT_ISO_CPP_STDLIB_H_PROTO): Define.
* include/c_global/cmath: Rename __CORRECT_ISO_CPP_MATH_H_PROTO1
to __CORRECT_ISO_CPP_MATH_H_PROTO.
[!__CORRECT_ISO_CPP_MATH_H_PROTO2]: Remove.
* include/tr1/cmath: Rename __CORRECT_ISO_CPP_MATH_H_PROTO1 to
__CORRECT_ISO_CPP_MATH_H_PROTO.
* doc/xml/manual/configure.xml (Configure, --enable-libstdcxx-threads):
Remove Solaris 8 reference.
* testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
Don't xfail on *-*-solaris2.8.
* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
Likewise.
* testsuite/ext/enc_filebuf/char/13598.cc: Don't xfail on
*-*-solaris2.8.
libjava:
* configure.ac (THREADLIBS): Remove *-*-solaris2.8 handling.
* configure: Regenerate.
libgo:
* configure.ac (OSCFLAGS): Remove *-*-solaris2.8 handling.
(libgo_cv_lib_makecontext_stack_top): Remove
sparc*-*-solaris2.8* handling.
* configure: Regenerate.
libgcc:
* config/i386/sol2-unwind.h (x86_fallback_frame_state): Remove
Solaris 8 handling.
* config/sparc/sol2-unwind.h (sparc64_is_sighandler): Remove
Solaris 8 handling.
(sparc_is_sighandler): Likewise.
libcpp:
* lex.c: Remove Solaris 8 reference.
gcc/testsuite:
* g++.dg/warn/miss-format-1.C: Remove *-*-solaris2.8 handling.
* gcc.dg/c99-stdint-6.c: Likewise.
* gcc.dg/lto/20090210_0.c: Likewise.
* gcc.dg/pr28796-2.c: Don't skip on sparc*-sun-solaris2.8.
* gcc.dg/pragma-init-fini.c: Don't skip on i?86-*-solaris2.8.
* gcc.dg/pragma-init-fini-2.c: Likewise.
* gcc.dg/torture/pr47917.c: Remove *-*-solaris2.8 handling.
* gcc.target/i386/pr22076.c: Remove i?86-*-solaris2.8 handling.
* gcc.target/i386/pr22152.c: Likewise.
* gcc.target/i386/vect8-ret.c: Likewise.
* lib/target-supports.exp (add_options_for_tls): Remove Solaris 8
handling.
gcc:
* config.gcc (enable_obsolete): Remove *-*-solaris2.8*.
(*-*-solaris2.[0-8], *-*-solaris2.[0-8].*): Mark unsupported.
(i[34567]86-*-solaris2*, x86_64-*-solaris2.1[0-9]*): Remove
Solaris 8 support.
* configure.ac (gcc_cv_ld_hidden): Remove *-*-solaris2.8*.
(ld_tls_support): Remove Solaris 8 references.
(lwp_dir, lwp_spec): Remove support for alternate thread library.
* acinclude.m4 (gcc_cv_initfini_array): Remove *-*-solaris2.*
tests.
* configure: Regenerate.
* config.in: Regenerate.
* config/sol2.h (LINK_SPEC): Remove LIB_THREAD_LDFLAGS_SPEC.
* config/i386/sol2.h: Remove Solaris 8 references.
* doc/install.texi (Specific, i?86-*-solaris2.[89]): Rename to ...
(i?86-*-solaris2.9): ... this.
Remove Solaris 8 references.
(Specific, *-*-solaris2*): Document Solaris 8 removal.
Remove Solaris 8 references.
fixincludes:
* inclhack.def (math_exception): Remove duplicate.
(solaris_cond_init): Remove.
(solaris_sys_va_list): Remove Solaris 8 support.
* fixincl.x: Regenerate.
* tests/base/pthread.h [SOLARIS_COND_INIT_CHECK]: Remove.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: sol8-removal.patch
Type: text/x-patch
Size: 51979 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/libstdc++/attachments/20120312/ee6b47a9/attachment.bin>
-------------- next part --------------
--
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University
More information about the Libstdc++
mailing list