On Apr 27, 2025, at 09:21, Mark Millard <mark...@yahoo.com> wrote:

> [I've also dropped mmel@ from the To: list.]
> 
> Why does building lang/gcc14 work on each of:
> 
> 14.1-Release
> 14.2-Release
> 14.2-Stable
> 
> but not on main [so: 15]?

To be more explicit . . .

For all the combinations of:

FreeBSD 14.2-* vs. main and lang/gcc13 vs. lang/gcc14

the only combination that fails is:

FreeBSD main building lang/gcc14 .

So changes to both FreeBSD and to lang/gcc* are involved.

mell@ noted that -static-libgcc use (and, so, libgcc_eh.a
use) in the build of lang/gcc14 is involved, something
lang/gcc13 does not use at what is the lang/gcc14 failure
point.

I've not managed isolate what contributing difference
in FreeBSD 14.2 vs. FreeBSD main is also involved.

> Only main has armv7 lang/gcc14* build failures
> on the official builders. Seems odd if it is just
> lang/gcc1[45]* 's problem.
> 
> main gets a failure where the config.log shows
> that it found but rejected a hidden symbol:
> 
> configure:3479:  /wrkdirs/usr/ports/lang/gcc14/work/.build/./prev-gcc/xgcc 
> -B/wrkdirs/usr/ports/lang/gcc14/work/.build/./prev-gcc/ 
> -B/usr/local/armv7-portbld-freebsd15.0/bin/ -B/usr/local/armv7-portbl
> d-freebsd15.0/bin/ -B/usr/local/armv7-portbld-freebsd15.0/lib/ -isystem 
> /usr/local/armv7-portbld-freebsd15.0/include -isystem 
> /usr/local/armv7-portbld-freebsd15.0/sys-include   -fno-checking -o confte
> st -g -O2 -fno-checking -gtoggle -mcpu=cortex-a7 -DLIBICONV_PLUG 
> -static-libstdc++ -static-libgcc  conftest.c  >&5
> /usr/local/bin/ld: warning: libunwind.o: missing .note.GNU-stack section 
> implies executable stack
> /usr/local/bin/ld: NOTE: This behaviour is deprecated and will be removed in 
> a future version of the linker
> /usr/local/bin/ld: conftest: hidden symbol `__aeabi_unwind_cpp_pr0' in 
> /wrkdirs/usr/ports/lang/gcc14/work/.build/./prev-gcc/libgcc_eh.a(unwind-arm.o)
>  is referenced by DSO
> /usr/local/bin/ld: final link failed: bad value
> collect2: error: ld returned 1 exit status
> 
> Per mmel@: Note the -static-libgcc is involved,
> something that only happens for lang/gcc1[45]* .
> (This explains lang/gcc13 building on main.)
> 
> Official 14.1R builder success logs include:
> 
> https://pkg-status.freebsd.org/ampere3/data/141releng-armv7-default/a66c1b68c862/logs/gcc14-14.2.0_3.log
> 
> ---Begin OPTIONS List---
> ===> The following configuration options are available for gcc14-14.2.0_3:
>   GRAPHITE=off: Support for Graphite loop optimizations
> ====> Options available for the radio BOOTSTRAP: you can only select none or 
> one of them
>   LTO_BOOTSTRAP=off: Build using a full LTO bootstrap
>   STANDARD_BOOTSTRAP=on: Build using a full bootstrap without LTO
> ===> Use 'make config' to modify these settings
> ---End OPTIONS List---
> 
> https://pkg-status.freebsd.org/ampere3/data/141releng-armv7-default/a66c1b68c862/logs/gcc14-devel-14.2.1.s20250308,1.log
> 
> ---Begin OPTIONS List---
> ===> The following configuration options are available for 
> gcc14-devel-14.2.1.s20250308,1:
>   GRAPHITE=off: Support for Graphite loop optimizations
> ====> Options available for the single BOOTSTRAP: you have to select exactly 
> one of them
>   LTO_BOOTSTRAP=off: Build using a full LTO bootstrap
>   STANDARD_BOOTSTRAP=on: Build using a full bootstrap without LTO
> ===> Use 'make config' to modify these settings
> ---End OPTIONS List---
> 
> Note: armv7 has not had much build time in 2025-Apr so far, thus
> the lack of 14.2R examples.
> 
> 
> And local builds via:
> 
> release-armv7    14.2-RELEASE-p2           armv7         pkgbase 2025-03-13 
> 21:50:17 /usr/local/poudriere/jails/release-armv7
> 
> [01:58:58] [01] [01:34:53] Finished   lang/gcc14 | gcc14-14.2.0_3: Success
> 
> and via:
> 
> official-armv7   14.2-STABLE               armv7         pkgbase 2025-03-13 
> 21:47:04 /usr/local/poudriere/jails/official-armv7
> 
> [01:53:58] [01] [01:32:13] Finished   lang/gcc14 | gcc14-14.2.0_3: Success
> 
> work as well.
> 
> The failing context on main has (involving a grep for
> lines of interest):
> 
> File: 
> /wrkdirs/usr/ports/lang/gcc14/work/.build/prev-gcc/libgcc_eh.a(unwind-arm.o)
> 000000f8 00002f1a R_ARM_GOT_BREL      00000c30 __aeabi_unwind_cpp_pr2
> 000000fc 0000301a R_ARM_GOT_BREL      00000c28 __aeabi_unwind_cpp_pr1
>  46: 0000000000000c20     8 FUNC    GLOBAL HIDDEN     1 __aeabi_unwind_cpp_pr0
>  47: 0000000000000c30     8 FUNC    WEAK   HIDDEN     1 __aeabi_unwind_cpp_pr2
>  48: 0000000000000c28     8 FUNC    WEAK   HIDDEN     1 __aeabi_unwind_cpp_pr1
> 
> That looks the same as what is install by the working
> builds on:
> 
> 14.1-Release
> 14.2-Release
> 14.2-Stable
> 
> The official build logs show the following also
> fail --just on main:
> 
> lang/gcc14-devel
> lang/gcc15-devel


===
Mark Millard
marklmi at yahoo.com


Reply via email to