Re: git: 5deeebd8c6ca - main - Merge llvm-project release/19.x llvmorg-19.1.2-0-g7ba7d8e2f7b6

From: Dima Panov <fluffy_at_FreeBSD.org>
Date: Mon, 04 Nov 2024 17:07:16 UTC
Hello!

On 02.11.2024 18:53, Dimitry Andric wrote:
> On 1 Nov 2024, at 23:17, Dima Panov <fluffy@freebsd.org> wrote:
>>
>> Hello!
>>
>> On 23.10.2024 21:32, Dimitry Andric wrote:
>>> The branch main has been updated by dim:
>>> URL: https://cgit.FreeBSD.org/src/commit/?id=5deeebd8c6ca991269e72902a7a62cada57947f6
>>> commit 5deeebd8c6ca991269e72902a7a62cada57947f6
>>> Merge: 6e516c87b6d7 e6b732792813
>>> Author:     Dimitry Andric <dim@FreeBSD.org>
>>> AuthorDate: 2024-10-21 12:59:26 +0000
>>> Commit:     Dimitry Andric <dim@FreeBSD.org>
>>> CommitDate: 2024-10-23 18:27:38 +0000
>>>      Merge llvm-project release/19.x llvmorg-19.1.2-0-g7ba7d8e2f7b6
>>>           This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and
>>>      openmp to llvm-project release/19.x llvmorg-19.1.2-0-g7ba7d8e2f7b6,
>>>      a.k.a. 19.1.2 release.
>>>           PR:             280562
>>>      MFC after:      1 month
>>
>>
>> After this update any lang/gcc* fails to build on aarch64 machine :(
>>
>> mkdir aarch64-portbld-freebsd15.0/libgomp
>> Checking multilib configuration for libgomp...
>> Configuring stage 1 in aarch64-portbld-freebsd15.0/libgomp
>> configure: creating cache ./config.cache
>> checking for --enable-version-specific-runtime-libs... no
>> checking for --enable-generated-files-in-srcdir... no
>> checking build system type... aarch64-portbld-freebsd15.0
>> checking host system type... aarch64-portbld-freebsd15.0
>> checking target system type... aarch64-portbld-freebsd15.0
>> checking for a BSD-compatible install... /usr/bin/install -c
>> checking whether build environment is sane... yes
>> checking for a thread-safe mkdir -p... /wrkdirs/usr/ports/lang/gcc13/work/gcc-13.3.0/libgomp/../install-sh -c -d
>> checking for gawk... /usr/bin/awk
>> checking whether gmake sets $(MAKE)... yes
>> checking whether gmake supports nested variables... yes
>> ld-elf.so.1: /wrkdirs/usr/ports/lang/gcc13/work/.build/./gcc/libgcc_s.so.1: version GCC_3.3 required by /wrkdirs/usr/ports/lang/gcc13/work/.build/./gcc/xgcc not defined
>> checking for aarch64-portbld-freebsd15.0-gcc... /wrkdirs/usr/ports/lang/gcc13/work/.build/./gcc/xgcc -B/wrkdirs/usr/ports/lang/gcc13/work/.build/./gcc/ -B/usr/local/aarch64-portbld-freebsd15.0/bin/ -B/usr/local/aarch
>> checking whether the C compiler works... no
>> configure: error: in `/wrkdirs/usr/ports/lang/gcc13/work/.build/aarch64-portbld-freebsd15.0/libgomp':
>> configure: error: C compiler cannot create executables
>> See `config.log' for more details
>> gmake[2]: *** [Makefile:22505: configure-stage1-target-libgomp] Error 77
>> gmake[2]: Leaving directory '/wrkdirs/usr/ports/lang/gcc13/work/.build'
>> gmake[1]: *** [Makefile:24863: stage1-bubble] Error 2
>> gmake[1]: Leaving directory '/wrkdirs/usr/ports/lang/gcc13/work/.build'
>> gmake: *** [Makefile:25211: bootstrap-lean] Error 2
>> ===> Compilation failed unexpectedly.
> 
> I cannot reproduce this. I have installed a fresh snapshot (FreeBSD-15.0-CURRENT-arm64-aarch64-20241031-5212b9500116-273335), installed the prerequisites, then did a full build of the default gcc, which is currently lang/gcc13. All options defaulted.
> 
> Do you have any non-default options select for these ports?
> 

Indeed, root of evil was hidden in devel/binutils with RELRO option enabled.
After disabling RELRO option in binutils all lang/gcc* build are fine again.

Anyway it is a big bad regression here.
I have RELRO enabled in binutils port fot long time and had no issues with gcc builds before this llvm19 import.



-- 
Sincerely,
Dima (fluffy@FreeBSD.org, https://t.me/FluffyBSD, @fluffy:matrix-dev.freebsd.org)
(desktop, kde, x11, office, ports-secteam)@FreeBSD team