NetBSD Problem Report #60439
From he@smistad.uninett.no Fri Jul 10 21:20:13 2026
Return-Path: <he@smistad.uninett.no>
Received: from mail.netbsd.org (mail.netbsd.org [199.233.217.200])
(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256
client-signature RSA-PSS (2048 bits) client-digest SHA256)
(Client CN "mail.netbsd.org", Issuer "YR2" (not verified))
by mollari.NetBSD.org (Postfix) with ESMTPS id C2F9B1A923E
for <gnats-bugs@gnats.NetBSD.org>; Fri, 10 Jul 2026 21:20:13 +0000 (UTC)
Message-Id: <20260710212008.4A70A43F6A8@smistad.uninett.no>
Date: Fri, 10 Jul 2026 23:20:08 +0200 (CEST)
From: he@NetBSD.org
Reply-To: he@NetBSD.org
To: gnats-bugs@NetBSD.org
Subject: lang/gcc12 fails to build on NetBSD/macppc 11.0_RC6 but succeeds on 10.0
X-Send-Pr-Version: 3.95
X-From4GNATS: "he@NetBSD.org via gnats" <gnats-admin@NetBSD.org>
>Number: 60439
>Category: pkg
>Synopsis: lang/gcc12 fails to build on NetBSD/macppc 11.0_RC6 but succeeds on 10.0
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: pkg-manager
>State: pending-pullups
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Fri Jul 10 21:25:00 +0000 2026
>Closed-Date:
>Last-Modified: Wed Sep 02 02:12:14 +0000 2026
>Originator: Havard Eidnes
>Release: NetBSD 11.0_RC6
>Organization:
I try...
>Environment:
System: NetBSD bramley.urc.uninett.no 11.0_RC6 NetBSD 11.0_RC6 (BRAMLEY) #3: Thu Jul 9 23:46:40 CEST 2026 he@bramley.urc.uninett.no:/usr/obj/sys/arch/macppc/compile/BRAMLEY macppc
Architecture: powerpc
Machine: macppc
>Description:
The lang/gcc12 package fails to build on NetBSD/macppc 11.0_RC6,
while it succeeds on 10.0.
The build log contains, after 1:53h wallclock time on this system:
checking whether we are cross compiling... configure: error: in `/usr/pkgsrc/lang/gcc12/work/build/powerpc--netbsd/soft-float/libgcc':
configure: error: cannot run C compiled programs.
If you meant to cross compile, use `--host'.
See `config.log' for more details
gmake[2]: *** [Makefile:22318: configure-stage1-target-libgcc] Error 1
The config.log file in work/build/powerpc--netbsd/soft-float/libgcc
ends with
configure:3748: checking whether we are cross compiling
configure:3756: /usr/pkgsrc/lang/gcc12/work/build/./gcc/xgcc -B/usr/pkgsrc/lang/gcc12/work/build/./gcc/ -B/usr/pkg/gcc12/powerpc--netbsd/bin/ -B/usr/pkg/gcc12/powerpc--netbsd/lib/ -isystem /usr/pkg/gcc12/powerpc--netbsd/include -isystem /usr/pkg/gcc12/powerpc--netbsd/sys-include -fno-checking -msoft-float -fPIC -mstrict-align -o conftest -g -O2 -I/usr/include -Wl,-zrelro conftest.c >&5
configure:3760: $? = 0
configure:3767: ./conftest
[1] Abort trap ./conftest${ac_cv_exeext}
configure:3771: $? = 134
configure:3778: error: in `/usr/pkgsrc/lang/gcc12/work/build/powerpc--netbsd/soft-float/libgcc':
configure:3782: error: cannot run C compiled programs.
If you meant to cross compile, use `--host'.
See `config.log' for more details
and inspecting around line 3748 in the configure script reveals
the conftest.c contents to be
#include <stdio.h>
int
main ()
{
FILE *f = fopen ("conftest.out", "w");
return ferror (f) || fclose (f) != 0;
;
return 0;
}
Re-doing the build as above does indeed produce an executable
which just exits with "Abort":
$ ./conftest
[1] Abort trap ./conftest
$
Doing ktrace -i of the program reveals almost nothing:
$ ktrace -i ./conftest
[1] Abort trap ktrace -i ./conftest
$ kdump
25558 25558 ktrace EMUL "netbsd"
25558 25558 ktrace CALL execve(0xfffdd6c6,0xfffdd1cc,0xfffdd1d4)
25558 25558 ktrace NAMI "/usr/pkgsrc/lang/gcc12/work/build/powerpc--netbsd/soft-float/libgcc/./conftest"
25558 25558 ktrace NAMI "/usr/libexec/ld.elf_so"
$
Running ut under gdb makes it succeed:
$ gdb -q conftest
Reading symbols from conftest...
(gdb) run
Starting program: /usr/pkgsrc/lang/gcc12/work/build/powerpc--netbsd/soft-float/libgcc/conftest
[Inferior 1 (process 14924) exited normally]
(gdb) quit
$
Changing the "m" PaX flag also makes it succeed:
$ paxctl conftest
No PaX flags.
$ paxctl +m conftest
$ paxctl conftest
PaX flags:
m: mprotect(2) restrictions, explicit disable
$ ./conftest
$ echo $?
0
$
Looking at the program headers with "readelf -a" shows
among other things:
Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
PHDR 0x000034 0x01800034 0x01800034 0x00100 0x00100 R 0x4
INTERP 0x000134 0x01800134 0x01800134 0x00017 0x00017 R 0x1
[Requesting program interpreter: /usr/libexec/ld.elf_so]
LOAD 0x000000 0x01800000 0x01800000 0x00c20 0x00c20 R E 0x10000
LOAD 0x00fec8 0x0181fec8 0x0181fec8 0x0014c 0x0024c RWE 0x10000
DYNAMIC 0x00ff48 0x0181ff48 0x0181ff48 0x000b8 0x000b8 RW 0x4
NOTE 0x00014c 0x0180014c 0x0180014c 0x0002c 0x0002c R 0x4
GNU_EH_FRAME 0x000a70 0x01800a70 0x01800a70 0x0003c 0x0003c R 0x4
GNU_RELRO 0x00fec8 0x0181fec8 0x0181fec8 0x00138 0x00138 R 0x1
while the same program compiled with basically the same options
by the in-tree compiler results in a slight difference:
Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
PHDR 0x000034 0x01800034 0x01800034 0x00100 0x00100 R 0x4
INTERP 0x000134 0x01800134 0x01800134 0x00017 0x00017 R 0x1
[Requesting program interpreter: /usr/libexec/ld.elf_so]
LOAD 0x000000 0x01800000 0x01800000 0x00d04 0x00d04 R E 0x10000
LOAD 0x00febc 0x0181febc 0x0181febc 0x00170 0x001b0 RW 0x10000
DYNAMIC 0x00ff3c 0x0181ff3c 0x0181ff3c 0x000b8 0x000b8 RW 0x4
NOTE 0x00014c 0x0180014c 0x0180014c 0x0002c 0x0002c R 0x4
GNU_EH_FRAME 0x000b38 0x01800b38 0x01800b38 0x00044 0x00044 R 0x4
GNU_RELRO 0x00febc 0x0181febc 0x0181febc 0x00144 0x00144 R 0x1
Notice that the first one has a segment with both 'W' and 'E'
flags set, which looks wrong.
Doing the two builds with '-v' option reveals that the package
uses its own collect2 program to link:
/usr/pkgsrc/lang/gcc12/work/build/./gcc/collect2 -plugin /usr/pkgsrc/lang/gcc12/work/build/./gcc/liblto_plugin.so -plugin-opt=/usr/pkgsrc/lang/gcc12/work/build/./gcc/lto-wrapper -plugin-opt=-fresolution=/tmp//ccG9V0da.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --eh-frame-hdr -dc -dp -e _start -dynamic-linker /usr/libexec/ld.elf_so -o conftest /usr/lib/crt0.o /usr/lib/crti.o /usr/lib/crtbegin.o -L/usr/pkg/gcc12/powerpc--netbsd/lib/soft-float -L/usr/pkgsrc/lang/gcc12/work/build/./gcc -L/usr/pkg/gcc12/powerpc--netbsd/lib -R/usr/pkg/gcc12/powerpc--netbsd/lib/soft-float -R/usr/pkg/gcc12/lib/soft-float -zrelro /tmp//ccFtnYVI.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/crtend.o /usr/lib/crtn.o
while the in-tree compiler uses 'ld':
ld -plugin /usr/libexec/liblto_plugin.so -plugin-opt=/usr/libexec/lto-wrapper -plugin-opt=-fresolution=/tmp//cceKrxcm.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --eh-frame-hdr -dc -dp -e _start -dynamic-linker /usr/libexec/ld.elf_so -o conftest.in-tree-gcc /usr/lib/crt0.o /usr/lib/crti.o /usr/lib/crtbegin.o -zrelro /tmp//cctmwYeg.o --as-needed -lgcc_s --no-as-needed -lgcc -lc --as-needed -lgcc_s --no-as-needed -lgcc /usr/lib/crtend.o /usr/lib/crtn.o
But still, why the inside-gcc collect2 does what it does
I do not know.
And ... I'm also surprised that this package successfully
builds on NetBSD/macppc 10.0.
"Help!"
>How-To-Repeat:
See above.
>Fix:
Would be nice.
>Release-Note:
>Audit-Trail:
From: Havard Eidnes <he@NetBSD.org>
To: gnats-bugs@netbsd.org, gnats-admin@NetBSD.org
Cc: pkg-manager@netbsd.org, pkgsrc-bugs@netbsd.org
Subject: Re: pkg/60439: lang/gcc12 fails to build on NetBSD/macppc 11.0_RC6
but succeeds on 10.0
Date: Sun, 12 Jul 2026 15:57:12 +0200 (CEST)
Hi,
I took a look at the executables with "objdump -x", and looking
for the sections with "CODE", for the one compiled with the
in-tree gcc, I find:
8 .init 00000020 0180040c 0180040c 0000040c 2**2
CONTENTS, ALLOC, LOAD, READONLY, CODE
9 .text 000006c0 01800430 01800430 00000430 2**4
CONTENTS, ALLOC, LOAD, READONLY, CODE
10 .fini 00000020 01800af0 01800af0 00000af0 2**2
CONTENTS, ALLOC, LOAD, READONLY, CODE
However, for the one built by the half-built gcc12 compiler, I
additionally find:
20 .got 00000010 01820000 01820000 00010000 2**2
CONTENTS, ALLOC, LOAD, CODE
21 .sdata 00000004 01820010 01820010 00010010 2**2
CONTENTS, ALLOC, LOAD, DATA
22 .sbss 00000010 01820018 01820018 00010014 2**3
ALLOC
23 .plt 000000c0 01820028 01820028 00010014 2**2
ALLOC, CODE
and those two "CODE" marked sections are not marked as "CODE"
when using the in-tree compiler.
I've already tried linking the gcc12-built conftest.o that I
built with the system linker, and the resulting executable still
aborts, so collect2 and/or the linker does not appear to be to
blame.
Looking at the object files with "objdump -x" shows the same two
sections marked as CODE (and no others):
Sections:
Idx Name Size VMA LMA File off Algn
0 .text 00000000 00000000 00000000 00000034 2**0
CONTENTS, ALLOC, LOAD, READONLY, CODE
...
5 .text.startup 00000068 00000000 00000000 00000050 2**2
CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
and skimming through the rest reveals just one notable change:
the in-tree-built conftest.o has
RELOCATION RECORDS FOR [.text.startup]:
OFFSET TYPE VALUE
00000016 R_PPC_REL16_HA .got2+0x0000800a
0000001e R_PPC_REL16_LO .got2+0x00008012
00000028 R_PPC_PLTREL24 fopen+0x00008000
00000054 R_PPC_PLTREL24 fclose+0x00008000
whereas the gcc12-built has
RELOCATION RECORDS FOR [.text.startup]:
OFFSET TYPE VALUE
00000000 R_PPC_REL32 .got2+0x00007ff0
0000002c R_PPC_PLTREL24 fopen
00000058 R_PPC_PLTREL24 fclose
But I don't see how that will make such a difference in the
executables.
Any more hints for what to look for?
From: Havard Eidnes <he@NetBSD.org>
To: gnats-bugs@netbsd.org, gnats-admin@NetBSD.org
Cc: pkg-manager@netbsd.org, pkgsrc-bugs@netbsd.org
Subject: Re: pkg/60439: lang/gcc12 fails to build on NetBSD/macppc 11.0_RC6
but succeeds on 10.0
Date: Sun, 12 Jul 2026 18:18:49 +0200 (CEST)
Aand...
The gcc14 I built on this host while it ran 10.1 is apparently
also afflicted:
bramley: {6} /usr/pkg/gcc14/bin/gcc -v
Abort
bramley: {7} readelf -a /usr/pkg/gcc14/bin/gcc | egrep 'W.*X'
[27] .got PROGBITS 019f0794 1e0794 000010 04 WAX 0 0 4
[30] .plt NOBITS 019f08b8 1e0828 000690 00 WAX 0 0 4
W (write), A (alloc), X (execute), M (merge), S (strings), I (info),
bramley: {8}
From: Havard Eidnes <he@NetBSD.org>
To: gnats-bugs@netbsd.org, gnats-admin@NetBSD.org
Cc: pkg-manager@netbsd.org, pkgsrc-bugs@netbsd.org
Subject: Re: pkg/60439: lang/gcc12 fails to build on NetBSD/macppc 11.0_RC6
but succeeds on 10.0
Date: Tue, 14 Jul 2026 11:49:19 +0200 (CEST)
Some further experimentation:
Using the half-built gcc12 to build conftest.s, and then using
the in-tree gcc to build conftest reproduces the problem with an
executable which simply aborts. So the problem is already there
with the generated assembly code.
Looking at the diff between the half-built gcc12 and the in-tree
gcc generated assembly reveals:
--- conftest.in-tree-gcc.s 2026-07-12 22:12:44.823348638 +0200
+++ conftest-gcc12.s 2026-07-12 22:15:40.699217075 +0200
@@ -20,6 +20,8 @@
.section .text.startup,"ax",@progbits
.align 2
.globl main
+.LCL0:
+ .long .LCTOC1-.LCF0
.type main, @function
main:
.LFB3:
@@ -31,25 +33,25 @@
.cfi_def_cfa_offset 16
mflr 0
.cfi_register 65, 0
- bcl 20,31,.L4
-.L4:
+ bcl 20,31,.LCF0
+.LCF0:
stw 30,8(1)
.cfi_offset 30, -8
mflr 30
- addis 30,30,.LCTOC1-.L4@ha
stw 0,20(1)
- addi 30,30,.LCTOC1-.L4@l
.cfi_offset 65, 4
+ lwz 0,.LCL0-.LCF0(30)
+ add 30,0,30
.loc 1 5 11 view .LVU3
lwz 4,.LC1-.LCTOC1(30)
lwz 3,.LC3-.LCTOC1(30)
- bl fopen+32768@plt
+ bl fopen@plt
.LVL0:
.loc 1 6 2 is_stmt 1 view .LVU4
.loc 1 6 20 is_stmt 0 view .LVU5
lhz 9,12(3)
andi. 9,9,0x40
- beq- 0,.L8
+ beq- 0,.L7
li 10,1
.LVL1:
.L1:
@@ -65,10 +67,10 @@
.cfi_restore 65
blr
.LVL2:
-.L8:
+.L7:
.cfi_restore_state
.loc 1 6 23 discriminator 2 view .LVU7
- bl fclose+32768@plt
+ bl fclose@plt
.LVL3:
.loc 1 6 20 discriminator 2 view .LVU8
addic 10,3,-1
and also
-.LASF34:
- .string "GNU C17 12.5.0 -msecure-plt -msoft-float -mstrict-align -g -O2 -fPIC"
-.LASF4:
+.LASF0:
.string "unsigned int"
.LASF28:
.string "_lb_unused"
+.LASF34:
+ .string "GNU C17 12.5.0 -msoft-float -mstrict-align -g -O2 -fPIC"
and
@@ -875,10 +866,10 @@
.string "_lbfsize"
.LASF17:
.string "_file"
-.LASF0:
+.LASF3:
.string "signed char"
.LASF26:
.string "_nbuf"
.LASF12:
.string "_base"
- .ident "GCC: (nb3 20260326) 12.5.0"
+ .ident "GCC: (GNU) 12.5.0"
So ... The "half-built gcc12" doesn't by default use
-msecure-plt, which is documented as
-msecure-plt
Generate code that allows ld and ld.so to build executables and
shared libraries with non-executable ".plt" and ".got" sections.
This is a PowerPC 32-bit SYSV ABI option.
which seems to fit well with what I'm observing.
I'm still puzzled about what changed between 10.1 and 11.0_RC6 in
NetBSD/macppc to cause this problem to occur with the latter but
not with the former.
From: Havard Eidnes <he@NetBSD.org>
To: gnats-bugs@netbsd.org, gnats-admin@NetBSD.org
Cc: pkg-manager@netbsd.org, pkgsrc-bugs@netbsd.org
Subject: Re: pkg/60439: lang/gcc12 fails to build on NetBSD/macppc 11.0_RC6
but succeeds on 10.0
Date: Fri, 17 Jul 2026 17:30:02 +0200 (CEST)
Hi,
further progress:
when I transfer the diff from
: {18} pwd
/usr/src/external/gpl3/gcc
: {19} cvs diff -kk -r1.1.1.11 dist/gcc/config/rs6000/netbsd.h
to the pkgsrc package for lang/gcc12, it appears that this gets
the build far beyond where it caused the "Abort" problem earlier.
I started the build of lang/gcc12 some 6+ hours ago, and earlier
the problem manifested after around 2 hours build time. Judging
by my 10.0 system, it'll need around total 24 hours wallclock
time to complete.
Does anyone have a suggestion for other diffs which are critical
for the NetBSD/powerpc target, and should also be copied to
pkgsrc?
From: "Havard Eidnes" <he@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:
Subject: PR/60439 CVS commit: pkgsrc/lang
Date: Sat, 18 Jul 2026 09:12:39 +0000
Module Name: pkgsrc
Committed By: he
Date: Sat Jul 18 09:12:39 UTC 2026
Modified Files:
pkgsrc/lang/gcc12: Makefile distinfo
pkgsrc/lang/gcc12-libs: Makefile
Added Files:
pkgsrc/lang/gcc12/patches: patch-gcc_config_rs6000_netbsd.h
Log Message:
lang/gcc12: pull over the changes to rs6000/netbsd.h from our in-tree gcc.
This is so that this builds and runs on powerpc/11.0*.
The most important fix is that on 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.
Fixes PR#60439.
Bump PKGREVISION for both gcc12 and gcc12-libs, to adhere to rules in comments.
To generate a diff of this commit:
cvs rdiff -u -r1.14 -r1.15 pkgsrc/lang/gcc12/Makefile
cvs rdiff -u -r1.17 -r1.18 pkgsrc/lang/gcc12/distinfo
cvs rdiff -u -r1.12 -r1.13 pkgsrc/lang/gcc12-libs/Makefile
cvs rdiff -u -r0 -r1.1 \
pkgsrc/lang/gcc12/patches/patch-gcc_config_rs6000_netbsd.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
From: Havard Eidnes <he@NetBSD.org>
To: gnats-bugs@netbsd.org, gnats-admin@NetBSD.org
Cc: pkg-manager@netbsd.org, pkgsrc-bugs@netbsd.org
Subject: Re: pkg/60439: lang/gcc12 fails to build on NetBSD/macppc 11.0_RC6
but succeeds on 10.0
Date: Sat, 18 Jul 2026 11:21:22 +0200 (CEST)
> I'm still puzzled about what changed between 10.1 and 11.0_RC6 in
> NetBSD/macppc to cause this problem to occur with the latter but
> not with the former.
It has been pointed out to me that we enabled PAX_MPROTECT in the
macppc GENERIC kernel configuration just a few days before
netbsd-11 was branched, ref.:
https://mail-index.netbsd.org/source-changes/2025/07/20/msg157530.html
and a cvs log of sys/sys/param.h:
revision 1.739
date: 2025-07-30 21:19:12 +0200; author: martin; state: Exp; lines: +2 -2; commitid: 5perWLKnr6CMVN4G;
Welcome to 11.99.1!
From: "Havard Eidnes" <he@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:
Subject: PR/60439 CVS commit: pkgsrc/lang
Date: Mon, 20 Jul 2026 08:02:52 +0000
Module Name: pkgsrc
Committed By: he
Date: Mon Jul 20 08:02:52 UTC 2026
Modified Files:
pkgsrc/lang/gcc14: Makefile distinfo
pkgsrc/lang/gcc14-libs: Makefile
pkgsrc/lang/gcc14/patches: patch-gcc_config.gcc
Added Files:
pkgsrc/lang/gcc14/patches: patch-gcc_config_rs6000_netbsd.h
patch-gcc_config_rs6000_netbsd64.h
patch-gcc_config_rs6000_rs6000-logue.cc
patch-gcc_config_rs6000_rs6000.cc patch-gcc_config_rs6000_sysv4.h
patch-gcc_config_rs6000_t-netbsd patch-gcc_config_rs6000_t-netbsd64
patch-gcc_config_rs6000_t-rs6000
Log Message:
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.
To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 pkgsrc/lang/gcc14/Makefile
cvs rdiff -u -r1.11 -r1.12 pkgsrc/lang/gcc14/distinfo
cvs rdiff -u -r1.6 -r1.7 pkgsrc/lang/gcc14-libs/Makefile
cvs rdiff -u -r1.3 -r1.4 pkgsrc/lang/gcc14/patches/patch-gcc_config.gcc
cvs rdiff -u -r0 -r1.1 \
pkgsrc/lang/gcc14/patches/patch-gcc_config_rs6000_netbsd.h \
pkgsrc/lang/gcc14/patches/patch-gcc_config_rs6000_netbsd64.h \
pkgsrc/lang/gcc14/patches/patch-gcc_config_rs6000_rs6000-logue.cc \
pkgsrc/lang/gcc14/patches/patch-gcc_config_rs6000_rs6000.cc \
pkgsrc/lang/gcc14/patches/patch-gcc_config_rs6000_sysv4.h \
pkgsrc/lang/gcc14/patches/patch-gcc_config_rs6000_t-netbsd \
pkgsrc/lang/gcc14/patches/patch-gcc_config_rs6000_t-netbsd64 \
pkgsrc/lang/gcc14/patches/patch-gcc_config_rs6000_t-rs6000
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
From: "Havard Eidnes" <he@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:
Subject: PR/60439 CVS commit: pkgsrc/lang
Date: Tue, 21 Jul 2026 09:03:21 +0000
Module Name: pkgsrc
Committed By: he
Date: Tue Jul 21 09:03:21 UTC 2026
Modified Files:
pkgsrc/lang/gcc10: Makefile distinfo
pkgsrc/lang/gcc10-libs: Makefile
Added Files:
pkgsrc/lang/gcc10/patches: patch-gcc_config_rs6000_netbsd.h
Log Message:
lang/gcc10: pull over the changes to rs6000/netbsd.h from gcc12.
This is so that this builds and runs on powerpc/11.0*.
The most important fix is that on 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.
Fixes PR#60439 for lang/gcc10.
Bump PKGREVISION for both gcc10 and gcc10-libs, to adhere to rules in comments.
To generate a diff of this commit:
cvs rdiff -u -r1.27 -r1.28 pkgsrc/lang/gcc10/Makefile
cvs rdiff -u -r1.20 -r1.21 pkgsrc/lang/gcc10/distinfo
cvs rdiff -u -r1.12 -r1.13 pkgsrc/lang/gcc10-libs/Makefile
cvs rdiff -u -r0 -r1.1 \
pkgsrc/lang/gcc10/patches/patch-gcc_config_rs6000_netbsd.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
From: John Klos <john@klos.com>
To: gnats-bugs@www46.netbsd.org
Cc:
Subject: Re: pkg/60439: lang/gcc12 fails to build on NetBSD/macppc 11.0_RC6
but succeeds on 10.0
Date: Wed, 22 Jul 2026 19:14:33 +0000 (UTC)
Hi,
This is confirmed to compile on 11.0_RC6. Can we request pull-up to
pkgsrc-2026Q2?
Thanks,
John
From: "Havard Eidnes" <he@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:
Subject: PR/60439 CVS commit: pkgsrc/lang
Date: Wed, 22 Jul 2026 19:28:27 +0000
Module Name: pkgsrc
Committed By: he
Date: Wed Jul 22 19:28:27 UTC 2026
Modified Files:
pkgsrc/lang/gcc15: Makefile distinfo
pkgsrc/lang/gcc15-libs: Makefile
pkgsrc/lang/gcc15/patches: patch-gcc_config.gcc
Added Files:
pkgsrc/lang/gcc15/patches: patch-gcc_config_rs6000_netbsd.h
patch-gcc_config_rs6000_netbsd64.h
patch-gcc_config_rs6000_rs6000-logue.cc
patch-gcc_config_rs6000_rs6000.cc patch-gcc_config_rs6000_sysv4.h
patch-gcc_config_rs6000_t-netbsd patch-gcc_config_rs6000_t-netbsd64
patch-gcc_config_rs6000_t-rs6000
Log Message:
lang/gcc15: 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.
Fixes PR#60439.
Bump PKGREVISION for both gcc15 and gcc15-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.
To generate a diff of this commit:
cvs rdiff -u -r1.6 -r1.7 pkgsrc/lang/gcc15/Makefile \
pkgsrc/lang/gcc15/distinfo
cvs rdiff -u -r1.6 -r1.7 pkgsrc/lang/gcc15-libs/Makefile
cvs rdiff -u -r1.2 -r1.3 pkgsrc/lang/gcc15/patches/patch-gcc_config.gcc
cvs rdiff -u -r0 -r1.1 \
pkgsrc/lang/gcc15/patches/patch-gcc_config_rs6000_netbsd.h \
pkgsrc/lang/gcc15/patches/patch-gcc_config_rs6000_netbsd64.h \
pkgsrc/lang/gcc15/patches/patch-gcc_config_rs6000_rs6000-logue.cc \
pkgsrc/lang/gcc15/patches/patch-gcc_config_rs6000_rs6000.cc \
pkgsrc/lang/gcc15/patches/patch-gcc_config_rs6000_sysv4.h \
pkgsrc/lang/gcc15/patches/patch-gcc_config_rs6000_t-netbsd \
pkgsrc/lang/gcc15/patches/patch-gcc_config_rs6000_t-netbsd64 \
pkgsrc/lang/gcc15/patches/patch-gcc_config_rs6000_t-rs6000
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
From: Havard Eidnes <he@NetBSD.org>
To: gnats-bugs@netbsd.org, gnats-admin@NetBSD.org
Cc: pkg-manager@netbsd.org, pkgsrc-bugs@netbsd.org
Subject: Re: pkg/60439: lang/gcc12 fails to build on NetBSD/macppc 11.0_RC6
but succeeds on 10.0
Date: Fri, 24 Jul 2026 20:35:52 +0200 (CEST)
> This is confirmed to compile on 11.0_RC6. Can we request pull-up to =
> pkgsrc-2026Q2?
I've verified that the following packages build on NetBSD/macppc
11.0_RC6 and NetBSD/amd64 11.0_RC4 after my updates:
lang/gcc10
lang/gcc12
lang/gcc14
lang/gcc15
I've just now submitted pull-up requests for all of these.
Regards,
- H=E5vard
From: "Maya Rashish" <maya@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:
Subject: PR/60439 CVS commit: [pkgsrc-2026Q2] pkgsrc/lang
Date: Mon, 27 Jul 2026 13:56:33 +0000
Module Name: pkgsrc
Committed By: maya
Date: Mon Jul 27 13:56:33 UTC 2026
Modified Files:
pkgsrc/lang/gcc12 [pkgsrc-2026Q2]: Makefile distinfo
pkgsrc/lang/gcc12-libs [pkgsrc-2026Q2]: Makefile
Added Files:
pkgsrc/lang/gcc12/patches [pkgsrc-2026Q2]:
patch-gcc_config_rs6000_netbsd.h
Log Message:
Pullup ticket #7192 - requested by he
lang/gcc12: Bug fix
Revisions pulled up:
- lang/gcc12-libs/Makefile 1.13
- lang/gcc12/Makefile 1.15
- lang/gcc12/distinfo 1.18
- lang/gcc12/patches/patch-gcc_config_rs6000_netbsd.h 1.1
---
Module Name: pkgsrc
Committed By: he
Date: Sat Jul 18 09:12:39 UTC 2026
Modified Files:
pkgsrc/lang/gcc12: Makefile distinfo
pkgsrc/lang/gcc12-libs: Makefile
Added Files:
pkgsrc/lang/gcc12/patches: patch-gcc_config_rs6000_netbsd.h
Log Message:
lang/gcc12: pull over the changes to rs6000/netbsd.h from our in-tree gcc.
This is so that this builds and runs on powerpc/11.0*.
The most important fix is that on 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.
Fixes PR#60439.
Bump PKGREVISION for both gcc12 and gcc12-libs, to adhere to rules in comments.
To generate a diff of this commit:
cvs rdiff -u -r1.14 -r1.14.2.1 pkgsrc/lang/gcc12/Makefile
cvs rdiff -u -r1.17 -r1.17.2.1 pkgsrc/lang/gcc12/distinfo
cvs rdiff -u -r1.12 -r1.12.2.1 pkgsrc/lang/gcc12-libs/Makefile
cvs rdiff -u -r0 -r1.1.2.2 \
pkgsrc/lang/gcc12/patches/patch-gcc_config_rs6000_netbsd.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
From: "Maya Rashish" <maya@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:
Subject: PR/60439 CVS commit: [pkgsrc-2026Q2] pkgsrc/lang
Date: Mon, 27 Jul 2026 13:56:39 +0000
Module Name: pkgsrc
Committed By: maya
Date: Mon Jul 27 13:56:39 UTC 2026
Modified Files:
pkgsrc/lang/gcc10 [pkgsrc-2026Q2]: Makefile distinfo
pkgsrc/lang/gcc10-libs [pkgsrc-2026Q2]: Makefile
Added Files:
pkgsrc/lang/gcc10/patches [pkgsrc-2026Q2]:
patch-gcc_config_rs6000_netbsd.h
Log Message:
Pullup ticket #7193 - requested by he
lang/gcc10: Bug fix
Revisions pulled up:
- lang/gcc10-libs/Makefile 1.13
- lang/gcc10/Makefile 1.28
- lang/gcc10/distinfo 1.21
- lang/gcc10/patches/patch-gcc_config_rs6000_netbsd.h 1.1
---
Module Name: pkgsrc
Committed By: he
Date: Tue Jul 21 09:03:21 UTC 2026
Modified Files:
pkgsrc/lang/gcc10: Makefile distinfo
pkgsrc/lang/gcc10-libs: Makefile
Added Files:
pkgsrc/lang/gcc10/patches: patch-gcc_config_rs6000_netbsd.h
Log Message:
lang/gcc10: pull over the changes to rs6000/netbsd.h from gcc12.
This is so that this builds and runs on powerpc/11.0*.
The most important fix is that on 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.
Fixes PR#60439 for lang/gcc10.
Bump PKGREVISION for both gcc10 and gcc10-libs, to adhere to rules in comments.
To generate a diff of this commit:
cvs rdiff -u -r1.27 -r1.27.12.1 pkgsrc/lang/gcc10/Makefile
cvs rdiff -u -r1.20 -r1.20.12.1 pkgsrc/lang/gcc10/distinfo
cvs rdiff -u -r1.12 -r1.12.10.1 pkgsrc/lang/gcc10-libs/Makefile
cvs rdiff -u -r0 -r1.1.2.2 \
pkgsrc/lang/gcc10/patches/patch-gcc_config_rs6000_netbsd.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
State-Changed-From-To: open->pending-pullups
State-Changed-By: maya@NetBSD.org
State-Changed-When: Wed, 02 Sep 2026 02:12:14 +0000
State-Changed-Why:
Display the status more accurately - problem is fixed, but the pullup is stalled (possibly too invasive for pkgsrc stable). It'll make it easier to close this bug if pkgsrc-2026Q3 is released.
>Unformatted:
(Contact us)
$NetBSD: query-full-pr,v 1.51 2026/08/10 02:28:17 riastradh Exp $
$NetBSD: gnats_config.sh,v 1.10 2026/05/13 22:00:09 riastradh Exp $
Copyright © 1994-2026
The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.