head 1.1; access; symbols; locks; strict; comment @# @; 1.1 date 2026.07.20.08.02.51; author he; state Exp; branches; next ; commitid T3qBoQLspnpMLmOG; desc @@ 1.1 log @lang/gcc14: Add changes to make this build on NetBSD/macppc 11.0_RC6. This pulls over changes to config/rs6000/ and gcc/config.gcc from our in-tree gcc instance of gcc14, while preserving existing Homebrew- related changes to gcc/config.gcc. The most important fix is that on NetBSD/powerpc, -msecure-plt is enabled by default, so that resulting executables can be run with PAX_MPROTECT active. Otherwise, we end up with executables with sections which have both "write" and "execute" turned on, which PAX_MPROTECT rejects. Ref. the entries for .plt and .got sections in "readelf -a". Fixes PR#60439. Bump PKGREVISION for both gcc14 and gcc14-libs, to adhere to rules in comments, even though this *should* be a single-arch build fix, since I had to merge the patch to gcc/config.gcc. @ text @$NetBSD$ Carry over changes from in-tree gcc in an attempt at making this build on NetBSD/powerpc. --- gcc/config/rs6000/t-netbsd.orig 13 Sep 2025 23:45:31 -0000 1.1.1.12 +++ gcc/config/rs6000/t-netbsd 14 Sep 2025 00:07:23 -0000 1.13 @@@@ -18,6 +18,10 @@@@ # along with GCC; see the file COPYING3. If not see # . +# It is important that crtbegin.o, etc., aren't surprised by stuff in .sdata. +CRTSTUFF_T_CFLAGS += -msdata=none +CRTSTUFF_T_CFLAGS_S += -msdata=none + # Switch synonyms MULTILIB_MATCHES_FLOAT = msoft-float=mcpu?401 \ msoft-float=mcpu?403 \ @@@@ -34,3 +38,9 @@@@ MULTILIB_EXCEPTIONS = MULTILIB_MATCHES = ${MULTILIB_MATCHES_FLOAT} + +LIBGCC = stmp-multilib + +INSTALL_LIBGCC = install-multilib +EXTRA_MULTILIB_PARTS = crtbegin$(objext) crtend$(objext) \ + crtbeginS$(objext) crtendS$(objext) crtbeginT$(objext) @