On Sat, Jan 24, 2026 at 11:20:59PM -0500, George Koehler wrote:
> lang/gcc/15 is broken on powerpc, but this diff might fix it.
>
> ports-gcc switched from 8 to 15 on 2025-12-12, but powerpc is a slow
> arch, so it took more than a month for me to catch up to the problem.
> The broken 15 blocks all ports that depend on ports-gcc.
>
> The diff adjusts PFRAG.powerpc-main for 15. The other fixes are for
> Ada: use the newer adastrap, fix a time_t problem, and move
> s-vsllli.ali and s-vslllu.ali (which don't exist on powerpc) to
> PFRAG.128BIT-ada.
>
> I guess that libgnat/s-parame.ads sets time_t_bits to 32 on 32-bit
> archs, but g-socket.adb assumes 64-bit time_t,
>
> g-socket.adb:2882:26: error: value not in range of type "time_t" defined at
> g-sothco.ads:47
> g-socket.adb:2882:26: error: static expression fails Constraint_Check
> g-socket.adb:2884:26: error: value not in range of type "time_t" defined at
> g-sothco.ads:47
> g-socket.adb:2884:26: error: static expression fails Constraint_Check
>
> The fix uses s-parame__posix2008.ads to set time_t_bits to 64. I put
> s-parame__posix2008.ads only in the powerpc section of Makefile.rtl,
> but later, we might want it on all other archs (especially i386).
>
> I will commit this diff if I can complete 1 more build.
All of this makes sense to me, ok jca@ if it builds.
> --gkoehler
>
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/lang/gcc/15/Makefile,v
> diff -u -p -r1.19 Makefile
> --- Makefile 15 Jan 2026 11:47:52 -0000 1.19
> +++ Makefile 25 Jan 2026 03:34:00 -0000
> @@ -21,6 +21,7 @@ FULL_PKGVERSION = $V
> GCC_PKGSPEC = >=15,<16
>
> REVISION = 5
> +REVISION-ada = 6
> REVISION-f95 = 6
>
> # aarch64 bootstrap contains only gdc
> @@ -30,7 +31,7 @@ ADASTRAP-arm = adastrap-arm-4.9.4-0.tar.
> ADASTRAP-hppa = adastrap-hppa-8.3.0-1.tar.xz
> ADASTRAP-i386 = adastrap-i386-11.2.0-4.tar.xz
> ADASTRAP-mips64 = adastrap-mips64-8.4.0-5.tar.xz
> -ADASTRAP-powerpc = adastrap-powerpc-11.2.0-3.tar.xz
> +ADASTRAP-powerpc = adastrap-powerpc-11.2.0-4.tar.xz
> ADASTRAP-sparc64 = adastrap-sparc64-6.5.0-0.tar.xz
>
> PKGNAME-main = gcc-${FULL_PKGVERSION}
> Index: distinfo
> ===================================================================
> RCS file: /cvs/ports/lang/gcc/15/distinfo,v
> diff -u -p -r1.7 distinfo
> --- distinfo 6 Dec 2025 16:05:34 -0000 1.7
> +++ distinfo 25 Jan 2026 03:34:00 -0000
> @@ -1,8 +1,8 @@
> SHA256 (gcc/adastrap-amd64-11.2.0-5.tar.xz) =
> xv2mjPXOBPnrbP98RlbKmbNgE3iP8MHBrShaipe/YNI=
> SHA256 (gcc/adastrap-mips64-8.4.0-5.tar.xz) =
> Rfwenft0B3hxydQ3mqkkbFN40maQ73Jl4fgTFn1eNKQ=
> -SHA256 (gcc/adastrap-powerpc-11.2.0-3.tar.xz) =
> acJtrhP/QyqtfDHrcXZjwI1LIBBN8C+SrTokVunndSQ=
> +SHA256 (gcc/adastrap-powerpc-11.2.0-4.tar.xz) =
> 9KgiD7tqhcrCd8oTds/iVrmo9LXBNEAJQ+DdplytMuU=
> SHA256 (gcc/gcc-15.2.0.tar.xz) = Q4/ZloJrDIJIWinaA6ctcdbjVBqD7HAt9Ccfb+Al0k4=
> SIZE (gcc/adastrap-amd64-11.2.0-5.tar.xz) = 78100312
> SIZE (gcc/adastrap-mips64-8.4.0-5.tar.xz) = 49877060
> -SIZE (gcc/adastrap-powerpc-11.2.0-3.tar.xz) = 70134604
> +SIZE (gcc/adastrap-powerpc-11.2.0-4.tar.xz) = 70164724
> SIZE (gcc/gcc-15.2.0.tar.xz) = 101056276
> Index: patches/patch-gcc_ada_Makefile_rtl
> ===================================================================
> RCS file: /cvs/ports/lang/gcc/15/patches/patch-gcc_ada_Makefile_rtl,v
> diff -u -p -r1.2 patch-gcc_ada_Makefile_rtl
> --- patches/patch-gcc_ada_Makefile_rtl 7 Nov 2025 16:20:01 -0000
> 1.2
> +++ patches/patch-gcc_ada_Makefile_rtl 25 Jan 2026 03:34:00 -0000
> @@ -1,7 +1,7 @@
> Index: gcc/ada/Makefile.rtl
> --- gcc/ada/Makefile.rtl.orig
> +++ gcc/ada/Makefile.rtl
> -@@ -1828,6 +1828,239 @@ ifeq ($(strip $(filter-out x86_64 pc
> gnu,$(target_cpu)
> +@@ -1828,6 +1828,240 @@ ifeq ($(strip $(filter-out x86_64 pc
> gnu,$(target_cpu)
> endif
> endif
>
> @@ -128,6 +128,7 @@ Index: gcc/ada/Makefile.rtl
> + s-osinte.adb<libgnarl/s-osinte__openbsd.adb \
> + s-oslock.ads<libgnat/s-oslock__posix.ads \
> + s-osprim.adb<libgnat/s-osprim__posix.adb \
> ++ s-parame.ads<libgnat/s-parame__posix2008.ads \
> + s-taprop.adb<libgnarl/s-taprop__posix.adb \
> + s-taspri.ads<libgnarl/s-taspri__posix.ads \
> + s-tpopsp.adb<libgnarl/s-tpopsp__posix.adb \
> @@ -241,7 +242,7 @@ Index: gcc/ada/Makefile.rtl
> # aarch64 FreeBSD
> ifeq ($(SELECTED_PAIRS),PAIRS_NONE)
> ifeq ($(strip $(filter-out %aarch64 freebsd%,$(target_cpu) $(target_os))),)
> -@@ -3209,7 +3442,7 @@ LIBGNAT_OBJS = adadecode.o adaint.o argv.o aux-io.o
>
> +@@ -3209,7 +3443,7 @@ LIBGNAT_OBJS = adadecode.o adaint.o argv.o aux-io.o
>
> # from ADA_INCLUDE_SRCS.
>
> LIBGNAT_SRCS = $(patsubst %.o,%.c,$(LIBGNAT_OBJS)) \
> Index: pkg/PFRAG.128BIT-ada
> ===================================================================
> RCS file: /cvs/ports/lang/gcc/15/pkg/PFRAG.128BIT-ada,v
> diff -u -p -r1.1.1.1 PFRAG.128BIT-ada
> --- pkg/PFRAG.128BIT-ada 18 Aug 2025 19:49:25 -0000 1.1.1.1
> +++ pkg/PFRAG.128BIT-ada 25 Jan 2026 03:34:00 -0000
> @@ -79,5 +79,7 @@ lib/gcc/${CONFIG}/${V}/adalib/s-vade128.
> lib/gcc/${CONFIG}/${V}/adalib/s-vafi128.ali
> lib/gcc/${CONFIG}/${V}/adalib/s-valllli.ali
> lib/gcc/${CONFIG}/${V}/adalib/s-vallllu.ali
> +lib/gcc/${CONFIG}/${V}/adalib/s-vsllli.ali
> +lib/gcc/${CONFIG}/${V}/adalib/s-vslllu.ali
> lib/gcc/${CONFIG}/${V}/adalib/s-widllli.ali
> lib/gcc/${CONFIG}/${V}/adalib/s-widlllu.ali
> Index: pkg/PFRAG.powerpc-main
> ===================================================================
> RCS file: /cvs/ports/lang/gcc/15/pkg/PFRAG.powerpc-main,v
> diff -u -p -r1.1.1.1 PFRAG.powerpc-main
> --- pkg/PFRAG.powerpc-main 18 Aug 2025 19:49:25 -0000 1.1.1.1
> +++ pkg/PFRAG.powerpc-main 25 Jan 2026 03:34:00 -0000
> @@ -5,11 +5,14 @@ lib/gcc/${CONFIG}/${V}/include/bmiintrin
> lib/gcc/${CONFIG}/${V}/include/emmintrin.h
> lib/gcc/${CONFIG}/${V}/include/htmintrin.h
> lib/gcc/${CONFIG}/${V}/include/htmxlintrin.h
> +lib/gcc/${CONFIG}/${V}/include/immintrin.h
> lib/gcc/${CONFIG}/${V}/include/mm_malloc.h
> lib/gcc/${CONFIG}/${V}/include/mmintrin.h
> +lib/gcc/${CONFIG}/${V}/include/nmmintrin.h
> lib/gcc/${CONFIG}/${V}/include/pmmintrin.h
> lib/gcc/${CONFIG}/${V}/include/ppc-asm.h
> lib/gcc/${CONFIG}/${V}/include/ppu_intrinsics.h
> +lib/gcc/${CONFIG}/${V}/include/rs6000-vecdefines.h
> lib/gcc/${CONFIG}/${V}/include/si2vmx.h
> lib/gcc/${CONFIG}/${V}/include/smmintrin.h
> lib/gcc/${CONFIG}/${V}/include/spu2vmx.h
> @@ -29,9 +32,7 @@ lib/gcc/${CONFIG}/${V}/plugin/include/co
> lib/gcc/${CONFIG}/${V}/plugin/include/config/rs6000/
> lib/gcc/${CONFIG}/${V}/plugin/include/config/rs6000/openbsd.h
> lib/gcc/${CONFIG}/${V}/plugin/include/config/rs6000/option-defaults.h
> -lib/gcc/${CONFIG}/${V}/plugin/include/config/rs6000/rs6000-builtin.def
> lib/gcc/${CONFIG}/${V}/plugin/include/config/rs6000/rs6000-cpus.def
> -lib/gcc/${CONFIG}/${V}/plugin/include/config/rs6000/rs6000-modes.h
> lib/gcc/${CONFIG}/${V}/plugin/include/config/rs6000/rs6000-opts.h
> lib/gcc/${CONFIG}/${V}/plugin/include/config/rs6000/rs6000-protos.h
> lib/gcc/${CONFIG}/${V}/plugin/include/config/rs6000/rs6000.h
> Index: pkg/PLIST-ada
> ===================================================================
> RCS file: /cvs/ports/lang/gcc/15/pkg/PLIST-ada,v
> diff -u -p -r1.2 PLIST-ada
> --- pkg/PLIST-ada 12 Dec 2025 18:19:46 -0000 1.2
> +++ pkg/PLIST-ada 25 Jan 2026 03:34:01 -0000
> @@ -2372,8 +2372,6 @@ lib/gcc/${CONFIG}/${V}/adalib/s-vs_int.a
> lib/gcc/${CONFIG}/${V}/adalib/s-vs_lli.ali
> lib/gcc/${CONFIG}/${V}/adalib/s-vs_llu.ali
> lib/gcc/${CONFIG}/${V}/adalib/s-vs_uns.ali
> -lib/gcc/${CONFIG}/${V}/adalib/s-vsllli.ali
> -lib/gcc/${CONFIG}/${V}/adalib/s-vslllu.ali
> lib/gcc/${CONFIG}/${V}/adalib/s-wchcnv.ali
> lib/gcc/${CONFIG}/${V}/adalib/s-wchcon.ali
> lib/gcc/${CONFIG}/${V}/adalib/s-wchjis.ali
>
--
jca