public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* Remove obsolete IRIX 6.5 support
@ 2012-03-12 17:04 Rainer Orth
  2012-03-12 17:16 ` Bruce Korb
                   ` (6 more replies)
  0 siblings, 7 replies; 10+ messages in thread
From: Rainer Orth @ 2012-03-12 17:04 UTC (permalink / raw)
  To: gcc-patches
  Cc: libstdc++,
	java-patches, Richard Sandiford, Bruce Korb, Arnaud Charlet,
	Joseph S. Myers, Ian Lance Taylor, Jason Merrill

[-- Attachment #1: Type: text/plain, Size: 22182 bytes --]

Continuing with the patches to remove obsolete ports, here's the IRIX
6.5 removal patch.

It should be mostly straightforward, with a few exceptions:

* The special-case handling of --with-stabs for mips targets in toplevel
  configure can go: IRIX is gone with this patch, and --with-stabs is
  only looked at in gcc/configure.ac resp. config.gcc, where the only
  target to check the stabs variable is again IRIX.

* There are fixincludes hacks that seem to be IRIX-specific, but cannot
  be guaranteed to be so.  As for the Tru64 UNIX removal, I'm keeping
  them for now:

        irix_limits_const
	irix_stdio_va_list
	struct_file
	struct_sockaddr

* gcc/configure.ac has this:

# If a non-executable a.out is present (e.g. created by GNU as above even if
# invoked with -v only), the IRIX 6 native ld just overwrites the existing
# file, even when creating an executable, so an execution test fails.
# Remove possible default executable files to avoid this.
#
# FIXME: This really belongs into AC_PROG_CC and can be removed once
# Autoconf includes it.
rm -f a.out a.exe b.out

  While labeled as IRIX-specific, it might just as well apply to other
  systems, thus I've kept it.

* There are two IRIX 6.5 nm workarounds in dwarf2out.c which I've kept
  as well.

* Also, with the removal of IRIX, DWARF_INITIAL_LENGTH_SIZE (and
  DWARF_OFFSET_SIZE) have no non-default values.  I'm removing both in a
  followup patch.

* s-traceb-mastop.adb is otherwise unused, but I leave it behind in case
  it is useful.

* s-tasinit.ads (Check_Abort_Status) is claimed to be IRIX-specific,
  too.  I couldn't fully figure out whether to leave it.

* With osf and irix gone, the dg-require-ascii-locale test is a no-op,
  but I think it's better to keep it.

* libgcc/crtstuff.c (HAS_INIT_SECTION) has a comment that refers to IRIX 6
  only, but seems more generally used.

* libjava/gnu/classpath/natSystemProperties.cc (getpwuid_adaptor) claims
  to be for IRIX, too, but I cannot tell for certain.

* libstdc++-v3/doc/xml/manual/internals.xml still uses IRIX as an
  example.  I've kept that part since I guess it's up the libstdc++
  maintainers to decide what to do about this.

* I'm removing IRIX-specific parts of libgo.  Given that libgo is
  imported from upstream (and supposed to work or made work on the 4.7
  branch), I don't know if this a good idea.

Bootstrapped on i386-pc-solaris2.11 for syntactic correctness, also
tested with an i386-solaris2.11 x mips-elf C-only cross to make sure cc1
still builds.

Ok for mainline?

	Rainer


2012-03-10  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	libstdc++-v3:
	* configure.host (irix6.5*): Remove.
	* config/os/irix: Remove.
	* config/io/basic_file_stdio.cc (__basic_file<char>::showmanyc())
	[_GLIBCXX_FIONREAD_TAKES_OFF_T]: Remove.

	* doc/xml/faq.xml: Remove IRIX reference.
	* doc/xml/manual/using.xml (Finding Dynamic or Shared Libraries):
	Remove IRIX example.

	* testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
	Remove mips-sgi-irix6* handling.
	* testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
	* testsuite/21_strings/basic_string/pthread18185.cc: Likewise.
	* testsuite/21_strings/basic_string/pthread4.cc: Likewise.
	* testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
	* testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
	* testsuite/23_containers/list/pthread1.cc: Likewise.
	* testsuite/23_containers/list/pthread5.cc: Likewise.
	* testsuite/23_containers/map/pthread6.cc: Likewise.
	* testsuite/23_containers/vector/debug/multithreaded_swap.cc: Likewise.
	* testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
	* testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
	* testsuite/30_threads/async/42819.cc: Likewise.
	* testsuite/30_threads/async/49668.cc: Likewise.
	* testsuite/30_threads/async/any.cc: Likewise.
	* testsuite/30_threads/async/async.cc: Likewise.
	* testsuite/30_threads/async/launch.cc: Likewise.
	* testsuite/30_threads/async/sync.cc: Likewise.
	* testsuite/30_threads/call_once/39909.cc: Likewise.
	* testsuite/30_threads/call_once/49668.cc: Likewise.
	* testsuite/30_threads/call_once/call_once1.cc: Likewise.
	* testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
	* testsuite/30_threads/condition_variable/members/1.cc: Likewise.
	* testsuite/30_threads/condition_variable/members/2.cc: Likewise.
	* testsuite/30_threads/condition_variable/native_handle/typesizes.cc:
	Likewise.
	* testsuite/30_threads/condition_variable_any/50862.cc: Likewise.
	* testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
	* testsuite/30_threads/condition_variable_any/members/1.cc: Likewise.
	* testsuite/30_threads/condition_variable_any/members/2.cc: Likewise.
	* testsuite/30_threads/future/cons/move.cc: Likewise.
	* testsuite/30_threads/future/members/45133.cc: Likewise.
	* testsuite/30_threads/future/members/get.cc: Likewise.
	* testsuite/30_threads/future/members/get2.cc: Likewise.
	* testsuite/30_threads/future/members/share.cc: Likewise.
	* testsuite/30_threads/future/members/valid.cc: Likewise.
	* testsuite/30_threads/future/members/wait.cc: Likewise.
	* testsuite/30_threads/future/members/wait_for.cc: Likewise.
	* testsuite/30_threads/future/members/wait_until.cc: Likewise.
	* testsuite/30_threads/lock/1.cc: Likewise.
	* testsuite/30_threads/lock/2.cc: Likewise.
	* testsuite/30_threads/lock/3.cc: Likewise.
	* testsuite/30_threads/lock/4.cc: Likewise.
	* testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
	* testsuite/30_threads/mutex/cons/1.cc: Likewise.
	* testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
	* testsuite/30_threads/mutex/lock/1.cc: Likewise.
	* testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
	* testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
	* testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
	* testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
	* testsuite/30_threads/mutex/unlock/1.cc: Likewise.
	* testsuite/30_threads/packaged_task/49668.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/move_assign.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/get_future.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/get_future2.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/reset.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
	* testsuite/30_threads/promise/cons/1.cc: Likewise.
	* testsuite/30_threads/promise/cons/alloc.cc: Likewise.
	* testsuite/30_threads/promise/cons/move.cc: Likewise.
	* testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
	* testsuite/30_threads/promise/members/get_future.cc: Likewise.
	* testsuite/30_threads/promise/members/get_future2.cc: Likewise.
	* testsuite/30_threads/promise/members/set_exception.cc: Likewise.
	* testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
	* testsuite/30_threads/promise/members/set_value.cc: Likewise.
	* testsuite/30_threads/promise/members/set_value2.cc: Likewise.
	* testsuite/30_threads/promise/members/set_value3.cc: Likewise.
	* testsuite/30_threads/promise/members/swap.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
	Likewise.
	* testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc:
	Likewise.
	* testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
	* testsuite/30_threads/shared_future/cons/move.cc: Likewise.
	* testsuite/30_threads/shared_future/members/45133.cc: Likewise.
	* testsuite/30_threads/shared_future/members/get.cc: Likewise.
	* testsuite/30_threads/shared_future/members/get2.cc: Likewise.
	* testsuite/30_threads/shared_future/members/valid.cc: Likewise.
	* testsuite/30_threads/shared_future/members/wait.cc: Likewise.
	* testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
	* testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
	* testsuite/30_threads/this_thread/1.cc: Likewise.
	* testsuite/30_threads/this_thread/2.cc: Likewise.
	* testsuite/30_threads/this_thread/3.cc: Likewise.
	* testsuite/30_threads/this_thread/4.cc: Likewise.
	* testsuite/30_threads/thread/cons/1.cc: Likewise.
	* testsuite/30_threads/thread/cons/2.cc: Likewise.
	* testsuite/30_threads/thread/cons/3.cc: Likewise.
	* testsuite/30_threads/thread/cons/4.cc: Likewise.
	* testsuite/30_threads/thread/cons/49668.cc: Likewise.
	* testsuite/30_threads/thread/cons/5.cc: Likewise.
	* testsuite/30_threads/thread/cons/6.cc: Likewise.
	* testsuite/30_threads/thread/cons/7.cc: Likewise.
	* testsuite/30_threads/thread/cons/8.cc: Likewise.
	* testsuite/30_threads/thread/cons/9.cc: Likewise.
	* testsuite/30_threads/thread/cons/moveable.cc: Likewise.
	* testsuite/30_threads/thread/members/1.cc: Likewise.
	* testsuite/30_threads/thread/members/2.cc: Likewise.
	* testsuite/30_threads/thread/members/3.cc: Likewise.
	* testsuite/30_threads/thread/members/4.cc: Likewise.
	* testsuite/30_threads/thread/members/5.cc: Likewise.
	* testsuite/30_threads/thread/members/hardware_concurrency.cc: Likewise.
	* testsuite/30_threads/thread/native_handle/typesizes.cc: Likewise.
	* testsuite/30_threads/thread/swap/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
	* testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/native_handle/typesizes.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
	* testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
	* testsuite/30_threads/try_lock/1.cc: Likewise.
	* testsuite/30_threads/try_lock/2.cc: Likewise.
	* testsuite/30_threads/try_lock/3.cc: Likewise.
	* testsuite/30_threads/try_lock/4.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
	* testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
	* testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
	* testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
	* testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
	* testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
	* testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
	* testsuite/ext/rope/pthread7-rope.cc: Likewise.
	* testsuite/tr1/2_general_utilities/shared_ptr/thread/default_weaktoshared.cc:
	Likewise.
	* testsuite/tr1/2_general_utilities/shared_ptr/thread/mutex_weaktoshared.cc:
	Likewise.

	* testsuite/23_containers/vector/capacity/resize/1.cc: Remove
	dg-options for mips*-*-irix6*.

	* testsuite/27_io/ios_base/storage/1.cc: Likewise.
	* testsuite/27_io/ios_base/storage/2.cc: Likewise.
	* testsuite/27_io/ios_base/storage/3.cc: Likewise.

	* testsuite/lib/libstdc++.exp (v3-build_support): Remove IRIX 6
	workaround.

	libjava:
	* configure.ac (libgcj_cv_exidx): Remove IRIX 6 ld workaround.
	(mips-sgi-irix6*): Remove.
	(mips-sgi-irix*): Remove.
	(AC_CHECK_HEADERS): Remove bstring.h.
	* configure: Regenerate.
	* include/config.h.in: Regenerate.
	* configure.host (mips-sgi-irix6*): Remove.

	* include/posix-signal.h [__sgi__]: Remove.

	* gnu/java/net/natPlainDatagramSocketImplPosix.cc
	[HAVE_BSTRING_H]: Remove.
	* gnu/java/net/natPlainDatagramSocketImplWin32.cc: Likewise.
	* gnu/java/net/natPlainSocketImplPosix.cc: Likewise.

	libitm:
	* configure.tgt (*-*-irix6*): Remove.

	libgomp:
	* configure.tgt (mips-sgi-irix6*): Remove.

	libgo:
	* configure.ac (is_irix): Remove.
	(mips-sgi-irix6.5*): Don't set OSCFLAGS.
	* configure: Regenerate.
	* Makefile.am [LIBGO_IS_IRIX]: Remove.
	* Makefile.in: Regenerate.
	* mksysinfo.sh [__sgi__]: Remove.
	(__timespec): Remove.

	* go/net/http/cgi/host.go (osDefaultInheritEnv): Remove irix
	handling.
	* go/syscall/socket_irix.go: Remove.
	* go/time/zoneinfo_unix.go (zoneDirs): Remove IRIX 6 support.

	libgfortran:
	* intrinsics/c99_functions.c [__sgi__ && !HAVE_COMPLEX_H]: Remove.

	libgcc:
	* config.host (mips-sgi-irix6.5*): Remove.
	* config/mips/irix-crti.S: Remove.
	* config/mips/irix-crtn.S: Remove.
	* config/mips/irix6-unwind.h: Remove.
	* config/mips/t-irix6: Remove.
	* config/mips/t-slibgcc-irix: Remove.

	gnattools:
	* configure.ac (mips-sgi-irix*): Remove.
	* configure: Regenerate.

	gcc/testsuite:
	* g++.dg/other/anon5.C: Don't skip on mips-sgi-irix*.
	* g++.dg/tree-prof/partition1.C: Likewise.
	* g++.dg/tree-prof/partition2.C: Likewise.
	* g++.old-deja/g++.other/init19.C: Remove mips-sgi-irix*
	handling.
	* gcc.c-torture/compile/labels-3.c: Remove dg-options.
	* gcc.c-torture/execute/20010724-1.c: Remove.
	* gcc.c-torture/execute/20010724-1.x: Remove.
	* gcc.c-torture/execute/20040208-2.c: Remove.
	* gcc.c-torture/execute/20040208-2.x: Remove.
	* gcc.c-torture/execute/ieee/20000320-1.c [__mips__ && __sgi__]:
	Remove.
	(main) [__mips__ && __sgi__]: Remove.
	* gcc.c-torture/execute/ieee/copysign1.c: Remove IRIX reference.
	* gcc.c-torture/execute/ieee/copysign2.c: Likewise.
	* gcc.c-torture/execute/ieee/mul-subnormal-single-1.x: Remove
	mips-sgi-irix6* handling.
	* gcc.dg/cpp/assert4.c [__mips__]: Remove __sgi__, sgi.
	* gcc.dg/torture/20090618-1.c: Don't skip on mips-sgi-irix*.
	* gcc.dg/torture/builtin-frexp-1.c: Remove mips*-*-irix6*
	handling.
	* gcc.dg/torture/builtin-logb-1.c: Likewise.
	* gcc.dg/torture/pr47917.c: Remove mips-sgi-irix6.5 handling.
	* gcc.dg/tree-ssa/ssa-store-ccp-3.c: Don't skip on mips*-*-irix*.
	* gcc.misc-tests/linkage.exp: Remove mips-sgi-irix6* handling.
	* gcc.target/mips/args-1.c [!__sgi__]: Remove.
	* gcc.target/mips/interrupt_handler-2.c: Don't skip on
	mips-sgi-irix6*.
	* gcc.target/mips/interrupt_handler-3.c: Likewise.
	* gcc.target/mips/save-restore-1.c: Don't skip on mips-sgi-irix6*.
	* gcc.target/mips/save-restore-3.c: Likewise.
	* gcc.target/mips/save-restore-4.c: Likewise.
	* gcc.target/mips/save-restore-5.c: Likewise.
	* gfortran.dg/g77/cabs.f: Don't xfail on mips-sgi-irix6*.
	* lib/prune.exp (prune_gcc_output): Remove pruning of IRIX 6 ld
	messages.
	* lib/target-libpath.exp (set_ld_library_path_env_vars): Remove
	IRIX 6 handling.
	(restore_ld_library_path_env_vars): Likewise.
	* lib/target-supports.exp (check_profiling_available): Remove
	mips*-*-irix* handling.
	(check_ascii_locale_available): Remove mips-sgi-irix* handling.
	(add_options_for_c99_runtime): Remove mips-sgi-irix6.5* handling.
	* objc.dg/stabs-1.m: Don't xfail on mips-sgi-irix6.5.

	gcc/ada:
	* gcc-interface/Makefile.in (mips-sgi-irix6*): Remove.

	* a-intnam-irix.ads, mlib-tgt-specific-irix.adb,
	s-intman-irix.adb, s-mastop-irix.adb, s-osinte-irix.adb,
	s-osinte-irix.ads, s-proinf-irix-athread.adb,
	s-proinf-irix-athread.ads, s-taprop-irix.adb, s-tasinf-irix.ads,
	system-irix-n32.ads, system-irix-n64.ads, system-irix-o32.ads:
	Remove.

	* adaint.c [__mips && __sgi]: Remove.
	(__gnat_number_of_cpus) [__mips && __sgi]: Remove.
	[IS_CROSS && !(__mips && __sgi)]: Remove.
	* adaint.h [sgi && _LFAPI]: Remove.
	* cstreams.c (__gnat_full_name) [sgi]: Remove.
	* env.c (__gnat_unsetenv) [__mips && __sgi]: Remove.
	(__gnat_clearenv) [__mips && __sgi]: Remove.
	* errno.c (_SGI_MP_SOURCE): Remove.
	* gsocket.h [sgi]: Remove.
	* init.c: Remove IRIX reference.
	[sgi]: Remove.
	* link.c [sgi]: Remove.
	* s-oscons-tmplt.c [__mips && __sgi] (IOV_MAX): Don't define.
	(main) [__mips && __sgi] (MAX_tv_sec): Don't define.
	(CLOCK_SGI_FAST, CLOCK_SGI_CYCLE): Remove.
	* sysdep.c [sgi]: Remove.
	(getc_immediate_common) [sgi]: Remove.
	(__gnat_localtime_tzoff) [sgi]: Remove.
	* terminals.c [__mips && __sgi] (IRIX): Don't define.
	[IRIX] (USE_GETPTY): Don't define.
	(allocate_pty_desc) [USE_GETPTY]: Remove.

	* g-traceb.ads: Remove IRIX reference.
	* g-trasym.ads: Likewise.
	* memtrack.adb: Likewise.
	* s-interr-sigaction.adb: Likewise.

	* gnat_rm.texi (Implementation Advice): Remove SGI info.
	(Implementation Defined Characteristics): Likewise.
	* gnat_ugn.texi (Summary of Run-Time Configurations, mips-irix):
	Remove.
	(Irix-Specific Considerations): Remove.

	gcc/cp:
	* Make-lang.in (doc/g++.1): Remove IRIX 6.5 reference.

	gcc:
	* config.gcc (enable_obsolete): Remove mips-sgi-irix6.5.
	(mips-sgi-irix6.5*): Remove.
	* config.host (mips-sgi-irix*): Remove.
	* configure.ac (enable_fixed_point): Remove mips*-sgi-irix*.
	(set_have_as_tls): Remove *-*-irix6*.
	(gcc_cv_ld_static_dynamic): Remove mips-sgi-irix6*.
	* configure: Regenerate.

	* config/mips/iris6.h: Remove.
	* config/mips/iris6.opt: Remove.
	* config/mips/t-irix6: Remove.

	* config/mips/mips.h (TARGET_GPWORD): Remove IRIX 6 N64 handling.
	(TARGET_IRIX6): Remove.
	(TARGET_CPU_CPP_BUILTINS): Remove IRIX 6 handling.
	Don't define LANGUAGE_C, _LANGUAGE_C for Objective-C.
	* config/mips/mips.c (mips_build_builtin_va_list): Remove IRIX 6
	handling.
	(mips_file_start): Likewise.
	* config/mips/mips-protos.h (irix_asm_output_align): Remove.

	* config/mips/driver-native.c [__sgi__]: Remove.
	(host_detect_local_cpu) [__sgi__]: Remove.

	* config/mips/gnu-user.h: Remove iris5.h reference.

	* config/mips/mips-modes.def: Remove IRIX 6 reference.
	* config/mips/gnu-user64.h (MIPS_TFMODE_FORMAT): Remove.
	* config/mips/mips.c (mips_option_override) [MIPS_TFMODE_FORMAT]:
	Remove.

	* gcc.c (main): Move asm_debug initialization ...
	(asm_debug): ... here.

	* ginclude/stddef.h (__STDDEF_H__): Don't define.

	* defaults.h (LINK_ELIMINATE_DUPLICATE_LDIRECTORIES): Remove.
	* system.h (LINK_ELIMINATE_DUPLICATE_LDIRECTORIES): Poison.
	* collect2.c [LINK_ELIMINATE_DUPLICATE_LDIRECTORIES]: Remove.
	(main) [LINK_ELIMINATE_DUPLICATE_LDIRECTORIES]: Remove.
	[LINK_ELIMINATE_DUPLICATE_LDIRECTORIES] (is_in_args): Remove.
	* doc/tm.texi.in (Driver, LINK_ELIMINATE_DUPLICATE_LDIRECTORIES):
	Remove.
	* doc/tm.texi: Regenerate.

	* doc/invoke.texi (Debugging Options, -gdwarf-<version>): Remove
	IRIX 6 reference.
	(MIPS Options, -march): Remove IRIX reference.
	* doc/install.texi (Binaries, SGI IRIX): Remove.
	(Specific, mips-sgi-irix6): Document IRIX 6.5 removal, remove rest
	of section.
	* doc/trouble.texi (Interoperation): Remove -lgl_s handling.

	fixincludes:
	* inclhack.def (broken_cabs): Remove IRIX and SunOS 4 support.
	(irix___restrict): Remove.
	(irix___generic1): Remove.
	(irix___generic2): Remove.
	(irix_asm_apostrophe): Remove.
	(irix_complex): Remove.
	(irix_pthread_init): Remove.
	(irix_socklen_t): Remove.
	(irix_stdint_c99_mode): Remove.
	(irix_stdint_c99_types): Remove.
	(irix_stdint_c99_macros): Remove.
	(irix_stdio_va_list): Remove IRIX 6.5 support.
	(irix_wcsftime): Remove.
	(stdio_va_list): Remove IRIX 6.5 support.
	(svr4_profil): Remove IRIX bypass.
	* fixincl.x: Regenerate.

	* tests/base/complex.h [IRIX_COMPLEX_CHECK]: Remove.
	* tests/base/internal/math_core.h: Remove.
	* tests/base/internal/sgimacros.h: Remove.
	* tests/base/internal/wchar_core.h: Remove.
	* tests/base/math.h [BROKEN_CABS_CHECK]: Remove IRIX and SunOS 4
	support.
	* tests/base/pthread.h [IRIX_PTHREAD_INIT_CHECK]: Remove.
	* tests/base/stdint-irix65.h: Remove.
	* tests/base/stdint.h [IRIX_STDINT_C99_MODE_CHECK]: Remove.
	* tests/base/sys/asm.h: Remove.
	* tests/base/sys/socket.h [IRIX_SOCKLEN_T_CHECK]: Remove.

	contrib:
	* config-list.mk (LIST): Remove mips-sgi-irix6.5.

	toplevel:
	* MAINTAINERS (OS Port Maintainers): Remove irix.
	* configure.ac (enable_libgomp): Remove *-*-irix6*.
	(unsupported_languages): Remove mips-sgi-irix6.*.
	(noconfigdirs): Don't add ${libgcj} for mips*-*-irix6*.
	(with_stabs): Remove.
	* configure: Regenerate.


[-- Attachment #2: irix65-removal.patch.bz2 --]
[-- Type: application/octet-stream, Size: 65075 bytes --]

[-- Attachment #3: Type: text/plain, Size: 144 bytes --]



-- 
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Remove obsolete IRIX 6.5 support
  2012-03-12 17:04 Remove obsolete IRIX 6.5 support Rainer Orth
@ 2012-03-12 17:16 ` Bruce Korb
  2012-03-12 17:37 ` Joseph S. Myers
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 10+ messages in thread
From: Bruce Korb @ 2012-03-12 17:16 UTC (permalink / raw)
  To: Rainer Orth; +Cc: gcc-patches

On Mon, Mar 12, 2012 at 10:03 AM, Rainer Orth
<ro@cebitec.uni-bielefeld.de> wrote:

I'm happy with the stuff going away!  :)

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Remove obsolete IRIX 6.5 support
  2012-03-12 17:04 Remove obsolete IRIX 6.5 support Rainer Orth
  2012-03-12 17:16 ` Bruce Korb
@ 2012-03-12 17:37 ` Joseph S. Myers
  2012-03-12 18:22 ` Ian Lance Taylor
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 10+ messages in thread
From: Joseph S. Myers @ 2012-03-12 17:37 UTC (permalink / raw)
  To: Rainer Orth
  Cc: gcc-patches, libstdc++,
	java-patches, Richard Sandiford, Bruce Korb, Arnaud Charlet,
	Ian Lance Taylor, Jason Merrill

On Mon, 12 Mar 2012, Rainer Orth wrote:

> 	* config/mips/mips-modes.def: Remove IRIX 6 reference.
> 	* config/mips/gnu-user64.h (MIPS_TFMODE_FORMAT): Remove.
> 	* config/mips/mips.c (mips_option_override) [MIPS_TFMODE_FORMAT]:
> 	Remove.

I think this means that mips_extended_format in real.[ch] - the MIPS 
variant of IBM long double - is also obsolete, and with it all the support 
in fp-bit.[ch] for that format (__LDBL_MANT_DIG__ == 106 conditional, 
HALFFRACBITS, HALFSHIFT and associated conditional code).

-- 
Joseph S. Myers
joseph@codesourcery.com

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Remove obsolete IRIX 6.5 support
  2012-03-12 17:04 Remove obsolete IRIX 6.5 support Rainer Orth
  2012-03-12 17:16 ` Bruce Korb
  2012-03-12 17:37 ` Joseph S. Myers
@ 2012-03-12 18:22 ` Ian Lance Taylor
  2012-03-15 14:33   ` Rainer Orth
  2012-03-12 18:40 ` Richard Sandiford
                   ` (3 subsequent siblings)
  6 siblings, 1 reply; 10+ messages in thread
From: Ian Lance Taylor @ 2012-03-12 18:22 UTC (permalink / raw)
  To: Rainer Orth
  Cc: gcc-patches, libstdc++,
	java-patches, Richard Sandiford, Bruce Korb, Arnaud Charlet,
	Joseph S. Myers, Jason Merrill

Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> writes:

> * I'm removing IRIX-specific parts of libgo.  Given that libgo is
>   imported from upstream (and supposed to work or made work on the 4.7
>   branch), I don't know if this a good idea.

Yeah, it's not.  Just send me the mainline patches to libgo rather than
applying them yourself, I'll apply them to the upstream repository and
commit to mainline.

Thanks for working on this!

Ian

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Remove obsolete IRIX 6.5 support
  2012-03-12 17:04 Remove obsolete IRIX 6.5 support Rainer Orth
                   ` (2 preceding siblings ...)
  2012-03-12 18:22 ` Ian Lance Taylor
@ 2012-03-12 18:40 ` Richard Sandiford
  2012-03-12 20:05 ` Jonathan Wakely
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 10+ messages in thread
From: Richard Sandiford @ 2012-03-12 18:40 UTC (permalink / raw)
  To: Rainer Orth
  Cc: gcc-patches, libstdc++,
	java-patches, Bruce Korb, Arnaud Charlet, Joseph S. Myers,
	Ian Lance Taylor, Jason Merrill

OK from my point of view, except...

Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> writes:
> 	* config/mips/mips.h (TARGET_GPWORD): Remove IRIX 6 N64 handling.
> 	(TARGET_IRIX6): Remove.
> 	(TARGET_CPU_CPP_BUILTINS): Remove IRIX 6 handling.
> 	Don't define LANGUAGE_C, _LANGUAGE_C for Objective-C.

...looking at SVN history, defining _LANGUAGE_C* for Objective-C
predates the Irix comment, so I think we'd better keep it.  How about
changing the comment to:

     /* Bizarre, but retained for backwards compatibility.  */

Thanks for all your work on this port, and for putting up with those
long bootstrap times :-)

Richard

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Remove obsolete IRIX 6.5 support
  2012-03-12 17:04 Remove obsolete IRIX 6.5 support Rainer Orth
                   ` (3 preceding siblings ...)
  2012-03-12 18:40 ` Richard Sandiford
@ 2012-03-12 20:05 ` Jonathan Wakely
  2012-03-13 10:50 ` Arnaud Charlet
  2012-03-16 18:41 ` Tom Tromey
  6 siblings, 0 replies; 10+ messages in thread
From: Jonathan Wakely @ 2012-03-12 20:05 UTC (permalink / raw)
  To: Rainer Orth
  Cc: gcc-patches, libstdc++,
	java-patches, Richard Sandiford, Bruce Korb, Arnaud Charlet,
	Joseph S. Myers, Ian Lance Taylor, Jason Merrill

On 12 March 2012 17:03, Rainer Orth wrote:
> Continuing with the patches to remove obsolete ports, here's the IRIX
> 6.5 removal patch.
...
> * libstdc++-v3/doc/xml/manual/internals.xml still uses IRIX as an
>  example.  I've kept that part since I guess it's up the libstdc++
>  maintainers to decide what to do about this.

Thanks for pointing it out.

The libstdc++ parts of the patch are OK.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Remove obsolete IRIX 6.5 support
  2012-03-12 17:04 Remove obsolete IRIX 6.5 support Rainer Orth
                   ` (4 preceding siblings ...)
  2012-03-12 20:05 ` Jonathan Wakely
@ 2012-03-13 10:50 ` Arnaud Charlet
  2012-03-14 16:54   ` Rainer Orth
  2012-03-16 18:41 ` Tom Tromey
  6 siblings, 1 reply; 10+ messages in thread
From: Arnaud Charlet @ 2012-03-13 10:50 UTC (permalink / raw)
  To: Rainer Orth
  Cc: gcc-patches, libstdc++,
	java-patches, Richard Sandiford, Bruce Korb, Joseph S. Myers,
	Ian Lance Taylor, Jason Merrill

The gnattools and gcc/ada/gcc-interface changes are OK.

The gcc/ada file removals (*irix*) are also OK

I'd need to review the other gcc/ada changes more carefully before
giving an OK for these and would rather do so with a readily available
patch file uncompressed.

I'd suggest sending me these parts privately once you've got the other OKs.

Arno

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Remove obsolete IRIX 6.5 support
  2012-03-13 10:50 ` Arnaud Charlet
@ 2012-03-14 16:54   ` Rainer Orth
  0 siblings, 0 replies; 10+ messages in thread
From: Rainer Orth @ 2012-03-14 16:54 UTC (permalink / raw)
  To: Arnaud Charlet
  Cc: gcc-patches, libstdc++,
	java-patches, Richard Sandiford, Bruce Korb, Joseph S. Myers,
	Ian Lance Taylor, Jason Merrill

[-- Attachment #1: Type: text/plain, Size: 20098 bytes --]

Arnaud Charlet <charlet@adacore.com> writes:

> The gnattools and gcc/ada/gcc-interface changes are OK.
>
> The gcc/ada file removals (*irix*) are also OK
>
> I'd need to review the other gcc/ada changes more carefully before
> giving an OK for these and would rather do so with a readily available
> patch file uncompressed.
>
> I'd suggest sending me these parts privately once you've got the other OKs.

I've incorporated your private review comments, as well as the others.
The libgo parts are gone and will be dealt with separately.

I assume the rest falls either under my irix or testsuite
maintainerships or is obvious.  I'm not completely certain about the
libjava changes and LINK_ELIMINATE_DUPLICATE_LDIRECTORIES removal.

Here's what I've commited, after successful bootstrap on
i386-pc-solaris2.10 and building an i386-solaris2.11 x mips-elf cross.

	Rainer


2012-03-10  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	libstdc++-v3:
	* configure.host (irix6.5*): Remove.
	* config/os/irix: Remove.
	* config/io/basic_file_stdio.cc (__basic_file<char>::showmanyc())
	[_GLIBCXX_FIONREAD_TAKES_OFF_T]: Remove.

	* doc/xml/faq.xml: Remove IRIX reference.
	* doc/xml/manual/using.xml (Finding Dynamic or Shared Libraries):
	Remove IRIX example.

	* testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
	Remove mips-sgi-irix6* handling.
	* testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
	* testsuite/21_strings/basic_string/pthread18185.cc: Likewise.
	* testsuite/21_strings/basic_string/pthread4.cc: Likewise.
	* testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
	* testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
	* testsuite/23_containers/list/pthread1.cc: Likewise.
	* testsuite/23_containers/list/pthread5.cc: Likewise.
	* testsuite/23_containers/map/pthread6.cc: Likewise.
	* testsuite/23_containers/vector/debug/multithreaded_swap.cc: Likewise.
	* testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
	* testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
	* testsuite/30_threads/async/42819.cc: Likewise.
	* testsuite/30_threads/async/49668.cc: Likewise.
	* testsuite/30_threads/async/any.cc: Likewise.
	* testsuite/30_threads/async/async.cc: Likewise.
	* testsuite/30_threads/async/launch.cc: Likewise.
	* testsuite/30_threads/async/sync.cc: Likewise.
	* testsuite/30_threads/call_once/39909.cc: Likewise.
	* testsuite/30_threads/call_once/49668.cc: Likewise.
	* testsuite/30_threads/call_once/call_once1.cc: Likewise.
	* testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
	* testsuite/30_threads/condition_variable/members/1.cc: Likewise.
	* testsuite/30_threads/condition_variable/members/2.cc: Likewise.
	* testsuite/30_threads/condition_variable/native_handle/typesizes.cc:
	Likewise.
	* testsuite/30_threads/condition_variable_any/50862.cc: Likewise.
	* testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
	* testsuite/30_threads/condition_variable_any/members/1.cc: Likewise.
	* testsuite/30_threads/condition_variable_any/members/2.cc: Likewise.
	* testsuite/30_threads/future/cons/move.cc: Likewise.
	* testsuite/30_threads/future/members/45133.cc: Likewise.
	* testsuite/30_threads/future/members/get.cc: Likewise.
	* testsuite/30_threads/future/members/get2.cc: Likewise.
	* testsuite/30_threads/future/members/share.cc: Likewise.
	* testsuite/30_threads/future/members/valid.cc: Likewise.
	* testsuite/30_threads/future/members/wait.cc: Likewise.
	* testsuite/30_threads/future/members/wait_for.cc: Likewise.
	* testsuite/30_threads/future/members/wait_until.cc: Likewise.
	* testsuite/30_threads/lock/1.cc: Likewise.
	* testsuite/30_threads/lock/2.cc: Likewise.
	* testsuite/30_threads/lock/3.cc: Likewise.
	* testsuite/30_threads/lock/4.cc: Likewise.
	* testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
	* testsuite/30_threads/mutex/cons/1.cc: Likewise.
	* testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
	* testsuite/30_threads/mutex/lock/1.cc: Likewise.
	* testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
	* testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
	* testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
	* testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
	* testsuite/30_threads/mutex/unlock/1.cc: Likewise.
	* testsuite/30_threads/packaged_task/49668.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
	* testsuite/30_threads/packaged_task/cons/move_assign.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/get_future.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/get_future2.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/reset.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
	* testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
	* testsuite/30_threads/promise/cons/1.cc: Likewise.
	* testsuite/30_threads/promise/cons/alloc.cc: Likewise.
	* testsuite/30_threads/promise/cons/move.cc: Likewise.
	* testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
	* testsuite/30_threads/promise/members/get_future.cc: Likewise.
	* testsuite/30_threads/promise/members/get_future2.cc: Likewise.
	* testsuite/30_threads/promise/members/set_exception.cc: Likewise.
	* testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
	* testsuite/30_threads/promise/members/set_value.cc: Likewise.
	* testsuite/30_threads/promise/members/set_value2.cc: Likewise.
	* testsuite/30_threads/promise/members/set_value3.cc: Likewise.
	* testsuite/30_threads/promise/members/swap.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
	Likewise.
	* testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc:
	Likewise.
	* testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
	* testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
	Likewise.
	* testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
	* testsuite/30_threads/shared_future/cons/move.cc: Likewise.
	* testsuite/30_threads/shared_future/members/45133.cc: Likewise.
	* testsuite/30_threads/shared_future/members/get.cc: Likewise.
	* testsuite/30_threads/shared_future/members/get2.cc: Likewise.
	* testsuite/30_threads/shared_future/members/valid.cc: Likewise.
	* testsuite/30_threads/shared_future/members/wait.cc: Likewise.
	* testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
	* testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
	* testsuite/30_threads/this_thread/1.cc: Likewise.
	* testsuite/30_threads/this_thread/2.cc: Likewise.
	* testsuite/30_threads/this_thread/3.cc: Likewise.
	* testsuite/30_threads/this_thread/4.cc: Likewise.
	* testsuite/30_threads/thread/cons/1.cc: Likewise.
	* testsuite/30_threads/thread/cons/2.cc: Likewise.
	* testsuite/30_threads/thread/cons/3.cc: Likewise.
	* testsuite/30_threads/thread/cons/4.cc: Likewise.
	* testsuite/30_threads/thread/cons/49668.cc: Likewise.
	* testsuite/30_threads/thread/cons/5.cc: Likewise.
	* testsuite/30_threads/thread/cons/6.cc: Likewise.
	* testsuite/30_threads/thread/cons/7.cc: Likewise.
	* testsuite/30_threads/thread/cons/8.cc: Likewise.
	* testsuite/30_threads/thread/cons/9.cc: Likewise.
	* testsuite/30_threads/thread/cons/moveable.cc: Likewise.
	* testsuite/30_threads/thread/members/1.cc: Likewise.
	* testsuite/30_threads/thread/members/2.cc: Likewise.
	* testsuite/30_threads/thread/members/3.cc: Likewise.
	* testsuite/30_threads/thread/members/4.cc: Likewise.
	* testsuite/30_threads/thread/members/5.cc: Likewise.
	* testsuite/30_threads/thread/members/hardware_concurrency.cc: Likewise.
	* testsuite/30_threads/thread/native_handle/typesizes.cc: Likewise.
	* testsuite/30_threads/thread/swap/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
	* testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/native_handle/typesizes.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
	* testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
	* testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
	* testsuite/30_threads/try_lock/1.cc: Likewise.
	* testsuite/30_threads/try_lock/2.cc: Likewise.
	* testsuite/30_threads/try_lock/3.cc: Likewise.
	* testsuite/30_threads/try_lock/4.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
	* testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
	* testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
	* testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
	* testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
	* testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
	* testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
	* testsuite/ext/rope/pthread7-rope.cc: Likewise.
	* testsuite/tr1/2_general_utilities/shared_ptr/thread/default_weaktoshared.cc:
	Likewise.
	* testsuite/tr1/2_general_utilities/shared_ptr/thread/mutex_weaktoshared.cc:
	Likewise.

	* testsuite/23_containers/vector/capacity/resize/1.cc: Remove
	dg-options for mips*-*-irix6*.

	* testsuite/27_io/ios_base/storage/1.cc: Likewise.
	* testsuite/27_io/ios_base/storage/2.cc: Likewise.
	* testsuite/27_io/ios_base/storage/3.cc: Likewise.

	* testsuite/lib/libstdc++.exp (v3-build_support): Remove IRIX 6
	workaround.

	libjava:
	* configure.ac (libgcj_cv_exidx): Remove IRIX 6 ld workaround.
	(mips-sgi-irix6*): Remove.
	(mips-sgi-irix*): Remove.
	(AC_CHECK_HEADERS): Remove bstring.h.
	* configure: Regenerate.
	* include/config.h.in: Regenerate.
	* configure.host (mips-sgi-irix6*): Remove.

	* include/posix-signal.h [__sgi__]: Remove.

	* gnu/java/net/natPlainDatagramSocketImplPosix.cc
	[HAVE_BSTRING_H]: Remove.
	* gnu/java/net/natPlainDatagramSocketImplWin32.cc: Likewise.
	* gnu/java/net/natPlainSocketImplPosix.cc: Likewise.

	libitm:
	* configure.tgt (*-*-irix6*): Remove.

	libgomp:
	* configure.tgt (mips-sgi-irix6*): Remove.

	libgfortran:
	* intrinsics/c99_functions.c [__sgi__ && !HAVE_COMPLEX_H]: Remove.

	libgcc:
	* config.host (mips-sgi-irix6.5*): Remove.
	* config/mips/irix-crti.S: Remove.
	* config/mips/irix-crtn.S: Remove.
	* config/mips/irix6-unwind.h: Remove.
	* config/mips/t-irix6: Remove.
	* config/mips/t-slibgcc-irix: Remove.

	gnattools:
	* configure.ac (mips-sgi-irix*): Remove.
	* configure: Regenerate.

	gcc/testsuite:
	* g++.dg/other/anon5.C: Don't skip on mips-sgi-irix*.
	* g++.dg/tree-prof/partition1.C: Likewise.
	* g++.dg/tree-prof/partition2.C: Likewise.
	* g++.old-deja/g++.other/init19.C: Remove mips-sgi-irix*
	handling.
	* gcc.c-torture/compile/labels-3.c: Remove dg-options.
	* gcc.c-torture/execute/20010724-1.c: Remove.
	* gcc.c-torture/execute/20010724-1.x: Remove.
	* gcc.c-torture/execute/20040208-2.c: Remove.
	* gcc.c-torture/execute/20040208-2.x: Remove.
	* gcc.c-torture/execute/ieee/20000320-1.c [__mips__ && __sgi__]:
	Remove.
	(main) [__mips__ && __sgi__]: Remove.
	* gcc.c-torture/execute/ieee/copysign1.c: Remove IRIX reference.
	* gcc.c-torture/execute/ieee/copysign2.c: Likewise.
	* gcc.c-torture/execute/ieee/mul-subnormal-single-1.x: Remove
	mips-sgi-irix6* handling.
	* gcc.dg/cpp/assert4.c [__mips__]: Remove __sgi__, sgi.
	* gcc.dg/torture/20090618-1.c: Don't skip on mips-sgi-irix*.
	* gcc.dg/torture/builtin-frexp-1.c: Remove mips*-*-irix6*
	handling.
	* gcc.dg/torture/builtin-logb-1.c: Likewise.
	* gcc.dg/torture/pr47917.c: Remove mips-sgi-irix6.5 handling.
	* gcc.dg/tree-ssa/ssa-store-ccp-3.c: Don't skip on mips*-*-irix*.
	* gcc.misc-tests/linkage.exp: Remove mips-sgi-irix6* handling.
	* gcc.target/mips/args-1.c [!__sgi__]: Remove.
	* gcc.target/mips/interrupt_handler-2.c: Don't skip on
	mips-sgi-irix6*.
	* gcc.target/mips/interrupt_handler-3.c: Likewise.
	* gcc.target/mips/save-restore-1.c: Don't skip on mips-sgi-irix6*.
	* gcc.target/mips/save-restore-3.c: Likewise.
	* gcc.target/mips/save-restore-4.c: Likewise.
	* gcc.target/mips/save-restore-5.c: Likewise.
	* gfortran.dg/g77/cabs.f: Don't xfail on mips-sgi-irix6*.
	* lib/prune.exp (prune_gcc_output): Remove pruning of IRIX 6 ld
	messages.
	* lib/target-libpath.exp (set_ld_library_path_env_vars): Remove
	IRIX 6 handling.
	(restore_ld_library_path_env_vars): Likewise.
	* lib/target-supports.exp (check_profiling_available): Remove
	mips*-*-irix* handling.
	(check_ascii_locale_available): Remove mips-sgi-irix* handling.
	(add_options_for_c99_runtime): Remove mips-sgi-irix6.5* handling.
	* objc.dg/stabs-1.m: Don't xfail on mips-sgi-irix6.5.

	gcc/ada:
	* gcc-interface/Makefile.in (mips-sgi-irix6*): Remove.

	* a-intnam-irix.ads, mlib-tgt-specific-irix.adb,
	s-intman-irix.adb, s-mastop-irix.adb, s-osinte-irix.adb,
	s-osinte-irix.ads, s-proinf-irix-athread.adb,
	s-proinf-irix-athread.ads, s-taprop-irix.adb, s-tasinf-irix.ads,
	system-irix-n32.ads, system-irix-n64.ads, system-irix-o32.ads:
	Remove.

	* adaint.c [__mips && __sgi]: Remove.
	(__gnat_number_of_cpus) [__mips && __sgi]: Remove.
	[IS_CROSS && !(__mips && __sgi)]: Remove.
	* adaint.h [sgi && _LFAPI]: Remove.
	* cstreams.c (__gnat_full_name) [sgi]: Remove.
	* env.c (__gnat_unsetenv) [__mips && __sgi]: Remove.
	(__gnat_clearenv) [__mips && __sgi]: Remove.
	* errno.c (_SGI_MP_SOURCE): Remove.
	* gsocket.h [sgi]: Remove.
	* init.c: Remove IRIX reference.
	[sgi]: Remove.
	* link.c [sgi]: Remove.
	* s-oscons-tmplt.c [__mips && __sgi] (IOV_MAX): Don't define.
	(main) [__mips && __sgi] (MAX_tv_sec): Don't define.
	(CLOCK_SGI_FAST, CLOCK_SGI_CYCLE): Remove.
	* sysdep.c [sgi]: Remove.
	(getc_immediate_common) [sgi]: Remove.
	(__gnat_localtime_tzoff) [sgi]: Remove.
	* terminals.c [__mips && __sgi] (IRIX): Don't define.
	[IRIX] (USE_GETPTY): Don't define.
	(allocate_pty_desc) [USE_GETPTY]: Remove.

	* g-traceb.ads: Remove IRIX reference.
	* g-trasym.ads: Likewise.
	* memtrack.adb: Likewise.
	* s-interr-sigaction.adb: Likewise.

	* gnat_rm.texi (Implementation Advice): Remove SGI info.
	(Implementation Defined Characteristics): Likewise.
	* gnat_ugn.texi (Summary of Run-Time Configurations, mips-irix):
	Remove.
	(Irix-Specific Considerations): Remove.

	gcc/cp:
	* Make-lang.in (doc/g++.1): Remove IRIX 6.5 reference.

	gcc:
	* config.gcc (enable_obsolete): Remove mips-sgi-irix6.5.
	(mips-sgi-irix6.5*): Remove.
	* config.host (mips-sgi-irix*): Remove.
	* configure.ac (enable_fixed_point): Remove mips*-sgi-irix*.
	(set_have_as_tls): Remove *-*-irix6*.
	(gcc_cv_ld_static_dynamic): Remove mips-sgi-irix6*.
	* configure: Regenerate.

	* config/mips/iris6.h: Remove.
	* config/mips/iris6.opt: Remove.
	* config/mips/t-irix6: Remove.

	* config/mips/mips.h (TARGET_GPWORD): Remove IRIX 6 N64 handling.
	(TARGET_IRIX6): Remove.
	(TARGET_CPU_CPP_BUILTINS): Remove IRIX 6 handling.
	Don't define LANGUAGE_C, _LANGUAGE_C for Objective-C.
	* config/mips/mips.c (mips_build_builtin_va_list): Remove IRIX 6
	handling.
	(mips_file_start): Likewise.
	* config/mips/mips-protos.h (irix_asm_output_align): Remove.

	* config/mips/driver-native.c [__sgi__]: Remove.
	(host_detect_local_cpu) [__sgi__]: Remove.

	* config/mips/gnu-user.h: Remove iris5.h reference.

	* config/mips/mips-modes.def: Remove IRIX 6 reference.
	* config/mips/gnu-user64.h (MIPS_TFMODE_FORMAT): Remove.
	* config/mips/mips.c (mips_option_override) [MIPS_TFMODE_FORMAT]:
	Remove.

	* gcc.c (main): Move asm_debug initialization ...
	(asm_debug): ... here.

	* ginclude/stddef.h (__STDDEF_H__): Don't define.

	* defaults.h (LINK_ELIMINATE_DUPLICATE_LDIRECTORIES): Remove.
	* system.h (LINK_ELIMINATE_DUPLICATE_LDIRECTORIES): Poison.
	* collect2.c [LINK_ELIMINATE_DUPLICATE_LDIRECTORIES]: Remove.
	(main) [LINK_ELIMINATE_DUPLICATE_LDIRECTORIES]: Remove.
	[LINK_ELIMINATE_DUPLICATE_LDIRECTORIES] (is_in_args): Remove.
	* doc/tm.texi.in (Driver, LINK_ELIMINATE_DUPLICATE_LDIRECTORIES):
	Remove.
	* doc/tm.texi: Regenerate.

	* doc/invoke.texi (Debugging Options, -gdwarf-<version>): Remove
	IRIX 6 reference.
	(MIPS Options, -march): Remove IRIX reference.
	* doc/install.texi (Binaries, SGI IRIX): Remove.
	(Specific, mips-sgi-irix6): Document IRIX 6.5 removal, remove rest
	of section.
	* doc/trouble.texi (Interoperation): Remove -lgl_s handling.

	fixincludes:
	* inclhack.def (broken_cabs): Remove IRIX and SunOS 4 support.
	(irix___restrict): Remove.
	(irix___generic1): Remove.
	(irix___generic2): Remove.
	(irix_asm_apostrophe): Remove.
	(irix_complex): Remove.
	(irix_pthread_init): Remove.
	(irix_socklen_t): Remove.
	(irix_stdint_c99_mode): Remove.
	(irix_stdint_c99_types): Remove.
	(irix_stdint_c99_macros): Remove.
	(irix_stdio_va_list): Remove IRIX 6.5 support.
	(irix_wcsftime): Remove.
	(stdio_va_list): Remove IRIX 6.5 support.
	(svr4_profil): Remove IRIX bypass.
	* fixincl.x: Regenerate.

	* tests/base/complex.h [IRIX_COMPLEX_CHECK]: Remove.
	* tests/base/internal/math_core.h: Remove.
	* tests/base/internal/sgimacros.h: Remove.
	* tests/base/internal/wchar_core.h: Remove.
	* tests/base/math.h [BROKEN_CABS_CHECK]: Remove IRIX and SunOS 4
	support.
	* tests/base/pthread.h [IRIX_PTHREAD_INIT_CHECK]: Remove.
	* tests/base/stdint-irix65.h: Remove.
	* tests/base/stdint.h [IRIX_STDINT_C99_MODE_CHECK]: Remove.
	* tests/base/sys/asm.h: Remove.
	* tests/base/sys/socket.h [IRIX_SOCKLEN_T_CHECK]: Remove.

	contrib:
	* config-list.mk (LIST): Remove mips-sgi-irix6.5.

	toplevel:
	* MAINTAINERS (OS Port Maintainers): Remove irix.
	* configure.ac (enable_libgomp): Remove *-*-irix6*.
	(unsupported_languages): Remove mips-sgi-irix6.*.
	(noconfigdirs): Don't add ${libgcj} for mips*-*-irix6*.
	(with_stabs): Remove.
	* configure: Regenerate.


[-- Attachment #2: irix65-removal.patch.bz2 --]
[-- Type: application/octet-stream, Size: 62375 bytes --]

[-- Attachment #3: Type: text/plain, Size: 143 bytes --]


-- 
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Remove obsolete IRIX 6.5 support
  2012-03-12 18:22 ` Ian Lance Taylor
@ 2012-03-15 14:33   ` Rainer Orth
  0 siblings, 0 replies; 10+ messages in thread
From: Rainer Orth @ 2012-03-15 14:33 UTC (permalink / raw)
  To: Ian Lance Taylor; +Cc: gcc-patches

[-- Attachment #1: Type: text/plain, Size: 1284 bytes --]

Ian Lance Taylor <iant@google.com> writes:

> Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> writes:
>
>> * I'm removing IRIX-specific parts of libgo.  Given that libgo is
>>   imported from upstream (and supposed to work or made work on the 4.7
>>   branch), I don't know if this a good idea.
>
> Yeah, it's not.  Just send me the mainline patches to libgo rather than
> applying them yourself, I'll apply them to the upstream repository and
> commit to mainline.

Here's the libgo part of the patch.  Given that IRIX 6.5 Go support
remains on the 4.7 branch (and I hope to fix it up sufficiently to be
useful after 4.7.0 is released), I wonder if it's a good idea to apply
it upstream or better handle libgo like the other upstream libraries
(boehm-gc, libffi) which I didn't touch for the removal.

Thanks.
	Rainer


2012-03-10  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	libgo:
	* configure.ac (is_irix): Remove.
	(mips-sgi-irix6.5*): Don't set OSCFLAGS.
	* configure: Regenerate.
	* Makefile.am [LIBGO_IS_IRIX]: Remove.
	* Makefile.in: Regenerate.
	* mksysinfo.sh [__sgi__]: Remove.
	(__timespec): Remove.

	* go/net/http/cgi/host.go (osDefaultInheritEnv): Remove irix
	handling.
	* go/syscall/socket_irix.go: Remove.
	* go/time/zoneinfo_unix.go (zoneDirs): Remove IRIX 6 support.


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: irix65-removal-libgo.patch --]
[-- Type: text/x-patch, Size: 8976 bytes --]

diff --git a/libgo/Makefile.am b/libgo/Makefile.am
--- a/libgo/Makefile.am
+++ b/libgo/Makefile.am
@@ -646,12 +646,6 @@ go_net_sock_file = go/net/sock_linux.go
 go_net_sockopt_file = go/net/sockopt_linux.go
 go_net_sockoptip_file = go/net/sockoptip_linux.go
 else
-if LIBGO_IS_IRIX
-go_net_cgo_file = go/net/cgo_linux.go
-go_net_sock_file = go/net/sock_linux.go
-go_net_sockopt_file = go/net/sockopt_linux.go
-go_net_sockoptip_file = go/net/sockoptip_linux.go
-else
 if LIBGO_IS_SOLARIS
 go_net_cgo_file = go/net/cgo_linux.go
 go_net_sock_file = go/net/sock_linux.go
@@ -671,7 +665,6 @@ go_net_sockoptip_file = go/net/sockoptip
 endif
 endif
 endif
-endif
 
 if LIBGO_IS_LINUX
 go_net_sendfile_file = go/net/sendfile_linux.go
@@ -754,9 +747,6 @@ else
 if LIBGO_IS_SOLARIS
 go_os_sys_file = go/os/sys_uname.go
 else
-if LIBGO_IS_IRIX
-go_os_sys_file = go/os/sys_uname.go
-else
 if LIBGO_IS_RTEMS
 go_os_sys_file = go/os/sys_uname.go
 else
@@ -764,7 +754,6 @@ go_os_sys_file = go/os/sys_bsd.go
 endif
 endif
 endif
-endif
 
 if LIBGO_IS_SOLARIS
 go_os_stat_file = go/os/stat_solaris.go
@@ -862,12 +851,8 @@ go_sync_files = \
 if LIBGO_IS_SOLARIS
 go_syslog_file = go/log/syslog/syslog_libc.go
 else
-if LIBGO_IS_IRIX
-go_syslog_file = go/log/syslog/syslog_libc.go
-else
 go_syslog_file = go/log/syslog/syslog_unix.go
 endif
-endif
 
 go_log_syslog_files = \
 	go/log/syslog/syslog.go \
@@ -1464,13 +1449,9 @@ else
 if LIBGO_IS_SOLARIS
 syscall_socket_file = go/syscall/socket_solaris.go
 else
-if LIBGO_IS_IRIX
-syscall_socket_file = go/syscall/socket_irix.go
-else
 syscall_socket_file = go/syscall/socket_bsd.go
 endif
 endif
-endif
 
 # Support for uname.
 if LIBGO_IS_SOLARIS
diff --git a/libgo/configure.ac b/libgo/configure.ac
--- a/libgo/configure.ac
+++ b/libgo/configure.ac
@@ -126,7 +126,6 @@ AC_SUBST(go_include)
 
 is_darwin=no
 is_freebsd=no
-is_irix=no
 is_linux=no
 is_netbsd=no
 is_rtems=no
@@ -135,7 +134,6 @@ GOOS=unknown
 case ${host} in
   *-*-darwin*)   is_darwin=yes;  GOOS=darwin ;;
   *-*-freebsd*)  is_freebsd=yes; GOOS=freebsd ;;
-  *-*-irix6*)    is_irix=yes;    GOOS=irix ;;
   *-*-linux*)    is_linux=yes;   GOOS=linux ;;
   *-*-netbsd*)	 is_netbsd=yes;  GOOS=netbsd ;;
   *-*-rtems*)    is_rtems=yes;   GOOS=rtems ;;
@@ -143,7 +141,6 @@ case ${host} in
 esac
 AM_CONDITIONAL(LIBGO_IS_DARWIN, test $is_darwin = yes)
 AM_CONDITIONAL(LIBGO_IS_FREEBSD, test $is_freebsd = yes)
-AM_CONDITIONAL(LIBGO_IS_IRIX, test $is_irix = yes)
 AM_CONDITIONAL(LIBGO_IS_LINUX, test $is_linux = yes)
 AM_CONDITIONAL(LIBGO_IS_NETBSD, test $is_netbsd = yes)
 AM_CONDITIONAL(LIBGO_IS_RTEMS, test $is_rtems = yes)
@@ -285,11 +282,6 @@ AC_SUBST(GO_SYSCALL_OS_ARCH_FILE)
 dnl Special flags used to generate sysinfo.go.
 OSCFLAGS="-D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
 case "$target" in
-    mips-sgi-irix6.5*)
-	# IRIX 6 needs _XOPEN_SOURCE=500 for the XPG5 version of struct
-	# msghdr in <sys/socket.h>.
-	OSCFLAGS="$OSCFLAGS -D_XOPEN_SOURCE=500"
-	;;
     *-*-solaris2.[[89]])
 	# Solaris 8/9 need this so struct msghdr gets the msg_control
 	# etc. fields in <sys/socket.h> (_XPG4_2).
diff --git a/libgo/go/net/http/cgi/host.go b/libgo/go/net/http/cgi/host.go
--- a/libgo/go/net/http/cgi/host.go
+++ b/libgo/go/net/http/cgi/host.go
@@ -35,7 +35,6 @@ var osDefaultInheritEnv = map[string][]s
 	"darwin":  {"DYLD_LIBRARY_PATH"},
 	"freebsd": {"LD_LIBRARY_PATH"},
 	"hpux":    {"LD_LIBRARY_PATH", "SHLIB_PATH"},
-	"irix":    {"LD_LIBRARY_PATH", "LD_LIBRARYN32_PATH", "LD_LIBRARY64_PATH"},
 	"linux":   {"LD_LIBRARY_PATH"},
 	"openbsd": {"LD_LIBRARY_PATH"},
 	"solaris": {"LD_LIBRARY_PATH", "LD_LIBRARY_PATH_32", "LD_LIBRARY_PATH_64"},
diff --git a/libgo/go/syscall/socket_irix.go b/libgo/go/syscall/socket_irix.go
deleted file mode 100644
--- a/libgo/go/syscall/socket_irix.go
+++ /dev/null
@@ -1,130 +0,0 @@
-// socket_irix.go -- Socket handling specific to IRIX 6.
-
-// Copyright 2011 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-package syscall
-
-const SizeofSockaddrInet4 = 16
-const SizeofSockaddrInet6 = 28
-const SizeofSockaddrUnix = 110
-
-type RawSockaddrInet4 struct {
-	Family uint16
-	Port   uint16
-	Addr   [4]byte /* in_addr */
-	Zero   [8]uint8
-}
-
-func (sa *RawSockaddrInet4) setLen() Socklen_t {
-	return SizeofSockaddrInet4
-}
-
-type RawSockaddrInet6 struct {
-	Family   uint16
-	Port     uint16
-	Flowinfo uint32
-	Addr     [16]byte /* in6_addr */
-	Scope_id uint32
-}
-
-func (sa *RawSockaddrInet6) setLen() Socklen_t {
-	return SizeofSockaddrInet6
-}
-
-type RawSockaddrUnix struct {
-	Family uint16
-	Path   [108]int8
-}
-
-func (sa *RawSockaddrUnix) setLen(int) {
-}
-
-func (sa *RawSockaddrUnix) getLen() (int, error) {
-	if sa.Path[0] == 0 {
-		// "Abstract" Unix domain socket.
-		// Rewrite leading NUL as @ for textual display.
-		// (This is the standard convention.)
-		// Not friendly to overwrite in place,
-		// but the callers below don't care.
-		sa.Path[0] = '@'
-	}
-
-	// Assume path ends at NUL.
-	// This is not technically the GNU/Linux semantics for
-	// abstract Unix domain sockets--they are supposed
-	// to be uninterpreted fixed-size binary blobs--but
-	// everyone uses this convention.
-	n := 0
-	for n < len(sa.Path)-3 && sa.Path[n] != 0 {
-		n++
-	}
-
-	return n, nil
-}
-
-type RawSockaddr struct {
-	Family uint16
-	Data   [14]int8
-}
-
-// BindToDevice binds the socket associated with fd to device.
-func BindToDevice(fd int, device string) (err error) {
-	return ENOSYS
-}
-
-// <netdb.h> only provides struct addrinfo, AI_* and EAI_* if  _NO_XOPEN4
-// && _NO_XOPEN5, but -D_XOPEN_SOURCE=500 is required for msg_control etc.
-// in struct msghgr, so simply provide them here.
-type Addrinfo struct {
-	Ai_flags     int32
-	Ai_family    int32
-	Ai_socktype  int32
-	Ai_protocol  int32
-	Ai_addrlen   int32
-	Ai_canonname *uint8
-	Ai_addr      *_sockaddr
-	Ai_next      *Addrinfo
-}
-
-const (
-	AI_PASSIVE     = 0x00000001
-	AI_CANONNAME   = 0x00000002
-	AI_NUMERICHOST = 0x00000004
-	AI_NUMERICSERV = 0x00000008
-	AI_ALL         = 0x00000100
-	AI_ADDRCONFIG  = 0x00000400
-	AI_V4MAPPED    = 0x00000800
-	AI_DEFAULT     = (AI_V4MAPPED | AI_ADDRCONFIG)
-)
-
-const (
-	EAI_ADDRFAMILY = 1
-	EAI_AGAIN      = 2
-	EAI_BADFLAGS   = 3
-	EAI_FAIL       = 4
-	EAI_FAMILY     = 5
-	EAI_MEMORY     = 6
-	EAI_NODATA     = 7
-	EAI_NONAME     = 8
-	EAI_SERVICE    = 9
-	EAI_SOCKTYPE   = 10
-	EAI_SYSTEM     = 11
-	EAI_BADHINTS   = 12
-	EAI_OVERFLOW   = 13
-	EAI_MAX        = 14
-)
-
-func anyToSockaddrOS(rsa *RawSockaddrAny) (Sockaddr, error) {
-	return nil, EAFNOSUPPORT
-}
-
-// <netinet/in.h.h> only provides IPV6_* etc. if  _NO_XOPEN4 && _NO_XOPEN5,
-// so as above simply provide them here.
-const (
-	IPV6_UNICAST_HOPS   = 48
-	IPV6_MULTICAST_IF   = IP_MULTICAST_IF
-	IPV6_MULTICAST_HOPS = IP_MULTICAST_TTL
-	IPV6_MULTICAST_LOOP = IP_MULTICAST_LOOP
-)
diff --git a/libgo/go/time/zoneinfo_unix.go b/libgo/go/time/zoneinfo_unix.go
--- a/libgo/go/time/zoneinfo_unix.go
+++ b/libgo/go/time/zoneinfo_unix.go
@@ -23,11 +23,10 @@ func initTestingZone() {
 }
 
 // Many systems use /usr/share/zoneinfo, Solaris 2 has
-// /usr/share/lib/zoneinfo, IRIX 6 has /usr/lib/locale/TZ.
+// /usr/share/lib/zoneinfo.
 var zoneDirs = []string{
 	"/usr/share/zoneinfo/",
 	"/usr/share/lib/zoneinfo/",
-	"/usr/lib/locale/TZ/",
 	runtime.GOROOT() + "/lib/time/zoneinfo/",
 }
 
diff --git a/libgo/mksysinfo.sh b/libgo/mksysinfo.sh
--- a/libgo/mksysinfo.sh
+++ b/libgo/mksysinfo.sh
@@ -30,15 +30,6 @@ cat > sysinfo.c <<EOF
 #include <errno.h>
 #include <fcntl.h>
 #include <netinet/in.h>
-/* <netinet/tcp.h> needs u_char/u_short, but <sys/bsd_types> is only
-   included by <netinet/in.h> if _SGIAPI (i.e. _SGI_SOURCE
-   && !_XOPEN_SOURCE.
-   <sys/termios.h> only defines TIOCNOTTY if !_XOPEN_SOURCE, while
-   <sys/ttold.h> does so unconditionally.  */
-#ifdef __sgi__
-#include <sys/bsd_types.h>
-#include <sys/ttold.h>
-#endif
 #include <netinet/tcp.h>
 #include <signal.h>
 #include <sys/ioctl.h>
@@ -375,17 +366,12 @@ echo $timeval | \
       -e 's/tv_sec *[a-zA-Z0-9_]*/Sec Timeval_sec_t/' \
       -e 's/tv_usec *[a-zA-Z0-9_]*/Usec Timeval_usec_t/' >> ${OUT}
 timespec=`grep '^type _timespec ' gen-sysinfo.go || true`
-if test "$timespec" = ""; then
-  # IRIX 6.5 has __timespec instead.
-  timespec=`grep '^type ___timespec ' gen-sysinfo.go || true`
-fi
 timespec_sec=`echo $timespec | sed -n -e 's/^.*tv_sec \([^ ]*\);.*$/\1/p'`
 timespec_nsec=`echo $timespec | sed -n -e 's/^.*tv_nsec \([^ ]*\);.*$/\1/p'`
 echo "type Timespec_sec_t $timespec_sec" >> ${OUT}
 echo "type Timespec_nsec_t $timespec_nsec" >> ${OUT}
 echo $timespec | \
-  sed -e 's/^type ___timespec /type Timespec /' \
-      -e 's/^type _timespec /type Timespec /' \
+  sed -e 's/^type _timespec /type Timespec /' \
       -e 's/tv_sec *[a-zA-Z0-9_]*/Sec Timespec_sec_t/' \
       -e 's/tv_nsec *[a-zA-Z0-9_]*/Nsec Timespec_nsec_t/' >> ${OUT}
 

[-- Attachment #3: Type: text/plain, Size: 144 bytes --]



-- 
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Remove obsolete IRIX 6.5 support
  2012-03-12 17:04 Remove obsolete IRIX 6.5 support Rainer Orth
                   ` (5 preceding siblings ...)
  2012-03-13 10:50 ` Arnaud Charlet
@ 2012-03-16 18:41 ` Tom Tromey
  6 siblings, 0 replies; 10+ messages in thread
From: Tom Tromey @ 2012-03-16 18:41 UTC (permalink / raw)
  To: Rainer Orth
  Cc: gcc-patches, libstdc++,
	java-patches, Richard Sandiford, Bruce Korb, Arnaud Charlet,
	Joseph S. Myers, Ian Lance Taylor, Jason Merrill

>>>>> "Rainer" == Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> writes:

Rainer> Continuing with the patches to remove obsolete ports, here's the
Rainer> IRIX 6.5 removal patch.

Rainer> * libjava/gnu/classpath/natSystemProperties.cc (getpwuid_adaptor) claims
Rainer>   to be for IRIX, too, but I cannot tell for certain.

It doesn't really hurt to leave it in; but if you want to remove it,
that is fine by me as well.  It is easy to resurrect on the off chance
it breaks some obscure build.

Rainer> 	libjava:
[...]

The libjava parts are ok.

Tom

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2012-03-16 18:41 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-03-12 17:04 Remove obsolete IRIX 6.5 support Rainer Orth
2012-03-12 17:16 ` Bruce Korb
2012-03-12 17:37 ` Joseph S. Myers
2012-03-12 18:22 ` Ian Lance Taylor
2012-03-15 14:33   ` Rainer Orth
2012-03-12 18:40 ` Richard Sandiford
2012-03-12 20:05 ` Jonathan Wakely
2012-03-13 10:50 ` Arnaud Charlet
2012-03-14 16:54   ` Rainer Orth
2012-03-16 18:41 ` Tom Tromey

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).