[COMMITTED v2] Remove obsolete Solaris 11.3 support

Rainer Orth ro@CeBiTec.Uni-Bielefeld.DE
Tue May 7 08:51:27 GMT 2024


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

> Support for Solaris 11.3 had already been obsoleted in GCC 13.  However,
> since the only Solaris system in the cfarm was running 11.3, I've kept
> it in tree until now when both Solaris 11.4/SPARC and x86 systems have
> been added.
>
> This patch actually removes the Solaris 11.3 support.  Apart from
> several minor simplifications, there are two more widespread changes:
>
> * In Solaris 11.4, libsocket and libnsl were folded into libc, so
>   there's no longer a need to link them explictly.
>
> * Since Solaris 11.4, Solaris includes all crts needed by gcc (like
>   crt1.o and gcrt1.o) with the base system.  All workarounds to provide
>   fallbacks can thus go.

During a last review immediately before commit, I noticed two errors
(not regenerating one configure script, omitting a snippet mentioned in
the ChangeLog).

I also noticed a few additional cleanups: completely removing
gcc_cv_aligned_shf_merge, unconditionally setting
gcc_cv_target_dl_iterate_phdr which this version incorporates.

v2 patch was retested as before and committed to trunk.

	Rainer

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


2024-04-30  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	c++tools:
	* configure.ac (ax_lib_socket_nsl.m4): Don't sinclude.
	(AX_LIB_SOCKET_NSL): Don't call.
	(NETLIBS): Remove.
	* configure: Regenerate.
	* Makefile.in (NETLIBS): Remove.
	(g++-mapper-server$(exeext)): Remove $(NETLIBS).

	gcc:
	* config.gcc: Move *-*-solaris2.11.[0-3]* to unsupported list.
	<*-*-solaris2*> (default_use_cxa_atexit): Set unconditionally.
	* configure.ac (AX_LIB_SOCKET_NSL): Don't call.
	(NETLIBS): Remove.
	(gcc_cv_ld_aligned_shf_merge): Remove.
	(hidden_linkonce) <i?86-*-solaris2* | x86_64-*-solaris2*>: Remove.
	(gcc_cv_target_dl_iterate_phdr) <*-*-solaris2*>: Always set to yes.
	* Makefile.in (NETLIBS): Remove.
	* configure, config.in, aclocal.m4: Regenerate.
	* config/sol2.h: Don't check HAVE_SOLARIS_CRTS.
	(STARTFILE_SPEC): Remove !HAVE_SOLARIS_CRTS case.
	[USE_GLD] (LINK_EH_SPEC): Remove TARGET_DL_ITERATE_PHDR guard.
	* config/i386/i386.cc (USE_HIDDEN_LINKONCE): Remove guard.
	* varasm.cc (mergeable_string_section): Remove
	HAVE_LD_ALIGNED_SHF_MERGE handling.
	(mergeable_constant_section): Likewise.

	* doc/install.texi (Specific,i?86-*-solaris2*): Reference Solaris
	11.4 only.
	(Specific, *-*-solaris2*): Document Solaris 11.3 removal.  Remove
	11.3 references and caveats.  Update for 11.4.

	gcc/cp:
	* Make-lang.in (cc1plus$(exeext)): Remove $(NETLIBS).

	gcc/objcp:
	* Make-lang.in (cc1objplus$(exeext)): Remove $(NETLIBS).

	gcc/testsuite:
	* lib/target-supports.exp (check_effective_target_pie): Always
	enable on *-*-solaris2*.

	libgcc:
	* configure.ac <*-*-solaris2*> (libgcc_cv_solaris_crts): Remove.
	* config.host <*-*-solaris2*>: Remove !libgcc_cv_solaris_crts
	support.
	* configure, config.in: Regenerate.
	* config/sol2/gmon.c (internal_mcount) [!HAVE_SOLARIS_CRTS]: Remove.
	* config/i386/sol2-c1.S, config/sparc/sol2-c1.S: Remove.
	* config/sol2/t-sol2 (crt1.o, gcrt1.o): Remove.

	libstdc++-v3:
	* testsuite/lib/dg-options.exp (add_options_for_net_ts)
	<*-*-solaris2*>: Don't link with -lsocket -lnsl.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: sol113-removal.patch
Type: text/x-patch
Size: 46706 bytes
Desc: not available
URL: <https://gcc.gnu.org/pipermail/libstdc++/attachments/20240507/5d2beb70/attachment-0001.bin>


More information about the Libstdc++ mailing list