From nobody Thu Feb 27 18:58:35 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Z3gbb3PN2z59PtS; Thu, 27 Feb 2025 18:58:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Z3gbb2dm4z3QZH; Thu, 27 Feb 2025 18:58:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1740682715; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=J5uuuTcbiLzvUo7yS2CCkuusAIzCLhWDbPbpsm5eDrE=; b=q+G56jPLyeiPXmqyaiV4z9zelI7VQA1rTf0JUHiMcdevnp9r91bJ48qnEGNGY6dAJm24jg F7h2n2Rf3pVa67BeghxbEsHEJfiDgeHY6e2qvpT/eCChTRUtNZVH3h1dIZ9HQK4Nv81AWF q2mo/z7tqx9/1tqxIyEc6f+TmQUeahx4Merlt791YE4jkG+JPVtKm90LPFG1Jqe+tzvG9q IcMZex8ZwUBEiwTOLQl04H/ZpcpIYcBZQEeQCbjUURbRGgcje6aGeibV4TlO8HDVpbCbjx Dt/bG4yUR0T2is4Mpj6rcC+aOfOQquK2Nk8zUXNpuPri+3WixR1xQC66ka65pw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1740682715; a=rsa-sha256; cv=none; b=s6Tls+AxyhitkIzRLznxUIupH5ox1qxqOYUNn5JjusY7+5UTOI6CAGQqoq554pOCkf7bBU G7CTCq82dHHPmvDuGIJUfSUk1Iv7uJC0RUA08tQ7kWrwvAhjnstIe3Ir9rA0MqyZrf3SUI WYuMoIkHcgsZ+7bF2/rBXCpAV6qxVsymFlyKmj15rQFK+ClLO/WE7Fb85kr2DRkaEjuhIn /FHnSzR8xG/Hcvd+4zwNXS7VPJDPBjciY4BrqkFJ8NX93gSAUhXekKawDV7Psx+mFJryAB gGrq6XaFHZhTyWR3X0PdGuAeEjHojUyBlTOaVaM4N/8gcUTll0VymyZ1OXYtMg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1740682715; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=J5uuuTcbiLzvUo7yS2CCkuusAIzCLhWDbPbpsm5eDrE=; b=rxXWKOQdPzROyXKP5EPFJcEtTaLav0Bjr6ZxH6NB2Lc0SAr/NrqnJojJBQjGXUwdCUGpME axeWnFwSHMdFIlMK/4XxJ/70ahOfrUNyvp+/nWXZpOTMDo+CzhJIqjvtWBxvqUUgoklcPz C9flC4L6gtnWtAEQer+yN2PQTAzT+HmgJIpHx8+KrcB2fGK7KTpXKyMV7/7aLO4IGcE5HO eyuQKHMiL7SnR52RLAVWjDiOO3CWoFBqcUzXuNDx8y/fmDQeCl/DXAsaWKfAythYn1OhaQ WXtg9KsMYeaZEv2IEiYCUdz1vwFWtmUYFuOBNhDwc2JiW2MO0i3q8ENeaufI/g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Z3gbb1h3Fzw0n; Thu, 27 Feb 2025 18:58:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 51RIwZAq042817; Thu, 27 Feb 2025 18:58:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 51RIwZrN042814; Thu, 27 Feb 2025 18:58:35 GMT (envelope-from git) Date: Thu, 27 Feb 2025 18:58:35 GMT Message-Id: <202502271858.51RIwZrN042814@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: John Baldwin Subject: git: dd48b36aa295 - stable/14 - universe: Permit requesting a specific version of GCC List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: dd48b36aa295a81cffe55095c9e404f7471728f7 Auto-Submitted: auto-generated The branch stable/14 has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=dd48b36aa295a81cffe55095c9e404f7471728f7 commit dd48b36aa295a81cffe55095c9e404f7471728f7 Author: John Baldwin AuthorDate: 2025-01-11 03:49:59 +0000 Commit: John Baldwin CommitDate: 2025-02-27 18:57:03 +0000 universe: Permit requesting a specific version of GCC If USE_GCC_TOOLCHAINS is set to a value matching the pattern 'gcc*', use that as the GCC version. For example, USE_GCC_TOOLCHAINS=gcc16 would use amd64-gcc16 for amd64, etc. If the variable is set to a value that doesn't match that pattern, use the default version. Reviewed by: imp, emaste Differential Revision: https://reviews.freebsd.org/D48418 (cherry picked from commit 550137eab24ab6bdf05bfbb986927004b9f2f34e) --- Makefile | 18 ++++++++++-------- share/man/man7/build.7 | 7 ++++++- 2 files changed, 16 insertions(+), 9 deletions(-) diff --git a/Makefile b/Makefile index 60639f908b98..5880347e1261 100644 --- a/Makefile +++ b/Makefile @@ -551,14 +551,16 @@ TARGET_ARCHES_${target}= ${MACHINE_ARCH_LIST_${target}} .endfor .if defined(USE_GCC_TOOLCHAINS) -TOOLCHAINS_amd64= amd64-gcc12 -TOOLCHAINS_arm= armv6-gcc12 armv7-gcc12 -TOOLCHAIN_armv7= armv7-gcc12 -TOOLCHAINS_arm64= aarch64-gcc12 -TOOLCHAINS_i386= i386-gcc12 -TOOLCHAINS_powerpc= powerpc-gcc12 powerpc64-gcc12 -TOOLCHAIN_powerpc64= powerpc64-gcc12 -TOOLCHAINS_riscv= riscv64-gcc12 +_DEFAULT_GCC_VERSION= gcc12 +_GCC_VERSION= ${"${USE_GCC_TOOLCHAINS:Mgcc*}" != "":?${USE_GCC_TOOLCHAINS}:${_DEFAULT_GCC_VERSION}} +TOOLCHAINS_amd64= amd64-${_GCC_VERSION} +TOOLCHAINS_arm= armv6-${_GCC_VERSION} armv7-${_GCC_VERSION} +TOOLCHAIN_armv7= armv7-${_GCC_VERSION} +TOOLCHAINS_arm64= aarch64-${_GCC_VERSION} +TOOLCHAINS_i386= i386-${_GCC_VERSION} +TOOLCHAINS_powerpc= powerpc-${_GCC_VERSION} powerpc64-${_GCC_VERSION} +TOOLCHAIN_powerpc64= powerpc64-${_GCC_VERSION} +TOOLCHAINS_riscv= riscv64-${_GCC_VERSION} .endif # If a target is using an external toolchain, set MAKE_PARAMS to enable use diff --git a/share/man/man7/build.7 b/share/man/man7/build.7 index 4bff6164dd56..a1da9dce4bec 100644 --- a/share/man/man7/build.7 +++ b/share/man/man7/build.7 @@ -25,7 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd November 13, 2024 +.Dd January 10, 2025 .Dt BUILD 7 .Os .Sh NAME @@ -879,6 +879,11 @@ This variable implies Use external GCC toolchains to build the requested targets. If the required toolchain package for a supported architecture is not installed, the build for that architecture is skipped. +.Pp +A specific version of GCC can be used by setting the value of this variable +to the desired version +.Pq for example, Dq gcc14 ; +otherwise a default version of GCC is used. .It Va TARGETS Only build the listed targets instead of each supported architecture. .It Va EXTRA_TARGETS