From patchwork Mon Apr 15 16:22:22 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Thomas Perale X-Patchwork-Id: 1923800 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=buildroot.org (client-ip=140.211.166.138; helo=smtp1.osuosl.org; envelope-from=buildroot-bounces@buildroot.org; receiver=patchwork.ozlabs.org) Received: from smtp1.osuosl.org (smtp1.osuosl.org [140.211.166.138]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4VJCC02JcZz1yY4 for ; Tue, 16 Apr 2024 02:23:08 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by smtp1.osuosl.org (Postfix) with ESMTP id 8D02F817A6; Mon, 15 Apr 2024 16:23:05 +0000 (UTC) X-Virus-Scanned: amavis at osuosl.org Received: from smtp1.osuosl.org ([127.0.0.1]) by localhost (smtp1.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP id krEbwNU6BXLQ; Mon, 15 Apr 2024 16:23:04 +0000 (UTC) X-Comment: SPF check N/A for local connections - client-ip=140.211.166.34; helo=ash.osuosl.org; envelope-from=buildroot-bounces@buildroot.org; receiver= DKIM-Filter: OpenDKIM Filter v2.11.0 smtp1.osuosl.org 9FC0A81774 Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by smtp1.osuosl.org (Postfix) with ESMTP id 9FC0A81774; Mon, 15 Apr 2024 16:23:04 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from smtp2.osuosl.org (smtp2.osuosl.org [140.211.166.133]) by ash.osuosl.org (Postfix) with ESMTP id 1CCB71BF298 for ; Mon, 15 Apr 2024 16:22:59 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp2.osuosl.org (Postfix) with ESMTP id 16B68404A6 for ; Mon, 15 Apr 2024 16:22:59 +0000 (UTC) X-Virus-Scanned: amavis at osuosl.org Received: from smtp2.osuosl.org ([127.0.0.1]) by localhost (smtp2.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP id 4suxT8tMJpVh for ; Mon, 15 Apr 2024 16:22:58 +0000 (UTC) Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=2a00:1450:4864:20::234; helo=mail-lj1-x234.google.com; envelope-from=thomas.perale@essensium.com; receiver= DMARC-Filter: OpenDMARC Filter v1.4.2 smtp2.osuosl.org E3418400FE DKIM-Filter: OpenDKIM Filter v2.11.0 smtp2.osuosl.org E3418400FE Received: from mail-lj1-x234.google.com (mail-lj1-x234.google.com [IPv6:2a00:1450:4864:20::234]) by smtp2.osuosl.org (Postfix) with ESMTPS id E3418400FE for ; Mon, 15 Apr 2024 16:22:57 +0000 (UTC) Received: by mail-lj1-x234.google.com with SMTP id 38308e7fff4ca-2d8b4778f5fso24386791fa.3 for ; Mon, 15 Apr 2024 09:22:57 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713198175; x=1713802975; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=/2PhXelcqlX/zZX5Ov4PrNE+gepbTcmvlJn3IeBQO00=; b=hNUWczn07Q/tz+qOSOErK9/6sN+VufyzXj7m67CYqYB/AZ9z1yqb+b6e8fP2yPtsDG Ms8SShDmBSe+riVbRjbhHFr8aag6iv3bPh1aRToabNFiX6UwL5rt8oZIg6oZ+NV240BN FLTt+wRGF0uT1JspFIobQIieIWx+n1PvjZQ1gHo0rTbHlZ9yprGWz+TSNn+auGhqW7DW iChm5g4wET2J6oFQBO/HOsvhf/RjT6YuBjOTz4c1NKcaz8AkuMojLEz8p9flJ0+/ZfJn d5wQsZRCua+z7yTnTkiEZqG29+xqs1JwCsttxBt0jXSvqxJlmy5rKquLWNzBNJFNJYmm O1Vg== X-Gm-Message-State: AOJu0YyLjvJoPMYzYWmx01UzBM8Zc39UoiZXubYC4otLHJgR76NXQqm+ FVz/QKiMpiH7Vien2Kd3UcZSjbnW9THqPzpkf/QtQuLe67OwexIAadzkSp66v8x7Xk43MbHFDIV 3eIM= X-Google-Smtp-Source: AGHT+IE6vJ9tVsnpTDHmT3gH8Hc5UicWW6AYOcoHdl6NKKyxNYVKv6Iz0LLwbPsBUx4KckKZ9siz2A== X-Received: by 2002:a05:6512:41d:b0:518:a55b:b612 with SMTP id u29-20020a056512041d00b00518a55bb612mr4243231lfk.54.1713198175166; Mon, 15 Apr 2024 09:22:55 -0700 (PDT) Received: from localhost.localdomain ([79.132.235.33]) by smtp.gmail.com with ESMTPSA id fl16-20020a05600c0b9000b00418631f91c1sm4302938wmb.28.2024.04.15.09.22.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 15 Apr 2024 09:22:54 -0700 (PDT) X-Google-Original-From: Thomas Perale To: buildroot@buildroot.org Date: Mon, 15 Apr 2024 18:22:22 +0200 Message-ID: <20240415162229.1357491-2-thomas.perale@mind.be> X-Mailer: git-send-email 2.44.0 In-Reply-To: <20240415162229.1357491-1-thomas.perale@mind.be> References: <20240415162229.1357491-1-thomas.perale@mind.be> MIME-Version: 1.0 X-Mailman-Original-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=essensium.com; s=google; t=1713198175; x=1713802975; darn=buildroot.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=/2PhXelcqlX/zZX5Ov4PrNE+gepbTcmvlJn3IeBQO00=; b=Adf9W+nktvWbe+UGk2cPJt22gwluf4GqRLajbtRqk1H1N1M9h7zDUXARN7wxvRdIFd ZLQjoC3pTu5b0jpirOsPuCZzu4P0a96+vRBFCbLeYJLrv7R12QxIJ0ONRYZIrkTFDRxP Dv89fhNJ11FsV3GOQemcZ4gW+kcaX+2if8q12Q4ADDYFWRkLl2JMflqLXrjYau9Vt4mB ERAscP0qLgrZPcz2stiZX3utLqOqZpb+7NNMp5fcQeaqwH9lyCQLval5z2ucfuYJFPyb Eoar24b7REAxW75tiDZYwC8IT8csPV9oQ+m3ri/8Sv4vn9nfgR0GZ571WX6cMlDYO5Bv qizw== X-Mailman-Original-Authentication-Results: smtp2.osuosl.org; dmarc=pass (p=quarantine dis=none) header.from=essensium.com X-Mailman-Original-Authentication-Results: smtp2.osuosl.org; dkim=pass (2048-bit key, unprotected) header.d=essensium.com header.i=@essensium.com header.a=rsa-sha256 header.s=google header.b=Adf9W+nk Subject: [Buildroot] [PATCH v2 1/6] DEVELOPERS: add Thomas Perale for 'go' X-BeenThere: buildroot@buildroot.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Thomas Perale via buildroot From: Thomas Perale Reply-To: Thomas Perale Cc: Christian Stewart , "Yann E . MORIN" , Thomas Perale Errors-To: buildroot-bounces@buildroot.org Sender: "buildroot" Signed-off-by: Thomas Perale --- DEVELOPERS | 3 +++ 1 file changed, 3 insertions(+) -- 2.44.0 diff --git a/DEVELOPERS b/DEVELOPERS index 399b2931ff..039b803d50 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -2979,6 +2979,9 @@ F: package/frotz/ F: package/kvm-unit-tests/ F: package/xorcurses/ +N: Thomas Perale +F: package/go/ + N: Thomas Petazzoni F: arch/Config.in.arm F: board/beaglev/ From patchwork Mon Apr 15 16:22:23 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Thomas Perale X-Patchwork-Id: 1923803 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=buildroot.org (client-ip=2605:bc80:3010::138; helo=smtp1.osuosl.org; envelope-from=buildroot-bounces@buildroot.org; receiver=patchwork.ozlabs.org) Received: from smtp1.osuosl.org (smtp1.osuosl.org [IPv6:2605:bc80:3010::138]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4VJCCG3yQQz1yY4 for ; Tue, 16 Apr 2024 02:23:22 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by smtp1.osuosl.org (Postfix) with ESMTP id 9603B81831; Mon, 15 Apr 2024 16:23:20 +0000 (UTC) X-Virus-Scanned: amavis at osuosl.org Received: from smtp1.osuosl.org ([127.0.0.1]) by localhost (smtp1.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP id hXh8-NCHceNB; Mon, 15 Apr 2024 16:23:17 +0000 (UTC) X-Comment: SPF check N/A for local connections - client-ip=140.211.166.34; helo=ash.osuosl.org; envelope-from=buildroot-bounces@buildroot.org; receiver= DKIM-Filter: OpenDKIM Filter v2.11.0 smtp1.osuosl.org 1C6B581852 Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by smtp1.osuosl.org (Postfix) with ESMTP id 1C6B581852; Mon, 15 Apr 2024 16:23:17 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from smtp4.osuosl.org (smtp4.osuosl.org [140.211.166.137]) by ash.osuosl.org (Postfix) with ESMTP id 1610C1BF298 for ; Mon, 15 Apr 2024 16:23:01 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp4.osuosl.org (Postfix) with ESMTP id 01FED40628 for ; Mon, 15 Apr 2024 16:23:01 +0000 (UTC) X-Virus-Scanned: amavis at osuosl.org Received: from smtp4.osuosl.org ([127.0.0.1]) by localhost (smtp4.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP id OnfdX3QVBM76 for ; Mon, 15 Apr 2024 16:22:59 +0000 (UTC) Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=2a00:1450:4864:20::333; helo=mail-wm1-x333.google.com; envelope-from=thomas.perale@essensium.com; receiver= DMARC-Filter: OpenDMARC Filter v1.4.2 smtp4.osuosl.org 935144027C DKIM-Filter: OpenDKIM Filter v2.11.0 smtp4.osuosl.org 935144027C Received: from mail-wm1-x333.google.com (mail-wm1-x333.google.com [IPv6:2a00:1450:4864:20::333]) by smtp4.osuosl.org (Postfix) with ESMTPS id 935144027C for ; Mon, 15 Apr 2024 16:22:58 +0000 (UTC) Received: by mail-wm1-x333.google.com with SMTP id 5b1f17b1804b1-418672b4714so6021075e9.3 for ; Mon, 15 Apr 2024 09:22:58 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713198176; x=1713802976; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=tb4u9gMZDG5pbaDq+WSDdlpQGXpWHnLyJGufKG+Vq78=; b=bIL8gcqIvh0GDuHL8uTcNCwcxaD6O93hcxdNmXXy0dwq0kwlPP45PMfa1ojwXHGsCr P7kYtRa085D62mxAk+SvkfDoW/kpakiQm+v33CdMnD20Ln/stRAtfLFuyUR6iN675Bey eggrAGGmg26S31zxHMzijuimnzKctlmmyeCwOpFH//CfYQ5CEYNz8Ycgt6lw8ibOpoew RWoeGsHqrNBUlclzK/dlnBovKCkNlSwTcQ/RV29Nxa5WB76dIsO+2t9dd6ooPY03sJ+a 2EpDpGCCOC74BP3xLvpzUAFJfJmbYbg+YTig8eTKs/3CfDac2dawq5+1jdYmovP+RWpR 1KSQ== X-Gm-Message-State: AOJu0Yz+BSg54iTacG24J9s26yA03kwf3Yeme+w+jUdaCI4RVkoLMB55 h9wP/8oPHsPZJAux2lXDnxBNFkH7rBwcXsPXBmJW9XktmpYXJrJkT6dqdHvABp7TUqfUrvGz65M u900= X-Google-Smtp-Source: AGHT+IGZuVByW7ZM8Kego1iUEWTnZSJm1jMEoq5RT6sQ3TVNkdP64QuXWOv9Xu1HieovoMt7j1E/uQ== X-Received: by 2002:a05:600c:4749:b0:414:12f6:a105 with SMTP id w9-20020a05600c474900b0041412f6a105mr7137711wmo.5.1713198175950; Mon, 15 Apr 2024 09:22:55 -0700 (PDT) Received: from localhost.localdomain ([79.132.235.33]) by smtp.gmail.com with ESMTPSA id fl16-20020a05600c0b9000b00418631f91c1sm4302938wmb.28.2024.04.15.09.22.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 15 Apr 2024 09:22:55 -0700 (PDT) X-Google-Original-From: Thomas Perale To: buildroot@buildroot.org Date: Mon, 15 Apr 2024 18:22:23 +0200 Message-ID: <20240415162229.1357491-3-thomas.perale@mind.be> X-Mailer: git-send-email 2.44.0 In-Reply-To: <20240415162229.1357491-1-thomas.perale@mind.be> References: <20240415162229.1357491-1-thomas.perale@mind.be> MIME-Version: 1.0 X-Mailman-Original-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=essensium.com; s=google; t=1713198176; x=1713802976; darn=buildroot.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=tb4u9gMZDG5pbaDq+WSDdlpQGXpWHnLyJGufKG+Vq78=; b=QoJkqoovYTu+bJ6+L2GNjNDSuihDr5vzmXaZCLEkIYAVwjU9h54Sqji03VslZVuxnU wrLBokobahoDT4c/44/oOJ0TOPIWIMdK96lerPpDzpHgskRptsg2Xm3HI/Tdx3fGyUUW /ob1/1B1pGx3uqXJqjAK+GNap6JjJa/Yy9gqwP+KK81//P7+Vl1Mx1TBsMikQm1FKK+/ K/ntpglQCQcdbvyCfRH+B1pMAQtk85aELznW4UsC4HUulUl42Sbs0FbH5GZV0RVfZzim yz7G0L++CyxMe1ijxZcS5pKo7VIs+0nUjNLaMKgvxDQI0nnF0//5mOj78NOA1Crw/gvW bwKg== X-Mailman-Original-Authentication-Results: smtp4.osuosl.org; dmarc=pass (p=quarantine dis=none) header.from=essensium.com X-Mailman-Original-Authentication-Results: smtp4.osuosl.org; dkim=pass (2048-bit key, unprotected) header.d=essensium.com header.i=@essensium.com header.a=rsa-sha256 header.s=google header.b=QoJkqoov Subject: [Buildroot] [PATCH v2 2/6] package/go: new subdirectory for go variants X-BeenThere: buildroot@buildroot.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Thomas Perale via buildroot From: Thomas Perale Reply-To: Thomas Perale Cc: Christian Stewart , "Yann E . MORIN" , Thomas Perale Errors-To: buildroot-bounces@buildroot.org Sender: "buildroot" Move every go compiler-related packages into a newly created package/go/ subdirectory. This subdirectory structure moves the GO_VERSION variable into the common package/go/go.mk file. In the next commits, host-go will be turned into a virtual-package and the common GO_VERSION force the providers to use the same Go compiler version. Common variables to all providers are kept in package/go/go.mk and package/go/Config.in.host. Also, the subdirectory structure forces the evaluation of the common GO_VERSION before the providers access it. Signed-off-by: Thomas Perale --- .checkpackageignore | 2 +- DEVELOPERS | 3 -- package/Config.in.host | 3 -- package/go/Config.in.host | 4 ++ .../go-bootstrap-stage1/Config.in.host | 0 .../go-bootstrap-stage1.hash | 0 .../go-bootstrap-stage1.mk | 0 .../go-bootstrap-stage2/Config.in.host | 0 .../go-bootstrap-stage2.hash | 0 .../go-bootstrap-stage2.mk | 0 .../go-bootstrap-stage3/Config.in.host | 0 .../go-bootstrap-stage3.hash | 0 .../go-bootstrap-stage3.mk | 0 package/go/go.mk | 40 +------------- ...explicit-option-for-crosscompilation.patch | 0 ...ldvcs-false-when-building-go-bootstr.patch | 0 package/go/{ => go}/go.hash | 0 package/go/go/go.mk | 53 +++++++++++++++++++ 18 files changed, 60 insertions(+), 45 deletions(-) rename package/{ => go}/go-bootstrap-stage1/Config.in.host (100%) rename package/{ => go}/go-bootstrap-stage1/go-bootstrap-stage1.hash (100%) rename package/{ => go}/go-bootstrap-stage1/go-bootstrap-stage1.mk (100%) rename package/{ => go}/go-bootstrap-stage2/Config.in.host (100%) rename package/{ => go}/go-bootstrap-stage2/go-bootstrap-stage2.hash (100%) rename package/{ => go}/go-bootstrap-stage2/go-bootstrap-stage2.mk (100%) rename package/{ => go}/go-bootstrap-stage3/Config.in.host (100%) rename package/{ => go}/go-bootstrap-stage3/go-bootstrap-stage3.hash (100%) rename package/{ => go}/go-bootstrap-stage3/go-bootstrap-stage3.mk (100%) rename package/go/{ => go}/0001-build.go-explicit-option-for-crosscompilation.patch (100%) rename package/go/{ => go}/0002-cmd-dist-set-buildvcs-false-when-building-go-bootstr.patch (100%) rename package/go/{ => go}/go.hash (100%) create mode 100644 package/go/go/go.mk -- 2.44.0 diff --git a/.checkpackageignore b/.checkpackageignore index 1b336ce7a3..b3eab26071 100644 --- a/.checkpackageignore +++ b/.checkpackageignore @@ -465,7 +465,7 @@ package/glorytun/0002-aegis256.c-fix-aarch64-build-with-uclibc.patch lib_patch.U package/gnu-efi/0001-Make.defaults-don-t-override-ARCH-when-cross-compili.patch lib_patch.Upstream package/gnupg/0001-build-Always-use-EXTERN_UNLESS_MAIN_MODULE-pattern.patch lib_patch.Upstream package/gnuplot/0001-configure-add-without-demo-option.patch lib_patch.Upstream -package/go/0001-build.go-explicit-option-for-crosscompilation.patch lib_patch.Upstream +package/go/go/0001-build.go-explicit-option-for-crosscompilation.patch lib_patch.Upstream package/gob2/0001-dont-include-from-prefix.patch lib_patch.Upstream package/gobject-introspection/0001-disable-tests.patch lib_patch.Upstream package/gobject-introspection/0002-Add-rpath-links-to-ccompiler.patch lib_patch.Upstream diff --git a/DEVELOPERS b/DEVELOPERS index 039b803d50..51fc4962c9 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -603,9 +603,6 @@ F: package/docker-engine/ F: package/embiggen-disk/ F: package/fuse-overlayfs/ F: package/go/ -F: package/go-bootstrap-stage1/ -F: package/go-bootstrap-stage2/ -F: package/go-bootstrap-stage3/ F: package/gocryptfs/ F: package/mbpfan/ F: package/moby-buildkit/ diff --git a/package/Config.in.host b/package/Config.in.host index 9543a22ffc..2c481cfae7 100644 --- a/package/Config.in.host +++ b/package/Config.in.host @@ -44,9 +44,6 @@ menu "Host utilities" source "package/genpart/Config.in.host" source "package/gnupg/Config.in.host" source "package/go/Config.in.host" - source "package/go-bootstrap-stage1/Config.in.host" - source "package/go-bootstrap-stage2/Config.in.host" - source "package/go-bootstrap-stage3/Config.in.host" source "package/google-breakpad/Config.in.host" source "package/gptfdisk/Config.in.host" source "package/imagemagick/Config.in.host" diff --git a/package/go/Config.in.host b/package/go/Config.in.host index 0d89e875ad..7edf45850d 100644 --- a/package/go/Config.in.host +++ b/package/go/Config.in.host @@ -31,3 +31,7 @@ config BR2_PACKAGE_HOST_GO_HOST_ARCH_SUPPORTS bool default y depends on BR2_PACKAGE_HOST_GO_BOOTSTRAP_STAGE3_ARCH_SUPPORTS + +source "package/go/go-bootstrap-stage1/Config.in.host" +source "package/go/go-bootstrap-stage2/Config.in.host" +source "package/go/go-bootstrap-stage3/Config.in.host" diff --git a/package/go-bootstrap-stage1/Config.in.host b/package/go/go-bootstrap-stage1/Config.in.host similarity index 100% rename from package/go-bootstrap-stage1/Config.in.host rename to package/go/go-bootstrap-stage1/Config.in.host diff --git a/package/go-bootstrap-stage1/go-bootstrap-stage1.hash b/package/go/go-bootstrap-stage1/go-bootstrap-stage1.hash similarity index 100% rename from package/go-bootstrap-stage1/go-bootstrap-stage1.hash rename to package/go/go-bootstrap-stage1/go-bootstrap-stage1.hash diff --git a/package/go-bootstrap-stage1/go-bootstrap-stage1.mk b/package/go/go-bootstrap-stage1/go-bootstrap-stage1.mk similarity index 100% rename from package/go-bootstrap-stage1/go-bootstrap-stage1.mk rename to package/go/go-bootstrap-stage1/go-bootstrap-stage1.mk diff --git a/package/go-bootstrap-stage2/Config.in.host b/package/go/go-bootstrap-stage2/Config.in.host similarity index 100% rename from package/go-bootstrap-stage2/Config.in.host rename to package/go/go-bootstrap-stage2/Config.in.host diff --git a/package/go-bootstrap-stage2/go-bootstrap-stage2.hash b/package/go/go-bootstrap-stage2/go-bootstrap-stage2.hash similarity index 100% rename from package/go-bootstrap-stage2/go-bootstrap-stage2.hash rename to package/go/go-bootstrap-stage2/go-bootstrap-stage2.hash diff --git a/package/go-bootstrap-stage2/go-bootstrap-stage2.mk b/package/go/go-bootstrap-stage2/go-bootstrap-stage2.mk similarity index 100% rename from package/go-bootstrap-stage2/go-bootstrap-stage2.mk rename to package/go/go-bootstrap-stage2/go-bootstrap-stage2.mk diff --git a/package/go-bootstrap-stage3/Config.in.host b/package/go/go-bootstrap-stage3/Config.in.host similarity index 100% rename from package/go-bootstrap-stage3/Config.in.host rename to package/go/go-bootstrap-stage3/Config.in.host diff --git a/package/go-bootstrap-stage3/go-bootstrap-stage3.hash b/package/go/go-bootstrap-stage3/go-bootstrap-stage3.hash similarity index 100% rename from package/go-bootstrap-stage3/go-bootstrap-stage3.hash rename to package/go/go-bootstrap-stage3/go-bootstrap-stage3.hash diff --git a/package/go-bootstrap-stage3/go-bootstrap-stage3.mk b/package/go/go-bootstrap-stage3/go-bootstrap-stage3.mk similarity index 100% rename from package/go-bootstrap-stage3/go-bootstrap-stage3.mk rename to package/go/go-bootstrap-stage3/go-bootstrap-stage3.mk diff --git a/package/go/go.mk b/package/go/go.mk index 0e39ad9f8c..104a4a73fb 100644 --- a/package/go/go.mk +++ b/package/go/go.mk @@ -5,14 +5,7 @@ ################################################################################ GO_VERSION = 1.22.2 -GO_SITE = https://storage.googleapis.com/golang -GO_SOURCE = go$(GO_VERSION).src.tar.gz -GO_LICENSE = BSD-3-Clause -GO_LICENSE_FILES = LICENSE -GO_CPE_ID_VENDOR = golang - -HOST_GO_DEPENDENCIES = host-go-bootstrap-stage3 HOST_GO_GOPATH = $(HOST_DIR)/share/go-path HOST_GO_HOST_CACHE = $(HOST_DIR)/share/host-go-cache HOST_GO_ROOT = $(HOST_DIR)/lib/go @@ -96,15 +89,6 @@ else HOST_GO_CGO_ENABLED = 0 endif -HOST_GO_CROSS_ENV = \ - CC_FOR_TARGET="$(TARGET_CC)" \ - CXX_FOR_TARGET="$(TARGET_CXX)" \ - GOOS="linux" \ - GOARCH=$(GO_GOARCH) \ - $(if $(GO_GO386),GO386=$(GO_GO386)) \ - $(if $(GO_GOARM),GOARM=$(GO_GOARM)) \ - GO_ASSUME_CROSSCOMPILING=1 - else # !BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS # host-go can still be used to build packages for the host. No need to set all # the arch stuff since we will not be cross-compiling. @@ -123,27 +107,7 @@ HOST_GO_HOST_ENV = \ CGO_CXXFLAGS="$(HOST_CXXFLAGS)" \ CGO_LDFLAGS="$(HOST_LDFLAGS)" -# The go build system is not compatible with ccache, so use -# HOSTCC_NOCCACHE. See https://github.com/golang/go/issues/11685. -HOST_GO_MAKE_ENV = \ - GO111MODULE=off \ - GOCACHE=$(HOST_GO_HOST_CACHE) \ - GOROOT_BOOTSTRAP=$(HOST_GO_BOOTSTRAP_STAGE3_ROOT) \ - GOROOT_FINAL=$(HOST_GO_ROOT) \ - GOROOT="$(@D)" \ - GOBIN="$(@D)/bin" \ - GOOS=linux \ - CC=$(HOSTCC_NOCCACHE) \ - CXX=$(HOSTCXX_NOCCACHE) \ - CGO_ENABLED=$(HOST_GO_CGO_ENABLED) \ - $(HOST_GO_CROSS_ENV) - -define HOST_GO_BUILD_CMDS - cd $(@D)/src && \ - $(HOST_GO_MAKE_ENV) ./make.bash $(if $(VERBOSE),-v) -endef - -define HOST_GO_INSTALL_CMDS +define GO_BINARIES_INSTALL $(INSTALL) -D -m 0755 $(@D)/bin/go $(HOST_GO_ROOT)/bin/go $(INSTALL) -D -m 0755 $(@D)/bin/gofmt $(HOST_GO_ROOT)/bin/gofmt @@ -165,4 +129,4 @@ define HOST_GO_INSTALL_CMDS find $(HOST_GO_ROOT) -type f -exec touch -r $(@D)/bin/go {} \; endef -$(eval $(host-generic-package)) +include $(sort $(wildcard package/go/*/*.mk)) diff --git a/package/go/0001-build.go-explicit-option-for-crosscompilation.patch b/package/go/go/0001-build.go-explicit-option-for-crosscompilation.patch similarity index 100% rename from package/go/0001-build.go-explicit-option-for-crosscompilation.patch rename to package/go/go/0001-build.go-explicit-option-for-crosscompilation.patch diff --git a/package/go/0002-cmd-dist-set-buildvcs-false-when-building-go-bootstr.patch b/package/go/go/0002-cmd-dist-set-buildvcs-false-when-building-go-bootstr.patch similarity index 100% rename from package/go/0002-cmd-dist-set-buildvcs-false-when-building-go-bootstr.patch rename to package/go/go/0002-cmd-dist-set-buildvcs-false-when-building-go-bootstr.patch diff --git a/package/go/go.hash b/package/go/go/go.hash similarity index 100% rename from package/go/go.hash rename to package/go/go/go.hash diff --git a/package/go/go/go.mk b/package/go/go/go.mk new file mode 100644 index 0000000000..c3c40922f4 --- /dev/null +++ b/package/go/go/go.mk @@ -0,0 +1,53 @@ +################################################################################ +# +# go +# +################################################################################ + +GO_SITE = https://storage.googleapis.com/golang +GO_SOURCE = go$(GO_VERSION).src.tar.gz + +GO_LICENSE = BSD-3-Clause +GO_LICENSE_FILES = LICENSE +GO_CPE_ID_VENDOR = golang + +HOST_GO_DEPENDENCIES = host-go-bootstrap-stage3 + +ifeq ($(BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS),y) + +HOST_GO_CROSS_ENV = \ + CC_FOR_TARGET="$(TARGET_CC)" \ + CXX_FOR_TARGET="$(TARGET_CXX)" \ + GOOS="linux" \ + GOARCH=$(GO_GOARCH) \ + $(if $(GO_GO386),GO386=$(GO_GO386)) \ + $(if $(GO_GOARM),GOARM=$(GO_GOARM)) \ + GO_ASSUME_CROSSCOMPILING=1 + +endif + +# The go build system is not compatible with ccache, so use +# HOSTCC_NOCCACHE. See https://github.com/golang/go/issues/11685. +HOST_GO_MAKE_ENV = \ + GO111MODULE=off \ + GOCACHE=$(HOST_GO_HOST_CACHE) \ + GOROOT_BOOTSTRAP=$(HOST_GO_BOOTSTRAP_STAGE3_ROOT) \ + GOROOT_FINAL=$(HOST_GO_ROOT) \ + GOROOT="$(@D)" \ + GOBIN="$(@D)/bin" \ + GOOS=linux \ + CC=$(HOSTCC_NOCCACHE) \ + CXX=$(HOSTCXX_NOCCACHE) \ + CGO_ENABLED=$(HOST_GO_CGO_ENABLED) \ + $(HOST_GO_CROSS_ENV) + +define HOST_GO_BUILD_CMDS + cd $(@D)/src && \ + $(HOST_GO_MAKE_ENV) ./make.bash $(if $(VERBOSE),-v) +endef + +define HOST_GO_INSTALL_CMDS + $(GO_BINARIES_INSTALL) +endef + +$(eval $(host-generic-package)) From patchwork Mon Apr 15 16:22:24 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Thomas Perale X-Patchwork-Id: 1923801 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=buildroot.org (client-ip=2605:bc80:3010::138; helo=smtp1.osuosl.org; envelope-from=buildroot-bounces@buildroot.org; receiver=patchwork.ozlabs.org) Received: from smtp1.osuosl.org (smtp1.osuosl.org [IPv6:2605:bc80:3010::138]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4VJCC30ySDz1yY4 for ; Tue, 16 Apr 2024 02:23:11 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by smtp1.osuosl.org (Postfix) with ESMTP id 95CB98177C; Mon, 15 Apr 2024 16:23:09 +0000 (UTC) X-Virus-Scanned: amavis at osuosl.org Received: from smtp1.osuosl.org ([127.0.0.1]) by localhost (smtp1.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP id XPE85QuEjbyl; Mon, 15 Apr 2024 16:23:07 +0000 (UTC) X-Comment: SPF check N/A for local connections - client-ip=140.211.166.34; helo=ash.osuosl.org; envelope-from=buildroot-bounces@buildroot.org; receiver= DKIM-Filter: OpenDKIM Filter v2.11.0 smtp1.osuosl.org 6721D817B1 Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by smtp1.osuosl.org (Postfix) with ESMTP id 6721D817B1; Mon, 15 Apr 2024 16:23:07 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from smtp1.osuosl.org (smtp1.osuosl.org [140.211.166.138]) by ash.osuosl.org (Postfix) with ESMTP id 51D431BF298 for ; Mon, 15 Apr 2024 16:23:00 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp1.osuosl.org (Postfix) with ESMTP id 3C36281774 for ; Mon, 15 Apr 2024 16:23:00 +0000 (UTC) X-Virus-Scanned: amavis at osuosl.org Received: from smtp1.osuosl.org ([127.0.0.1]) by localhost (smtp1.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP id h1KM4Z8I0_kb for ; Mon, 15 Apr 2024 16:22:59 +0000 (UTC) Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=2a00:1450:4864:20::332; helo=mail-wm1-x332.google.com; envelope-from=thomas.perale@essensium.com; receiver= DMARC-Filter: OpenDMARC Filter v1.4.2 smtp1.osuosl.org AC80D81769 DKIM-Filter: OpenDKIM Filter v2.11.0 smtp1.osuosl.org AC80D81769 Received: from mail-wm1-x332.google.com (mail-wm1-x332.google.com [IPv6:2a00:1450:4864:20::332]) by smtp1.osuosl.org (Postfix) with ESMTPS id AC80D81769 for ; Mon, 15 Apr 2024 16:22:58 +0000 (UTC) Received: by mail-wm1-x332.google.com with SMTP id 5b1f17b1804b1-41879f3d204so4331995e9.3 for ; Mon, 15 Apr 2024 09:22:58 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713198176; x=1713802976; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=HchZNp9MD4Qai4FjVXlA/1NLCeSnh8b+EXR9nXvOVlI=; b=TQA6tKB30wDbdd8bgrlHOvBgdam8e08dqh9Hx8IuJmpLnXkF4fh/fGhYe5syiaXkL3 R8Jsd5bAy1mS+N21ebx+XuU7yVIbG3oboUqVnDJoEkyTyKtVgmYKhk/pmRbIOakxKvom xLOwlk6HDswbKfIJWIwPZaANlwHtFVAIvfzvgKaNL8yTK5m5G/fOFaf5VRcu4qJPvaaX AMiUHo2LJ2rQXz69pZ9UJeVa7w4NrXj0Uw/6YYib5lKD0E8rjEUx48DLYiIORoat+j6j DqycdfwJGOBq38cEpN/WKkCjeH7NI6Jf++NWS+NJ0dyr1SyJoRA/bJZHNq/kpDHkUFYS U/PQ== X-Gm-Message-State: AOJu0Yyt3JGEvE3fpGD72LNZYWjfM238h1gFjjZURbUg92Ky/aWU/ume /+B0tziBJz5bHrzgAB1iSS0xMJIcmnFI0ZvM9GZvZj7S32XMKBbuhyg6q8XbMdSDL8Dj/edOxxs +15w= X-Google-Smtp-Source: AGHT+IFpLQ0c5CxjLCPkEsENl1LHPxWCMlDzf2iefQ4fgTRbZaJjOaOOVNxk41PugCKNMT1Rb0Pa9Q== X-Received: by 2002:a05:600c:3549:b0:418:23d7:816f with SMTP id i9-20020a05600c354900b0041823d7816fmr3945840wmq.17.1713198176517; Mon, 15 Apr 2024 09:22:56 -0700 (PDT) Received: from localhost.localdomain ([79.132.235.33]) by smtp.gmail.com with ESMTPSA id fl16-20020a05600c0b9000b00418631f91c1sm4302938wmb.28.2024.04.15.09.22.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 15 Apr 2024 09:22:56 -0700 (PDT) X-Google-Original-From: Thomas Perale To: buildroot@buildroot.org Date: Mon, 15 Apr 2024 18:22:24 +0200 Message-ID: <20240415162229.1357491-4-thomas.perale@mind.be> X-Mailer: git-send-email 2.44.0 In-Reply-To: <20240415162229.1357491-1-thomas.perale@mind.be> References: <20240415162229.1357491-1-thomas.perale@mind.be> MIME-Version: 1.0 X-Mailman-Original-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=essensium.com; s=google; t=1713198176; x=1713802976; darn=buildroot.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=HchZNp9MD4Qai4FjVXlA/1NLCeSnh8b+EXR9nXvOVlI=; b=jc2cHi4yvwGQ2XDTrSajiJWAlW6SplpbX9ArS/jXkWjopyf7YE7u6oXcW3zTHfdZQk B61yApDhfqmCL1Qcg0Ugr0dHL3VoWDCaB3q+O8ykWPvogkD5x1nATVMUTMap8QMV1tfK 2oc/13np5pfbpTPY4hvnylyhS5hyGi43Sw0FJBFoFKQcQ8h38Vp4g1yEpUrYSW4nhixN xuTKuxNUMHpwhxx/p6hzbUyoVOXSMNeA40xUnDFrBvqBxsZX/j3syCY7qF9HDLH2DfTB Phusidroj50Dl8iy5Stv5GV2cKiIKeJB2OYq7MVqXcphnIqcVZ96t9VLyZ83sRhHf2vr eSxg== X-Mailman-Original-Authentication-Results: smtp1.osuosl.org; dmarc=pass (p=quarantine dis=none) header.from=essensium.com X-Mailman-Original-Authentication-Results: smtp1.osuosl.org; dkim=pass (2048-bit key, unprotected) header.d=essensium.com header.i=@essensium.com header.a=rsa-sha256 header.s=google header.b=jc2cHi4y Subject: [Buildroot] [PATCH v2 3/6] package/pkg-golang: select BR2_PACKAGE_HOST_GO X-BeenThere: buildroot@buildroot.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Thomas Perale via buildroot From: Thomas Perale Reply-To: Thomas Perale Cc: Christian Stewart , "Yann E . MORIN" , Thomas Perale Errors-To: buildroot-bounces@buildroot.org Sender: "buildroot" Makes every packages built by the Go compiler select a new variable introduced in this patch: BR2_PACKAGE_HOST_GO. In later commits Go compiler variant will be introduced (built from source, pre-built binaries) and selecting BR2_PACKAGE_HOST_GO will force to add host-go provider to the dependency list. The same pattern is used for Rust packages. Signed-off-by: Thomas Perale --- package/balena-engine/Config.in | 1 + package/cni-plugins/Config.in | 1 + package/containerd/Config.in | 1 + package/crucible/Config.in | 1 + package/delve/Config.in | 1 + package/delve/Config.in.host | 1 + package/docker-cli/Config.in | 1 + package/docker-compose/Config.in | 1 + package/docker-engine/Config.in | 1 + package/embiggen-disk/Config.in | 1 + package/flannel/Config.in | 1 + package/gitlab-runner/Config.in | 1 + package/go/Config.in.host | 5 +++++ package/gocryptfs/Config.in | 1 + package/mender-artifact/Config.in.host | 1 + package/mender-connect/Config.in | 1 + package/mender/Config.in | 1 + package/moby-buildkit/Config.in | 1 + package/moby-buildkit/Config.in.host | 1 + package/nerdctl/Config.in | 1 + package/runc/Config.in | 1 + package/runc/Config.in.host | 1 + package/tinifier/Config.in | 1 + package/wtfutil/Config.in | 1 + 24 files changed, 28 insertions(+) -- 2.44.0 diff --git a/package/balena-engine/Config.in b/package/balena-engine/Config.in index 02f694515e..5966b33f58 100644 --- a/package/balena-engine/Config.in +++ b/package/balena-engine/Config.in @@ -5,6 +5,7 @@ config BR2_PACKAGE_BALENA_ENGINE depends on !BR2_TOOLCHAIN_USES_UCLIBC # no fexecve depends on BR2_USE_MMU # util-linux select BR2_PACKAGE_CGROUPFS_MOUNT if !BR2_PACKAGE_SYSTEMD # runtime + select BR2_PACKAGE_HOST_GO select BR2_PACKAGE_IPTABLES # runtime select BR2_PACKAGE_UTIL_LINUX # runtime select BR2_PACKAGE_UTIL_LINUX_BINARIES # runtime diff --git a/package/cni-plugins/Config.in b/package/cni-plugins/Config.in index 25e6ff534d..6d4ca0a5b4 100644 --- a/package/cni-plugins/Config.in +++ b/package/cni-plugins/Config.in @@ -5,6 +5,7 @@ config BR2_PACKAGE_CNI_PLUGINS depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_TOOLCHAIN_USES_UCLIBC # no fexecve depends on BR2_USE_MMU + select BR2_PACKAGE_HOST_GO help Container Networking Interface plugins. diff --git a/package/containerd/Config.in b/package/containerd/Config.in index 2dd04b109c..f014c56e10 100644 --- a/package/containerd/Config.in +++ b/package/containerd/Config.in @@ -5,6 +5,7 @@ config BR2_PACKAGE_CONTAINERD depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_TOOLCHAIN_USES_UCLIBC # runc depends on BR2_USE_MMU # util-linux + select BR2_PACKAGE_HOST_GO select BR2_PACKAGE_RUNC if !BR2_PACKAGE_CRUN # runtime dependency select BR2_PACKAGE_UTIL_LINUX # runtime dependency select BR2_PACKAGE_UTIL_LINUX_BINARIES diff --git a/package/crucible/Config.in b/package/crucible/Config.in index b27eb31ae5..1e1b29c3df 100644 --- a/package/crucible/Config.in +++ b/package/crucible/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_CRUCIBLE bool "crucible" depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS + select BR2_PACKAGE_HOST_GO help Crucible is a One-Time-Programmable (OTP) fusing tool for the i.MX family. diff --git a/package/delve/Config.in b/package/delve/Config.in index 9428e4016a..288dc1ea15 100644 --- a/package/delve/Config.in +++ b/package/delve/Config.in @@ -7,6 +7,7 @@ config BR2_PACKAGE_DELVE_ARCH_SUPPORTS default y if BR2_x86_64 depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS depends on BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS + select BR2_PACKAGE_HOST_GO config BR2_PACKAGE_DELVE bool "delve" diff --git a/package/delve/Config.in.host b/package/delve/Config.in.host index dab5ca8914..0938ab0659 100644 --- a/package/delve/Config.in.host +++ b/package/delve/Config.in.host @@ -1,6 +1,7 @@ config BR2_PACKAGE_HOST_DELVE bool "host delve" depends on BR2_PACKAGE_HOST_GO_HOST_ARCH_SUPPORTS + select BR2_PACKAGE_HOST_GO help Delve is a debugger for the Go programming language. diff --git a/package/docker-cli/Config.in b/package/docker-cli/Config.in index 6f187c9d22..52e7f7c871 100644 --- a/package/docker-cli/Config.in +++ b/package/docker-cli/Config.in @@ -3,6 +3,7 @@ config BR2_PACKAGE_DOCKER_CLI depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS depends on BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS depends on BR2_TOOLCHAIN_HAS_THREADS + select BR2_PACKAGE_HOST_GO help Docker is a platform to build, ship, and run applications as lightweight containers. diff --git a/package/docker-compose/Config.in b/package/docker-compose/Config.in index 59128f7a19..f3560e402b 100644 --- a/package/docker-compose/Config.in +++ b/package/docker-compose/Config.in @@ -4,6 +4,7 @@ config BR2_PACKAGE_DOCKER_COMPOSE depends on BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_PACKAGE_DOCKER_CLI + select BR2_PACKAGE_HOST_GO help Multi-container applications with the Docker CLI. diff --git a/package/docker-engine/Config.in b/package/docker-engine/Config.in index d48ffe6484..49a002a647 100644 --- a/package/docker-engine/Config.in +++ b/package/docker-engine/Config.in @@ -9,6 +9,7 @@ config BR2_PACKAGE_DOCKER_ENGINE depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_17 # libseccomp select BR2_PACKAGE_CGROUPFS_MOUNT if !BR2_PACKAGE_SYSTEMD # runtime dependency select BR2_PACKAGE_CONTAINERD # runtime dependency + select BR2_PACKAGE_HOST_GO select BR2_PACKAGE_IPTABLES # runtime dependency select BR2_PACKAGE_LIBSECCOMP help diff --git a/package/embiggen-disk/Config.in b/package/embiggen-disk/Config.in index 667d71c86e..c323fb1b6d 100644 --- a/package/embiggen-disk/Config.in +++ b/package/embiggen-disk/Config.in @@ -5,6 +5,7 @@ config BR2_PACKAGE_EMBIGGEN_DISK depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_TOOLCHAIN_USES_UCLIBC # no fexecve depends on BR2_USE_MMU # util-linux + select BR2_PACKAGE_HOST_GO select BR2_PACKAGE_UTIL_LINUX # sfdisk select BR2_PACKAGE_UTIL_LINUX_BINARIES # sfdisk help diff --git a/package/flannel/Config.in b/package/flannel/Config.in index eb8d798f48..f37cfaa9cc 100644 --- a/package/flannel/Config.in +++ b/package/flannel/Config.in @@ -8,6 +8,7 @@ config BR2_PACKAGE_FLANNEL depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS depends on BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS depends on BR2_TOOLCHAIN_HAS_THREADS + select BR2_PACKAGE_HOST_GO help Flannel is a virtual network that gives a subnet to each host for use with container runtimes. diff --git a/package/gitlab-runner/Config.in b/package/gitlab-runner/Config.in index 4289613ab9..cfe8c941bc 100644 --- a/package/gitlab-runner/Config.in +++ b/package/gitlab-runner/Config.in @@ -9,6 +9,7 @@ config BR2_PACKAGE_GITLAB_RUNNER select BR2_PACKAGE_BUSYBOX_SHOW_OTHERS # bash select BR2_PACKAGE_CA_CERTIFICATES # runtime select BR2_PACKAGE_GIT # runtime + select BR2_PACKAGE_HOST_GO select BR2_PACKAGE_LIBCURL # runtime select BR2_PACKAGE_LIBCURL_CURL # runtime select BR2_PACKAGE_LIBCURL_FORCE_TLS # runtime diff --git a/package/go/Config.in.host b/package/go/Config.in.host index 7edf45850d..e1833d0905 100644 --- a/package/go/Config.in.host +++ b/package/go/Config.in.host @@ -32,6 +32,11 @@ config BR2_PACKAGE_HOST_GO_HOST_ARCH_SUPPORTS default y depends on BR2_PACKAGE_HOST_GO_BOOTSTRAP_STAGE3_ARCH_SUPPORTS +# Go packages should select BR2_PACKAGE_HOST_GO +config BR2_PACKAGE_HOST_GO + bool + depends on BR2_PACKAGE_HOST_GO_HOST_ARCH_SUPPORTS + source "package/go/go-bootstrap-stage1/Config.in.host" source "package/go/go-bootstrap-stage2/Config.in.host" source "package/go/go-bootstrap-stage3/Config.in.host" diff --git a/package/gocryptfs/Config.in b/package/gocryptfs/Config.in index 2630cafdcf..2c70b9b21b 100644 --- a/package/gocryptfs/Config.in +++ b/package/gocryptfs/Config.in @@ -2,6 +2,7 @@ config BR2_PACKAGE_GOCRYPTFS bool "gocryptfs" depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_HAS_THREADS + select BR2_PACKAGE_HOST_GO help gocryptfs is an encrypted FUSE overlay filesystem. diff --git a/package/mender-artifact/Config.in.host b/package/mender-artifact/Config.in.host index c7be0ed261..39353b23e7 100644 --- a/package/mender-artifact/Config.in.host +++ b/package/mender-artifact/Config.in.host @@ -1,6 +1,7 @@ config BR2_PACKAGE_HOST_MENDER_ARTIFACT bool "host mender-artifact" depends on BR2_PACKAGE_HOST_GO_HOST_ARCH_SUPPORTS + select BR2_PACKAGE_HOST_GO help The mender-artifact tool is a CLI implementation of the Mender artifacts library. diff --git a/package/mender-connect/Config.in b/package/mender-connect/Config.in index 0845910880..d478e468c2 100644 --- a/package/mender-connect/Config.in +++ b/package/mender-connect/Config.in @@ -6,6 +6,7 @@ config BR2_PACKAGE_MENDER_CONNECT depends on BR2_USE_WCHAR # libglib2 -> gettext depends on BR2_USE_MMU # dbus -> fork() select BR2_PACKAGE_DBUS # runtime + select BR2_PACKAGE_HOST_GO select BR2_PACKAGE_LIBGLIB2 select BR2_PACKAGE_MENDER # runtime select BR2_PACKAGE_OPENSSL diff --git a/package/mender/Config.in b/package/mender/Config.in index 7d768cebec..4831548f76 100644 --- a/package/mender/Config.in +++ b/package/mender/Config.in @@ -3,6 +3,7 @@ config BR2_PACKAGE_MENDER depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS depends on BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS depends on BR2_TOOLCHAIN_HAS_THREADS + select BR2_PACKAGE_HOST_GO select BR2_PACKAGE_OPENSSL select BR2_PACKAGE_OPENSSL_FORCE_LIBOPENSSL select BR2_PACKAGE_LIBOPENSSL_ENABLE_MD4 diff --git a/package/moby-buildkit/Config.in b/package/moby-buildkit/Config.in index 93c852bcdb..1a0b599097 100644 --- a/package/moby-buildkit/Config.in +++ b/package/moby-buildkit/Config.in @@ -6,6 +6,7 @@ config BR2_PACKAGE_MOBY_BUILDKIT depends on !BR2_TOOLCHAIN_USES_UCLIBC depends on BR2_USE_MMU select BR2_PACKAGE_CGROUPFS_MOUNT if !BR2_PACKAGE_SYSTEMD # runtime dependency + select BR2_PACKAGE_HOST_GO help BuildKit is a toolkit for converting source code to build artifacts in an efficient, expressive and repeatable manner. diff --git a/package/moby-buildkit/Config.in.host b/package/moby-buildkit/Config.in.host index a3b18548f8..d4eb0d74c3 100644 --- a/package/moby-buildkit/Config.in.host +++ b/package/moby-buildkit/Config.in.host @@ -1,6 +1,7 @@ config BR2_PACKAGE_HOST_MOBY_BUILDKIT bool "host moby-buildkit" depends on BR2_PACKAGE_HOST_GO_HOST_ARCH_SUPPORTS + select BR2_PACKAGE_HOST_GO help BuildKit is a toolkit for converting source code to build artifacts in an efficient expressive and repeatable manner. diff --git a/package/nerdctl/Config.in b/package/nerdctl/Config.in index 969b9bb40e..062b36ab85 100644 --- a/package/nerdctl/Config.in +++ b/package/nerdctl/Config.in @@ -6,6 +6,7 @@ config BR2_PACKAGE_NERDCTL depends on !BR2_TOOLCHAIN_USES_UCLIBC # containerd depends on BR2_USE_MMU # util-linux select BR2_PACKAGE_CONTAINERD # runtime + select BR2_PACKAGE_HOST_GO help Docker-compatible CLI for containerd, controlling runc. diff --git a/package/runc/Config.in b/package/runc/Config.in index fe527b1954..73eac72527 100644 --- a/package/runc/Config.in +++ b/package/runc/Config.in @@ -4,6 +4,7 @@ config BR2_PACKAGE_RUNC depends on BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_TOOLCHAIN_USES_UCLIBC # no fexecve + select BR2_PACKAGE_HOST_GO help runC is a CLI tool for spawning and running containers according to the OCI specification. diff --git a/package/runc/Config.in.host b/package/runc/Config.in.host index 4b2555e029..78193cb499 100644 --- a/package/runc/Config.in.host +++ b/package/runc/Config.in.host @@ -1,6 +1,7 @@ config BR2_PACKAGE_HOST_RUNC bool "host runc" depends on BR2_PACKAGE_HOST_GO_HOST_ARCH_SUPPORTS + select BR2_PACKAGE_HOST_GO help runC is a CLI tool for spawning and running containers according to the OCI specification. diff --git a/package/tinifier/Config.in b/package/tinifier/Config.in index fbadfe6bd9..eae8b8f499 100644 --- a/package/tinifier/Config.in +++ b/package/tinifier/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_TINIFIER bool "tinifier" depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS + select BR2_PACKAGE_HOST_GO help CLI tool for images compressing diff --git a/package/wtfutil/Config.in b/package/wtfutil/Config.in index 8c3efcea5d..3fd8c41bab 100644 --- a/package/wtfutil/Config.in +++ b/package/wtfutil/Config.in @@ -2,6 +2,7 @@ config BR2_PACKAGE_WTFUTIL bool "wtfutil" depends on BR2_USE_MMU # fork() depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS + select BR2_PACKAGE_HOST_GO help WTF is the personal information dashboard for your terminal. From patchwork Mon Apr 15 16:22:25 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Thomas Perale X-Patchwork-Id: 1923802 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=buildroot.org (client-ip=2605:bc80:3010::138; helo=smtp1.osuosl.org; envelope-from=buildroot-bounces@buildroot.org; receiver=patchwork.ozlabs.org) Received: from smtp1.osuosl.org (smtp1.osuosl.org [IPv6:2605:bc80:3010::138]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4VJCC82kx8z1yY4 for ; Tue, 16 Apr 2024 02:23:16 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by smtp1.osuosl.org (Postfix) with ESMTP id BCBB381767; Mon, 15 Apr 2024 16:23:14 +0000 (UTC) X-Virus-Scanned: amavis at osuosl.org Received: from smtp1.osuosl.org ([127.0.0.1]) by localhost (smtp1.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP id 8FqDQj5RWBC7; Mon, 15 Apr 2024 16:23:13 +0000 (UTC) X-Comment: SPF check N/A for local connections - client-ip=140.211.166.34; helo=ash.osuosl.org; envelope-from=buildroot-bounces@buildroot.org; receiver= DKIM-Filter: OpenDKIM Filter v2.11.0 smtp1.osuosl.org 8010B817ED Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by smtp1.osuosl.org (Postfix) with ESMTP id 8010B817ED; Mon, 15 Apr 2024 16:23:12 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from smtp2.osuosl.org (smtp2.osuosl.org [140.211.166.133]) by ash.osuosl.org (Postfix) with ESMTP id 1B39B1BF95D for ; Mon, 15 Apr 2024 16:23:01 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp2.osuosl.org (Postfix) with ESMTP id 15522404A6 for ; Mon, 15 Apr 2024 16:23:01 +0000 (UTC) X-Virus-Scanned: amavis at osuosl.org Received: from smtp2.osuosl.org ([127.0.0.1]) by localhost (smtp2.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP id rf1DmO2QaPYV for ; Mon, 15 Apr 2024 16:23:00 +0000 (UTC) Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=2a00:1450:4864:20::330; helo=mail-wm1-x330.google.com; envelope-from=thomas.perale@essensium.com; receiver= DMARC-Filter: OpenDMARC Filter v1.4.2 smtp2.osuosl.org 7A3A9400FE DKIM-Filter: OpenDKIM Filter v2.11.0 smtp2.osuosl.org 7A3A9400FE Received: from mail-wm1-x330.google.com (mail-wm1-x330.google.com [IPv6:2a00:1450:4864:20::330]) by smtp2.osuosl.org (Postfix) with ESMTPS id 7A3A9400FE for ; Mon, 15 Apr 2024 16:22:59 +0000 (UTC) Received: by mail-wm1-x330.google.com with SMTP id 5b1f17b1804b1-41879f47aa5so5522775e9.3 for ; Mon, 15 Apr 2024 09:22:59 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713198177; x=1713802977; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=rqHXx3w49YSp0Rn2pJJUWQ20RPjld12M1lXnbAtm4ZU=; b=dWwVVMnz96dPoXkoA4atNCGivmAYhib6+fc4mC0EBpAyVVbH5j27wVOLInG1RLhqcd aKoM3zuEyp4LaB0C/ii7b8GcELQmE8GmCMOEn3Ct4KOw2VudzDpGRUDc9IBIXZd/XG6o AoS/zdiWgswxmgxziFQXh9r4sZM3CWVfOv5oZdE1RiesNdHLV0yMpoQa7mZhwbOeRtEL pvIr5JiN+hOkXx8wpPk6oDWK1sdrGjDcuhqoHoymFSDQXFvPXq7rCgv3KHBdbXSvr7Bg 6YN49/0lvEl6xUp+1AV7dxZOoTATgsLEDD6clg+een52O4X0FZ/yOsqB9mnr8jBJEyI4 937w== X-Gm-Message-State: AOJu0YxD5pX8iYfGxcSr7QgG/WikypTSoJnuGTScUlDSu/iidZUQy8cJ QDP2IUuX/0/9nSrUb5Vm3UAr0HXwDCmJVaklHhILVjwHQoYlXFrb7I4nCDV8RbLiSNlOWC8YIhN VAlE= X-Google-Smtp-Source: AGHT+IH1qmdXQH8FYMnhYwj6t+yiYYPPg3/WG6O0Os1kRcbwzrw6klGVmlcFCBP/X285OXUBttoHdA== X-Received: by 2002:a05:600c:3d9b:b0:418:7c58:d592 with SMTP id bi27-20020a05600c3d9b00b004187c58d592mr1064572wmb.28.1713198177258; Mon, 15 Apr 2024 09:22:57 -0700 (PDT) Received: from localhost.localdomain ([79.132.235.33]) by smtp.gmail.com with ESMTPSA id fl16-20020a05600c0b9000b00418631f91c1sm4302938wmb.28.2024.04.15.09.22.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 15 Apr 2024 09:22:56 -0700 (PDT) X-Google-Original-From: Thomas Perale To: buildroot@buildroot.org Date: Mon, 15 Apr 2024 18:22:25 +0200 Message-ID: <20240415162229.1357491-5-thomas.perale@mind.be> X-Mailer: git-send-email 2.44.0 In-Reply-To: <20240415162229.1357491-1-thomas.perale@mind.be> References: <20240415162229.1357491-1-thomas.perale@mind.be> MIME-Version: 1.0 X-Mailman-Original-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=essensium.com; s=google; t=1713198177; x=1713802977; darn=buildroot.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=rqHXx3w49YSp0Rn2pJJUWQ20RPjld12M1lXnbAtm4ZU=; b=PhiDR1H5RPZApmPeplxP42f/EIOo6PyicK1QwHmoupG9k325QSomrQR0zSD515PU0v wPhNv3hFvMz2AMS3uATHJnlockK5L4qwc/yb6EChuULx2m+XgBY0++O2V52bRfMT+BGu G9b3RlIvEpYF7YT9MsOANan9WKDNmotnVXuK9uoTUCUFrKbGuLOJFVjxbms+BJIHyr0T J0MDh5fCApomyMEOpjkwvSyYXOHc+CXcAA/Kwi3028ZhLoBs6GmyriRLCMJlLmXH9pcv +exnzE1pKRSvzKNL152Tznf+2XKBIt2gD2UVbjVDn8GhJlb+/SbNKZecni+C8J/mdpSg iQZA== X-Mailman-Original-Authentication-Results: smtp2.osuosl.org; dmarc=pass (p=quarantine dis=none) header.from=essensium.com X-Mailman-Original-Authentication-Results: smtp2.osuosl.org; dkim=pass (2048-bit key) header.d=essensium.com header.i=@essensium.com header.a=rsa-sha256 header.s=google header.b=PhiDR1H5 Subject: [Buildroot] [PATCH v2 4/6] package/go: make host package a virtual package X-BeenThere: buildroot@buildroot.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Thomas Perale via buildroot From: Thomas Perale Reply-To: Thomas Perale Cc: Christian Stewart , "Yann E . MORIN" , Thomas Perale Errors-To: buildroot-bounces@buildroot.org Sender: "buildroot" Turns host-go into a virtual package, with a single providers: - host-go-src, which builds host-go from source based on the same logic that was previously used in package/go/go/go.mk, now moved to package/go/go-src/go-src.mk to remove any ambiguity on the role of the package. In later commits, we'll add host-go-bin a prebuilt binary host go compiler as another provider. A similar solution is proposed for host-rust. Signed-off-by: Thomas Perale --- .checkpackageignore | 2 +- package/go/Config.in.host | 24 +++++++++++++++++ ...explicit-option-for-crosscompilation.patch | 0 ...ldvcs-false-when-building-go-bootstr.patch | 0 package/go/{go/go.hash => go-src/go-src.hash} | 0 package/go/{go/go.mk => go-src/go-src.mk} | 27 ++++++++++--------- package/go/go.mk | 2 ++ 7 files changed, 41 insertions(+), 14 deletions(-) rename package/go/{go => go-src}/0001-build.go-explicit-option-for-crosscompilation.patch (100%) rename package/go/{go => go-src}/0002-cmd-dist-set-buildvcs-false-when-building-go-bootstr.patch (100%) rename package/go/{go/go.hash => go-src/go-src.hash} (100%) rename package/go/{go/go.mk => go-src/go-src.mk} (66%) -- 2.44.0 diff --git a/.checkpackageignore b/.checkpackageignore index b3eab26071..69681bfeaa 100644 --- a/.checkpackageignore +++ b/.checkpackageignore @@ -465,7 +465,7 @@ package/glorytun/0002-aegis256.c-fix-aarch64-build-with-uclibc.patch lib_patch.U package/gnu-efi/0001-Make.defaults-don-t-override-ARCH-when-cross-compili.patch lib_patch.Upstream package/gnupg/0001-build-Always-use-EXTERN_UNLESS_MAIN_MODULE-pattern.patch lib_patch.Upstream package/gnuplot/0001-configure-add-without-demo-option.patch lib_patch.Upstream -package/go/go/0001-build.go-explicit-option-for-crosscompilation.patch lib_patch.Upstream +package/go/go-src/0001-build.go-explicit-option-for-crosscompilation.patch lib_patch.Upstream package/gob2/0001-dont-include-from-prefix.patch lib_patch.Upstream package/gobject-introspection/0001-disable-tests.patch lib_patch.Upstream package/gobject-introspection/0002-Add-rpath-links-to-ccompiler.patch lib_patch.Upstream diff --git a/package/go/Config.in.host b/package/go/Config.in.host index e1833d0905..483393f8e4 100644 --- a/package/go/Config.in.host +++ b/package/go/Config.in.host @@ -37,6 +37,30 @@ config BR2_PACKAGE_HOST_GO bool depends on BR2_PACKAGE_HOST_GO_HOST_ARCH_SUPPORTS +if BR2_PACKAGE_HOST_GO + +choice + prompt "Go compiler variant" + default BR2_PACKAGE_HOST_GO_SRC + help + Select a Go compiler variant. + + Default to 'host-go-src'. + +config BR2_PACKAGE_HOST_GO_SRC + bool "host go (source)" + help + This package will build the go compiler for the host. + +endchoice + +config BR2_PACKAGE_PROVIDES_HOST_GO + string + # Default to host-go-src + default "host-go-src" if BR2_PACKAGE_HOST_GO_SRC + +endif + source "package/go/go-bootstrap-stage1/Config.in.host" source "package/go/go-bootstrap-stage2/Config.in.host" source "package/go/go-bootstrap-stage3/Config.in.host" diff --git a/package/go/go/0001-build.go-explicit-option-for-crosscompilation.patch b/package/go/go-src/0001-build.go-explicit-option-for-crosscompilation.patch similarity index 100% rename from package/go/go/0001-build.go-explicit-option-for-crosscompilation.patch rename to package/go/go-src/0001-build.go-explicit-option-for-crosscompilation.patch diff --git a/package/go/go/0002-cmd-dist-set-buildvcs-false-when-building-go-bootstr.patch b/package/go/go-src/0002-cmd-dist-set-buildvcs-false-when-building-go-bootstr.patch similarity index 100% rename from package/go/go/0002-cmd-dist-set-buildvcs-false-when-building-go-bootstr.patch rename to package/go/go-src/0002-cmd-dist-set-buildvcs-false-when-building-go-bootstr.patch diff --git a/package/go/go/go.hash b/package/go/go-src/go-src.hash similarity index 100% rename from package/go/go/go.hash rename to package/go/go-src/go-src.hash diff --git a/package/go/go/go.mk b/package/go/go-src/go-src.mk similarity index 66% rename from package/go/go/go.mk rename to package/go/go-src/go-src.mk index c3c40922f4..1e061e20bc 100644 --- a/package/go/go/go.mk +++ b/package/go/go-src/go-src.mk @@ -1,21 +1,22 @@ ################################################################################ # -# go +# go-src # ################################################################################ -GO_SITE = https://storage.googleapis.com/golang -GO_SOURCE = go$(GO_VERSION).src.tar.gz +GO_SRC_SITE = https://storage.googleapis.com/golang +GO_SRC_SOURCE = go$(GO_VERSION).src.tar.gz -GO_LICENSE = BSD-3-Clause -GO_LICENSE_FILES = LICENSE -GO_CPE_ID_VENDOR = golang +GO_SRC_LICENSE = BSD-3-Clause +GO_SRC_LICENSE_FILES = LICENSE +GO_SRC_CPE_ID_VENDOR = golang -HOST_GO_DEPENDENCIES = host-go-bootstrap-stage3 +HOST_GO_SRC_PROVIDES = host-go +HOST_GO_SRC_DEPENDENCIES = host-go-bootstrap-stage3 ifeq ($(BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS),y) -HOST_GO_CROSS_ENV = \ +HOST_GO_SRC_CROSS_ENV = \ CC_FOR_TARGET="$(TARGET_CC)" \ CXX_FOR_TARGET="$(TARGET_CXX)" \ GOOS="linux" \ @@ -28,7 +29,7 @@ endif # The go build system is not compatible with ccache, so use # HOSTCC_NOCCACHE. See https://github.com/golang/go/issues/11685. -HOST_GO_MAKE_ENV = \ +HOST_GO_SRC_MAKE_ENV = \ GO111MODULE=off \ GOCACHE=$(HOST_GO_HOST_CACHE) \ GOROOT_BOOTSTRAP=$(HOST_GO_BOOTSTRAP_STAGE3_ROOT) \ @@ -39,14 +40,14 @@ HOST_GO_MAKE_ENV = \ CC=$(HOSTCC_NOCCACHE) \ CXX=$(HOSTCXX_NOCCACHE) \ CGO_ENABLED=$(HOST_GO_CGO_ENABLED) \ - $(HOST_GO_CROSS_ENV) + $(HOST_GO_SRC_CROSS_ENV) -define HOST_GO_BUILD_CMDS +define HOST_GO_SRC_BUILD_CMDS cd $(@D)/src && \ - $(HOST_GO_MAKE_ENV) ./make.bash $(if $(VERBOSE),-v) + $(HOST_GO_SRC_MAKE_ENV) ./make.bash $(if $(VERBOSE),-v) endef -define HOST_GO_INSTALL_CMDS +define HOST_GO_SRC_INSTALL_CMDS $(GO_BINARIES_INSTALL) endef diff --git a/package/go/go.mk b/package/go/go.mk index 104a4a73fb..21cdb29f8f 100644 --- a/package/go/go.mk +++ b/package/go/go.mk @@ -129,4 +129,6 @@ define GO_BINARIES_INSTALL find $(HOST_GO_ROOT) -type f -exec touch -r $(@D)/bin/go {} \; endef +$(eval $(host-virtual-package)) + include $(sort $(wildcard package/go/*/*.mk)) From patchwork Mon Apr 15 16:22:26 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Thomas Perale X-Patchwork-Id: 1923804 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=buildroot.org (client-ip=2605:bc80:3010::138; helo=smtp1.osuosl.org; envelope-from=buildroot-bounces@buildroot.org; receiver=patchwork.ozlabs.org) Received: from smtp1.osuosl.org (smtp1.osuosl.org [IPv6:2605:bc80:3010::138]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4VJCCL2RYPz1yY4 for ; Tue, 16 Apr 2024 02:23:26 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by smtp1.osuosl.org (Postfix) with ESMTP id AC46281799; Mon, 15 Apr 2024 16:23:24 +0000 (UTC) X-Virus-Scanned: amavis at osuosl.org Received: from smtp1.osuosl.org ([127.0.0.1]) by localhost (smtp1.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP id vtVFspyjuj_i; Mon, 15 Apr 2024 16:23:22 +0000 (UTC) X-Comment: SPF check N/A for local connections - client-ip=140.211.166.34; helo=ash.osuosl.org; envelope-from=buildroot-bounces@buildroot.org; receiver= DKIM-Filter: OpenDKIM Filter v2.11.0 smtp1.osuosl.org 050E2818A2 Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by smtp1.osuosl.org (Postfix) with ESMTP id 050E2818A2; Mon, 15 Apr 2024 16:23:22 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from smtp3.osuosl.org (smtp3.osuosl.org [140.211.166.136]) by ash.osuosl.org (Postfix) with ESMTP id B3C401BF298 for ; Mon, 15 Apr 2024 16:23:01 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp3.osuosl.org (Postfix) with ESMTP id A0A92605EF for ; Mon, 15 Apr 2024 16:23:01 +0000 (UTC) X-Virus-Scanned: amavis at osuosl.org Received: from smtp3.osuosl.org ([127.0.0.1]) by localhost (smtp3.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP id t3cXNxFO-hya for ; Mon, 15 Apr 2024 16:23:00 +0000 (UTC) Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=2a00:1450:4864:20::22c; helo=mail-lj1-x22c.google.com; envelope-from=thomas.perale@essensium.com; receiver= DMARC-Filter: OpenDMARC Filter v1.4.2 smtp3.osuosl.org 72CDD605A6 DKIM-Filter: OpenDKIM Filter v2.11.0 smtp3.osuosl.org 72CDD605A6 Received: from mail-lj1-x22c.google.com (mail-lj1-x22c.google.com [IPv6:2a00:1450:4864:20::22c]) by smtp3.osuosl.org (Postfix) with ESMTPS id 72CDD605A6 for ; Mon, 15 Apr 2024 16:23:00 +0000 (UTC) Received: by mail-lj1-x22c.google.com with SMTP id 38308e7fff4ca-2da08b07157so40005371fa.1 for ; Mon, 15 Apr 2024 09:23:00 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713198178; x=1713802978; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=T1IS1RxscUIVKBo4j9PIX8w/HcuXYSi3gXv6SOhYQHg=; b=EEu60+VVL622I19ja7mMU7aqTgsmpMrezNyhKiS8byKjZDZsHMKIB2eqQlFTNniEVD +ZVSpGs1P8BR5DZ7sflAdzLVxyhPC2a+DMabtlCx4sBjR72LeWl1W9rFkeXK/Jb6ByI8 pIDEMLe20fTGeyu+La45u8nmlTkhiov5EbH44S8E1Hhg20L21wkjT9IJXl9E9KHR3ch5 7XWQ06qCICXe6up5gy0i15o268qKeKLuAwAynZCqYKnc1M9XGsbz5iPlcyvdTr/P5tZw yW5Q9bZmnEFn+e+QkoAXnFqrCNkXCMVnrXWi3AV2deTHjW8p4pKGJk6wxORa/K0lktMv 5JXQ== X-Gm-Message-State: AOJu0YwkxLoYdant8+8ASSCada41sZyoL+CCIG1xVMz+Mj5zUH/G3IAh XIf6KelJFAIfhMIQw6Lsmq+OFQH6IFvs8rCdmol2iJopg4lnOFb6oo0qUXJNbOTuP2HPFnG/3B+ xTFQ= X-Google-Smtp-Source: AGHT+IGyZGSyQH2WH4FINZ7uAkx8kRLHt9BS+Xwn/5vlquzs7iIFnSM959zRrwPvpGfpRWVLovmw+g== X-Received: by 2002:a2e:7a19:0:b0:2d8:6fc4:d0b5 with SMTP id v25-20020a2e7a19000000b002d86fc4d0b5mr7580587ljc.8.1713198177982; Mon, 15 Apr 2024 09:22:57 -0700 (PDT) Received: from localhost.localdomain ([79.132.235.33]) by smtp.gmail.com with ESMTPSA id fl16-20020a05600c0b9000b00418631f91c1sm4302938wmb.28.2024.04.15.09.22.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 15 Apr 2024 09:22:57 -0700 (PDT) X-Google-Original-From: Thomas Perale To: buildroot@buildroot.org Date: Mon, 15 Apr 2024 18:22:26 +0200 Message-ID: <20240415162229.1357491-6-thomas.perale@mind.be> X-Mailer: git-send-email 2.44.0 In-Reply-To: <20240415162229.1357491-1-thomas.perale@mind.be> References: <20240415162229.1357491-1-thomas.perale@mind.be> MIME-Version: 1.0 X-Mailman-Original-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=essensium.com; s=google; t=1713198178; x=1713802978; darn=buildroot.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=T1IS1RxscUIVKBo4j9PIX8w/HcuXYSi3gXv6SOhYQHg=; b=SCtXCb2n+iVaNqzZ3qDkCqtSxh1DhGGDrZgXj6LnVkYNQdeRFl+uIFeU6mkwNdw+bz mW16PMt+qey1kjMaXQ4p7/wUCskFIhbeNmlw/xU2ghHVwM7ITtv6ZdptCK14S/ZKbUQV kSBQmMp2Uk1l9V+DW5tJojXppsT+hExBh/afqqKe73s9LeSzLz5+Itlv39wh5cPnA9qE hQk89w/5Mg0Rk5jLfiMf6Qti/40pl0OGgfvVbxuPHdhxkXv+CXoUqnpnw/xJBGjZxxQq mt+cXf/Pgcfcb/bRUv33KShIpek9WQOhsoZXDMyANyU+wbjudgwPtfllQLY4W25USLPt 1klA== X-Mailman-Original-Authentication-Results: smtp3.osuosl.org; dmarc=pass (p=quarantine dis=none) header.from=essensium.com X-Mailman-Original-Authentication-Results: smtp3.osuosl.org; dkim=pass (2048-bit key) header.d=essensium.com header.i=@essensium.com header.a=rsa-sha256 header.s=google header.b=SCtXCb2n Subject: [Buildroot] [PATCH v2 5/6] package/go/go-bin: new host-go provider X-BeenThere: buildroot@buildroot.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Thomas Perale via buildroot From: Thomas Perale Reply-To: Thomas Perale Cc: Christian Stewart , "Yann E . MORIN" , Thomas Perale Errors-To: buildroot-bounces@buildroot.org Sender: "buildroot" This package provides a pre-built version for the host-go virtual package introduced in the previous commits: - host-go-bin installs a pre-built version of the Go compiler. By default, host-go remains built from sources to keep the same behavior as the former version. The menuconfig entry for host-go is updated to expose the host-go-bin provider. The dependencies are set as such as if host-go-src does not support the host architecture, it will automatically fall back to host-go-bin and vice versa. Signed-off-by: Thomas Perale --- package/go/Config.in.host | 14 ++++++++++++-- package/go/go-bin/Config.in.host | 14 ++++++++++++++ package/go/go-bin/go-bin.hash | 8 ++++++++ package/go/go-bin/go-bin.mk | 19 +++++++++++++++++++ 4 files changed, 53 insertions(+), 2 deletions(-) create mode 100644 package/go/go-bin/Config.in.host create mode 100644 package/go/go-bin/go-bin.hash create mode 100644 package/go/go-bin/go-bin.mk -- 2.44.0 diff --git a/package/go/Config.in.host b/package/go/Config.in.host index 483393f8e4..7055e9f28a 100644 --- a/package/go/Config.in.host +++ b/package/go/Config.in.host @@ -30,7 +30,7 @@ config BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS config BR2_PACKAGE_HOST_GO_HOST_ARCH_SUPPORTS bool default y - depends on BR2_PACKAGE_HOST_GO_BOOTSTRAP_STAGE3_ARCH_SUPPORTS + depends on BR2_PACKAGE_HOST_GO_BOOTSTRAP_STAGE3_ARCH_SUPPORTS || BR2_PACKAGE_HOST_GO_BIN_HOST_ARCH_SUPPORTS # Go packages should select BR2_PACKAGE_HOST_GO config BR2_PACKAGE_HOST_GO @@ -41,7 +41,8 @@ if BR2_PACKAGE_HOST_GO choice prompt "Go compiler variant" - default BR2_PACKAGE_HOST_GO_SRC + default BR2_PACKAGE_HOST_GO_SRC if BR2_PACKAGE_HOST_GO_BOOTSTRAP_STAGE3_ARCH_SUPPORTS + default BR2_PACKAGE_HOST_GO_BIN if BR2_PACKAGE_HOST_GO_BIN_HOST_ARCH_SUPPORTS help Select a Go compiler variant. @@ -49,18 +50,27 @@ choice config BR2_PACKAGE_HOST_GO_SRC bool "host go (source)" + depends on BR2_PACKAGE_HOST_GO_BOOTSTRAP_STAGE3_ARCH_SUPPORTS help This package will build the go compiler for the host. +config BR2_PACKAGE_HOST_GO_BIN + bool "host go (pre-built)" + depends on BR2_PACKAGE_HOST_GO_BIN_HOST_ARCH_SUPPORTS + help + This package will install pre-built versions of the compiler + endchoice config BR2_PACKAGE_PROVIDES_HOST_GO string # Default to host-go-src default "host-go-src" if BR2_PACKAGE_HOST_GO_SRC + default "host-go-bin" if BR2_PACKAGE_HOST_GO_BIN endif +source "package/go/go-bin/Config.in.host" source "package/go/go-bootstrap-stage1/Config.in.host" source "package/go/go-bootstrap-stage2/Config.in.host" source "package/go/go-bootstrap-stage3/Config.in.host" diff --git a/package/go/go-bin/Config.in.host b/package/go/go-bin/Config.in.host new file mode 100644 index 0000000000..b259afa197 --- /dev/null +++ b/package/go/go-bin/Config.in.host @@ -0,0 +1,14 @@ +config BR2_PACKAGE_HOST_GO_BIN_HOST_ARCH + string "Translate the HOSTARCH into the architecture name used by the Go compiler" + default armv6l if BR2_HOSTARCH = "arm" + default arm64 if BR2_HOSTARCH = "aarch64" + default ppc64le if BR2_HOSTARCH = "powerpc64le" + default s390x if BR2_HOSTARCH = "s390x" + default 386 if BR2_HOSTARCH = "x86" + default amd64 if BR2_HOSTARCH = "x86_64" + default "" + +config BR2_PACKAGE_HOST_GO_BIN_HOST_ARCH_SUPPORTS + bool + default y + depends on BR2_PACKAGE_HOST_GO_BIN_HOST_ARCH != "" diff --git a/package/go/go-bin/go-bin.hash b/package/go/go-bin/go-bin.hash new file mode 100644 index 0000000000..298503c156 --- /dev/null +++ b/package/go/go-bin/go-bin.hash @@ -0,0 +1,8 @@ +# sha256 checksum from https://go.dev/dl/ +sha256 586d9eb7fe0489ab297ad80dd06414997df487c5cf536c490ffeaa8d8f1807a7 go1.22.2.linux-386.tar.gz +sha256 5901c52b7a78002aeff14a21f93e0f064f74ce1360fce51c6ee68cd471216a17 go1.22.2.linux-amd64.tar.gz +sha256 36e720b2d564980c162a48c7e97da2e407dfcc4239e1e58d98082dfa2486a0c1 go1.22.2.linux-arm64.tar.gz +sha256 9243dfafde06e1efe24d59df6701818e6786b4adfdf1191098050d6d023c5369 go1.22.2.linux-armv6l.tar.gz +sha256 32ea3dfef75d6a4d42a28a315148ba54c4f6f9a8dc93a522d421d13df0e6c3b7 go1.22.2.linux-ppc64le.tar.gz +sha256 2b39019481c28c560d65e9811a478ae10e3ef765e0f59af362031d386a71bfef go1.22.2.linux-s390x.tar.gz +sha256 2d36597f7117c38b006835ae7f537487207d8ec407aa9d9980794b2030cbc067 LICENSE diff --git a/package/go/go-bin/go-bin.mk b/package/go/go-bin/go-bin.mk new file mode 100644 index 0000000000..6c5c1b6485 --- /dev/null +++ b/package/go/go-bin/go-bin.mk @@ -0,0 +1,19 @@ +################################################################################ +# +# go-bin +# +################################################################################ + +GO_BIN_SITE = https://go.dev/dl +GO_BIN_LICENSE = BSD-3-Clause +GO_BIN_LICENSE_FILES = LICENSE + +HOST_GO_BIN_PROVIDES = host-go + +HOST_GO_BIN_SOURCE = go$(GO_VERSION).linux-$(call qstrip, $(BR2_PACKAGE_HOST_GO_BIN_HOST_ARCH)).tar.gz + +define HOST_GO_BIN_INSTALL_CMDS + $(GO_BINARIES_INSTALL) +endef + +$(eval $(host-generic-package)) From patchwork Mon Apr 15 16:22:27 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Thomas Perale X-Patchwork-Id: 1923805 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=buildroot.org (client-ip=2605:bc80:3010::138; helo=smtp1.osuosl.org; envelope-from=buildroot-bounces@buildroot.org; receiver=patchwork.ozlabs.org) Received: from smtp1.osuosl.org (smtp1.osuosl.org [IPv6:2605:bc80:3010::138]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4VJCCP2FRvz1yY4 for ; Tue, 16 Apr 2024 02:23:29 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by smtp1.osuosl.org (Postfix) with ESMTP id CA34C8197D; Mon, 15 Apr 2024 16:23:27 +0000 (UTC) X-Virus-Scanned: amavis at osuosl.org Received: from smtp1.osuosl.org ([127.0.0.1]) by localhost (smtp1.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP id 11SXv8AuNiM9; Mon, 15 Apr 2024 16:23:26 +0000 (UTC) X-Comment: SPF check N/A for local connections - client-ip=140.211.166.34; helo=ash.osuosl.org; envelope-from=buildroot-bounces@buildroot.org; receiver= DKIM-Filter: OpenDKIM Filter v2.11.0 smtp1.osuosl.org 3EB42818A2 Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by smtp1.osuosl.org (Postfix) with ESMTP id 3EB42818A2; Mon, 15 Apr 2024 16:23:26 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from smtp3.osuosl.org (smtp3.osuosl.org [140.211.166.136]) by ash.osuosl.org (Postfix) with ESMTP id 62B601BF298 for ; Mon, 15 Apr 2024 16:23:02 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp3.osuosl.org (Postfix) with ESMTP id 4FBAC605EF for ; Mon, 15 Apr 2024 16:23:02 +0000 (UTC) X-Virus-Scanned: amavis at osuosl.org Received: from smtp3.osuosl.org ([127.0.0.1]) by localhost (smtp3.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP id aIJ4Hig9QvuG for ; Mon, 15 Apr 2024 16:23:01 +0000 (UTC) Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=2a00:1450:4864:20::32c; helo=mail-wm1-x32c.google.com; envelope-from=thomas.perale@essensium.com; receiver= DMARC-Filter: OpenDMARC Filter v1.4.2 smtp3.osuosl.org C67C3605C9 DKIM-Filter: OpenDKIM Filter v2.11.0 smtp3.osuosl.org C67C3605C9 Received: from mail-wm1-x32c.google.com (mail-wm1-x32c.google.com [IPv6:2a00:1450:4864:20::32c]) by smtp3.osuosl.org (Postfix) with ESMTPS id C67C3605C9 for ; Mon, 15 Apr 2024 16:23:00 +0000 (UTC) Received: by mail-wm1-x32c.google.com with SMTP id 5b1f17b1804b1-4185e80adfbso5448415e9.1 for ; Mon, 15 Apr 2024 09:23:00 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713198178; x=1713802978; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Q2FssxX4Ky5dHnSH3od6FnQgoqju/NaFMEBOi9DYe84=; b=Uzgv8y5Hi3KBgiiaQFAjjWKY+yH6kd8iSL7X5mXe92JwC3DMsieaqMfG1e8Zny+/AZ 7JyhAmlerye/rWNA010IDSjxFL6B+rnXpVZhiL7XVL+yal/1fe3jrCHRmHZUV8b24LKT Zes3lJiYR4dYk6KQKbroyPk4dAaMAQK7DLB5JTbox0YzhuxsETnCV2dY4vlggrqb55na QGhrKcfLu2m9Fzvutege4FgAB29CeNtwx8Mr9DYYpPkPE8VhnxgpxqkemT1dzxMKDKvx fqY6RAM0P5RGahArITqHYOwy/0lUS3n51wFzSwPHvq7iOyV9XoKemjsLeBz5HXfWLDnh jsYg== X-Gm-Message-State: AOJu0YxUBQexovUtUVMfUb29yWuOup2Vhda/6thr8U18Qvi+C0AiwHSv Xf/Wci0NKUuKdcZ2OT5odQfEiLKebOntlhQROr4RgC06qzbjqVIaBzQ5qXsMJRh0x/r4f10I/RI Xg30= X-Google-Smtp-Source: AGHT+IH0iwbTWcsGexd/gpgNUwE/uWaSJRok/dhff+LdHzR3PrdSmqiA8NJUy8UNA1CmVm4E4m9XDA== X-Received: by 2002:a05:600c:350f:b0:417:e327:8b2f with SMTP id h15-20020a05600c350f00b00417e3278b2fmr7676695wmq.27.1713198178774; Mon, 15 Apr 2024 09:22:58 -0700 (PDT) Received: from localhost.localdomain ([79.132.235.33]) by smtp.gmail.com with ESMTPSA id fl16-20020a05600c0b9000b00418631f91c1sm4302938wmb.28.2024.04.15.09.22.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 15 Apr 2024 09:22:58 -0700 (PDT) X-Google-Original-From: Thomas Perale To: buildroot@buildroot.org Date: Mon, 15 Apr 2024 18:22:27 +0200 Message-ID: <20240415162229.1357491-7-thomas.perale@mind.be> X-Mailer: git-send-email 2.44.0 In-Reply-To: <20240415162229.1357491-1-thomas.perale@mind.be> References: <20240415162229.1357491-1-thomas.perale@mind.be> MIME-Version: 1.0 X-Mailman-Original-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=essensium.com; s=google; t=1713198178; x=1713802978; darn=buildroot.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Q2FssxX4Ky5dHnSH3od6FnQgoqju/NaFMEBOi9DYe84=; b=FX3j3YxWV7DkcHyoXzM9uf47zen+psiDJu7BEp8aPj4i/bmuc7TXJLCDWdQGedlrZN m2kH9wz5izuTqlUeJQFNPQ5S4Mx+4SS7bihEkZcEfNRkxLznivwQAFwJco76F1//gc7k ZeU60n5LojPlbf9UaYdFx1jzX/n+QwVmpIOfWuOkYyM4lxPhfSpRkWRRgEXNpMyw30PA CFRLpjHqIetcxF4igU6FMNmA1CPqV8rDsd47rEz428nQdt6l8Cxmyakj3kOz04n/sdLh QdPDqAqveGtmoYprKH1EKB6XHNPHhJokvgTDIxzfJGSeP07/QUtL4sbSMVaigkzvWyjv Si+Q== X-Mailman-Original-Authentication-Results: smtp3.osuosl.org; dmarc=pass (p=quarantine dis=none) header.from=essensium.com X-Mailman-Original-Authentication-Results: smtp3.osuosl.org; dkim=pass (2048-bit key) header.d=essensium.com header.i=@essensium.com header.a=rsa-sha256 header.s=google header.b=FX3j3YxW Subject: [Buildroot] [PATCH v2 6/6] support/testing: add tests for Go providers X-BeenThere: buildroot@buildroot.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Thomas Perale via buildroot From: Thomas Perale Reply-To: Thomas Perale Cc: Christian Stewart , "Yann E . MORIN" , Thomas Perale Errors-To: buildroot-bounces@buildroot.org Sender: "buildroot" Test the two providers of host-go to build a Go package. - TestGoBin tests host-go-bin - TestGoSource tests host-go-src The tests consist of building and installing a Go package in the root file system of an ARM vexpress QEMU system. The tests pass if the program runs on the target. Signed-off-by: Thomas Perale --- support/testing/tests/package/test_go.py | 41 ++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 support/testing/tests/package/test_go.py -- 2.44.0 diff --git a/support/testing/tests/package/test_go.py b/support/testing/tests/package/test_go.py new file mode 100644 index 0000000000..305f8aeb3b --- /dev/null +++ b/support/testing/tests/package/test_go.py @@ -0,0 +1,41 @@ +import os + +import infra.basetest + + +class TestGoBase(infra.basetest.BRTest): + + def login(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv5", + kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login() + + +class TestGoBin(TestGoBase): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_TARGET_ROOTFS_CPIO=y + BR2_PACKAGE_HOST_GO=y + BR2_PACKAGE_HOST_GO_BIN=y + BR2_PACKAGE_TINIFIER=y + """ + + def test_run(self): + self.login() + self.assertRunOk("tinifier -h") + + +class TestGoSource(TestGoBase): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_TARGET_ROOTFS_CPIO=y + BR2_PACKAGE_HOST_GO=y + BR2_PACKAGE_HOST_GO_SRC=y + BR2_PACKAGE_TINIFIER=y + """ + + def test_run(self): + self.login() + self.assertRunOk("tinifier -h")