git: 0683db4d8cc6 - main - lang/gcc14: Build jit only when bootstrap is on

From: Lorenzo Salvadore <salvadore_at_FreeBSD.org>
Date: Wed, 10 Sep 2025 10:12:14 UTC
The branch main has been updated by salvadore:

URL: https://cgit.FreeBSD.org/ports/commit/?id=0683db4d8cc67701799ea3c9eafd3dce1cb5b9d1

commit 0683db4d8cc67701799ea3c9eafd3dce1cb5b9d1
Author:     Lorenzo Salvadore <salvadore@FreeBSD.org>
AuthorDate: 2025-09-03 12:14:58 +0000
Commit:     Lorenzo Salvadore <salvadore@FreeBSD.org>
CommitDate: 2025-09-10 10:09:57 +0000

    lang/gcc14: Build jit only when bootstrap is on
    
    Building jit without bootstrap does not work, so we add jit to the
    enabled languages only if a bootstrap option has been selected.
    
    Indeed, building GCC on FreeBSD with FreeBSD's default compiler
    (clang) and without bootstraping it is not fully supported.
    
    See e-mail
    https://lists.freebsd.org/archives/dev-commits-ports-main/2025-August/160223.html
    for more details.
    
    Reported by:    vishwin
---
 lang/gcc14/Makefile | 6 +++++-
 lang/gcc14/pkg-help | 5 ++++-
 2 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/lang/gcc14/Makefile b/lang/gcc14/Makefile
index 29e119905af3..3f2d7cf4848d 100644
--- a/lang/gcc14/Makefile
+++ b/lang/gcc14/Makefile
@@ -80,7 +80,11 @@ CONFIGURE_TARGET=	x86_64-portbld-${OPSYS:tl}${OSREL}
 CONFIGURE_ARGS+=	--with-abi=elfv2
 .endif
 
-LANGUAGES:=	c,c++,objc,fortran,jit
+LANGUAGES=	c,c++,objc,fortran
+.if ${ARCH} != i386 && !empty(PORT_OPTIONS:M*BOOTSTRAP)
+LANGUAGES:=	${LANGUAGES},jit
+.endif
+
 TARGLIB=	${PREFIX}/lib/gcc${SUFFIX}
 TARGLIB32=	${PREFIX}/lib32	# The version information is added later
 LIBEXEC=	${PREFIX}/libexec/gcc${SUFFIX}
diff --git a/lang/gcc14/pkg-help b/lang/gcc14/pkg-help
index 9030bbb28d3f..632e1c65f816 100644
--- a/lang/gcc14/pkg-help
+++ b/lang/gcc14/pkg-help
@@ -1,3 +1,6 @@
 Building this port with LTO_BOOTSTRAP enabled requires significant amounts of
 memory and time. Consider disabling LTO_BOOTSTRAP in favor of STANDARD_BOOTSTRAP
-(or disabling BOOTSTRAP altogether) in case that is a problem.
+in case that is a problem.
+
+Note that disabling bootstrap altogether is possible, but not recommended: some
+features (e.g. jit) requires you to choose a bootstrap option to be enabled.