Compare commits
13 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
957aa1d91a | ||
|
|
b6565c0605 | ||
|
|
78bcda6431 | ||
|
|
4e045f180b | ||
|
|
a9ab6d9816 | ||
|
|
aee445a4d9 | ||
|
|
069610560b | ||
|
|
199a921361 | ||
|
|
23f8a14843 | ||
|
|
468b751ca5 | ||
|
|
f3e22b9b86 | ||
|
|
27b88c1852 | ||
|
|
bfe73308b6 |
17 changed files with 248 additions and 241 deletions
41
.gitignore
vendored
41
.gitignore
vendored
|
|
@ -143,35 +143,12 @@
|
|||
/go1.21.4.src.tar.gz
|
||||
/go1.21.5.src.tar.gz
|
||||
/go1.21.6.src.tar.gz
|
||||
/go1.22rc1.src.tar.gz
|
||||
/go1.22rc2.src.tar.gz
|
||||
/go1.22.0.src.tar.gz
|
||||
/go1.22.1.src.tar.gz
|
||||
/go1.22.2.src.tar.gz
|
||||
/go1.22.3.src.tar.gz
|
||||
/go1.22.4.src.tar.gz
|
||||
/go1.23rc1.src.tar.gz
|
||||
/go1.23rc2.src.tar.gz
|
||||
/go1.23.0.src.tar.gz
|
||||
/go1.23.1.src.tar.gz
|
||||
/go1.23.2.src.tar.gz
|
||||
/go1.23.3.src.tar.gz
|
||||
/go1.23.4.src.tar.gz
|
||||
/go1.24rc1.src.tar.gz
|
||||
/go1.24rc2.src.tar.gz
|
||||
/go1.24rc3.src.tar.gz
|
||||
/go1.24.0.src.tar.gz
|
||||
/go1.24.1.src.tar.gz
|
||||
/go1.24.2.src.tar.gz
|
||||
/go1.24.3.src.tar.gz
|
||||
/go1.24.4.src.tar.gz
|
||||
/go1.24.5.src.tar.gz
|
||||
/go1.25rc1.src.tar.gz
|
||||
/go1.25rc2.src.tar.gz
|
||||
/go1.25.0.src.tar.gz
|
||||
/go1.25.1.src.tar.gz
|
||||
/go1.25.2.src.tar.gz
|
||||
/go1.25.3.src.tar.gz
|
||||
/go1.25.4.src.tar.gz
|
||||
/go1.25.5.src.tar.gz
|
||||
/go1.26rc1.src.tar.gz
|
||||
/go1.21.7.src.tar.gz
|
||||
/go1.21.8.src.tar.gz
|
||||
/go1.21.9.src.tar.gz
|
||||
/go1.21.10.src.tar.gz
|
||||
/go1.21.11.src.tar.gz
|
||||
/go1.21.12.src.tar.gz
|
||||
/go1.22.7.src.tar.gz
|
||||
/go1.22.8.src.tar.gz
|
||||
/go1.22.9.src.tar.gz
|
||||
|
|
|
|||
38
.packit.yaml
38
.packit.yaml
|
|
@ -1,41 +1,21 @@
|
|||
specfile_path: golang.spec
|
||||
files_to_sync:
|
||||
- golang.spec
|
||||
- .packit.yaml
|
||||
upstream_package_name: go
|
||||
upstream_project_url: https://github.com/golang/go
|
||||
downstream_package_name: golang
|
||||
upstream_project_url: https://github.com/golang/go
|
||||
specfile_path: golang.spec
|
||||
upstream_tag_template: go{version}
|
||||
|
||||
actions:
|
||||
changelog-entry:
|
||||
- bash -c "echo - New release ${PACKIT_PROJECT_VERSION}"
|
||||
|
||||
- bash -c "echo - New release ${PACKIT_PROJECT_VERSION}"
|
||||
jobs:
|
||||
# Fedora 42 follows Go 1.24
|
||||
- job: pull_from_upstream
|
||||
trigger: release
|
||||
dist_git_branches: fedora-42
|
||||
upstream_tag_include: "^go1.24.+"
|
||||
dist_git_branches:
|
||||
- fedora-rawhide
|
||||
- fedora-stable
|
||||
|
||||
# Fedora 43 follows Go 1.25
|
||||
- job: pull_from_upstream
|
||||
trigger: release
|
||||
dist_git_branches: fedora-43
|
||||
upstream_tag_include: "^go1.25.+"
|
||||
|
||||
# Fedora Rawhide follows the latest version
|
||||
- job: pull_from_upstream
|
||||
trigger: release
|
||||
dist_git_branches: fedora-rawhide
|
||||
upstream_tag_include: "^go1.26.+"
|
||||
|
||||
# Run Koji builds when Packit pull requests are merged
|
||||
- job: koji_build
|
||||
trigger: commit
|
||||
dist_git_branches: fedora-all
|
||||
dist_git_branches:
|
||||
- fedora-rawhide
|
||||
- fedora-stable
|
||||
|
||||
# Create Bodhi updates in all Fedora stable versions
|
||||
- job: bodhi_update
|
||||
trigger: commit
|
||||
dist_git_branches: fedora-all
|
||||
|
|
|
|||
|
|
@ -1,42 +1,30 @@
|
|||
From 39432f71436c41201450a523dc41035c92d27569 Mon Sep 17 00:00:00 2001
|
||||
From: Maxwell G <maxwell@gtmx.me>
|
||||
Date: Thu, 24 Jul 2025 12:23:59 -0500
|
||||
From 52d9cfec8124a9c7382bed5284246d9b18a21eb4 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Alejandro=20S=C3=A1ez?= <asm@redhat.com>
|
||||
Date: Wed, 16 Aug 2023 07:06:38 +0200
|
||||
Subject: [PATCH] Modify go.env
|
||||
|
||||
Change GOPROXY, GOSUMDB, and GOTOOLCHAIN
|
||||
---
|
||||
go.env | 17 ++++++++++++++++-
|
||||
1 file changed, 16 insertions(+), 1 deletion(-)
|
||||
go.env | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/go.env b/go.env
|
||||
index 6ff2b92..5508440 100644
|
||||
index 6ff2b921d4..087208cd7c 100644
|
||||
--- a/go.env
|
||||
+++ b/go.env
|
||||
@@ -4,9 +4,24 @@
|
||||
@@ -4,9 +4,9 @@
|
||||
|
||||
# Use the Go module mirror and checksum database by default.
|
||||
# See https://proxy.golang.org for details.
|
||||
+#
|
||||
+# NOTE(downstream): We used to disable the Google Go proxy with GOPROXY=direct and
|
||||
+# disable the GOSUMDB for historical and priavcy reasons, but it caused severe
|
||||
+# performance degradations, so we reverted to the default upstream configuration.
|
||||
+# as of https://fedoraproject.org/wiki/Changes/golang1.25.
|
||||
+# To preserve the previous behavior, set "GOPROXY=direct" and "GOSUMDB=off".
|
||||
GOPROXY=https://proxy.golang.org,direct
|
||||
GOSUMDB=sum.golang.org
|
||||
-GOPROXY=https://proxy.golang.org,direct
|
||||
-GOSUMDB=sum.golang.org
|
||||
+GOPROXY=direct
|
||||
+GOSUMDB=off
|
||||
|
||||
# Automatically download newer toolchains as directed by go.mod files.
|
||||
# See https://go.dev/doc/toolchain for details.
|
||||
-GOTOOLCHAIN=auto
|
||||
+#
|
||||
+# NOTE(downstream): We change this default from auto to local so that the
|
||||
+# distribution-packaged Go toolchain is always used and go doesn't
|
||||
+# automatically download pre-compiled alternative versions.
|
||||
+GOTOOLCHAIN=local
|
||||
+
|
||||
+# NOTE(downstream): https://sourceware.org/bugzilla/show_bug.cgi?id=33204
|
||||
+# The dwarf5 data emitted by default in Go 1.25+ is incompatible with debugedit
|
||||
+# and breaks debugdata collection.
|
||||
+GOEXPERIMENT=nodwarf5
|
||||
--
|
||||
2.50.1
|
||||
2.41.0
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,35 @@
|
|||
From 7506da0af38aa307f45664f0c787b5767cc7a87f Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Alejandro=20S=C3=A1ez?= <asm@redhat.com>
|
||||
Date: Thu, 22 Jun 2023 17:19:00 +0200
|
||||
Subject: [PATCH] Force gold in aarch64 until binutils 2.41 is on Fedora
|
||||
|
||||
---
|
||||
src/cmd/link/internal/ld/lib.go | 8 +++-----
|
||||
1 file changed, 3 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/src/cmd/link/internal/ld/lib.go b/src/cmd/link/internal/ld/lib.go
|
||||
index 91e2d5149c..99c305530b 100644
|
||||
--- a/src/cmd/link/internal/ld/lib.go
|
||||
+++ b/src/cmd/link/internal/ld/lib.go
|
||||
@@ -1605,15 +1605,13 @@ func (ctxt *Link) hostlink() {
|
||||
// https://go.dev/issue/22040
|
||||
altLinker = "gold"
|
||||
|
||||
- // If gold is not installed, gcc will silently switch
|
||||
- // back to ld.bfd. So we parse the version information
|
||||
- // and provide a useful error if gold is missing.
|
||||
+ // In both cases, switch to gold if gold is available.
|
||||
name, args := flagExtld[0], flagExtld[1:]
|
||||
args = append(args, "-fuse-ld=gold", "-Wl,--version")
|
||||
cmd := exec.Command(name, args...)
|
||||
if out, err := cmd.CombinedOutput(); err == nil {
|
||||
- if !bytes.Contains(out, []byte("GNU gold")) {
|
||||
- log.Fatalf("ARM64 external linker must be gold (issue #15696, 22040), but is not: %s", out)
|
||||
+ if bytes.Contains(out, []byte("GNU gold")) {
|
||||
+ altLinker = "gold"
|
||||
}
|
||||
}
|
||||
}
|
||||
--
|
||||
2.40.1
|
||||
|
||||
|
|
@ -1,46 +0,0 @@
|
|||
From 46ec67413008607e2150e3395668e54e538c5b6b Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Alejandro=20S=C3=A1ez?= <asm@redhat.com>
|
||||
Date: Wed, 19 Jun 2024 10:18:58 +0200
|
||||
Subject: [PATCH] Default to ld.bfd on ARM64
|
||||
|
||||
---
|
||||
src/cmd/link/internal/ld/lib.go | 20 +++++++-------------
|
||||
1 file changed, 7 insertions(+), 13 deletions(-)
|
||||
|
||||
diff --git a/src/cmd/link/internal/ld/lib.go b/src/cmd/link/internal/ld/lib.go
|
||||
index eab74dc328..b401f58727 100644
|
||||
--- a/src/cmd/link/internal/ld/lib.go
|
||||
+++ b/src/cmd/link/internal/ld/lib.go
|
||||
@@ -1620,22 +1620,16 @@ func (ctxt *Link) hostlink() {
|
||||
}
|
||||
|
||||
if ctxt.Arch.InFamily(sys.ARM64) && buildcfg.GOOS == "linux" {
|
||||
- // On ARM64, the GNU linker will fail with
|
||||
- // -znocopyreloc if it thinks a COPY relocation is
|
||||
- // required. Switch to gold.
|
||||
- // https://sourceware.org/bugzilla/show_bug.cgi?id=19962
|
||||
- // https://go.dev/issue/22040
|
||||
- altLinker = "gold"
|
||||
-
|
||||
- // If gold is not installed, gcc will silently switch
|
||||
- // back to ld.bfd. So we parse the version information
|
||||
- // and provide a useful error if gold is missing.
|
||||
+ // Use ld.bfd as the default linker
|
||||
+ altLinker = "bfd"
|
||||
+
|
||||
+ // Provide a useful error if ld.bfd is missing
|
||||
name, args := flagExtld[0], flagExtld[1:]
|
||||
- args = append(args, "-fuse-ld=gold", "-Wl,--version")
|
||||
+ args = append(args, "-fuse-ld=bfd", "-Wl,--version")
|
||||
cmd := exec.Command(name, args...)
|
||||
if out, err := cmd.CombinedOutput(); err == nil {
|
||||
- if !bytes.Contains(out, []byte("GNU gold")) {
|
||||
- log.Fatalf("ARM64 external linker must be gold (issue #15696, 22040), but is not: %s", out)
|
||||
+ if !bytes.Contains(out, []byte("GNU ld")) {
|
||||
+ log.Fatalf("ARM64 external linker must be ld.bfd, but is not: %s", out)
|
||||
}
|
||||
}
|
||||
}
|
||||
--
|
||||
2.45.1
|
||||
|
||||
|
|
@ -1,3 +1,3 @@
|
|||
This repository is maintained by packit.
|
||||
https://packit.dev/
|
||||
The file was generated using packit 1.12.0.post1.dev20+g7d30dac21.
|
||||
The file was generated using packit 0.102.2.post1.dev4+g3142fcf8.
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/bash
|
||||
#! /bin/bash
|
||||
# Copyright (C) 2021 Jakub Čajka jcajka@redhat.com
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
|
|
@ -16,14 +16,7 @@
|
|||
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
|
||||
provides=""
|
||||
|
||||
for bundle in $(find -name modules.txt); do
|
||||
provides="$provides\n$(cat "$bundle" |
|
||||
grep "^# " |
|
||||
grep -v "# explicit" |
|
||||
sed -r s/"^#.* => "// |
|
||||
sed -r "s/# //" |
|
||||
sed -r "s:(.*) v(.*):Provides\: bundled(golang(\1)) = \2:" |
|
||||
sed '/= .*/s/-/./g')"
|
||||
done
|
||||
provides="$provides\n$(cat "$bundle" | grep "^# " | grep -v "# explicit" | sed -r s/"^#.* => "// | sed -r "s/# //" | sed -r "s:(.*) v(.*):Provides\: bundled(golang(\1)) = \2:")"
|
||||
done
|
||||
echo -e "$provides" | sed 's/-/./g' | sort -u
|
||||
|
|
|
|||
|
|
@ -1,9 +1,5 @@
|
|||
//go:build rpm_crashtraceback
|
||||
// +build rpm_crashtraceback
|
||||
|
||||
// Copyright 2017 The Fedora Project Contributors. All rights reserved.
|
||||
// Use of this source code is governed by the MIT license.
|
||||
|
||||
package runtime
|
||||
|
||||
func init() {
|
||||
|
|
|
|||
|
|
@ -1,25 +0,0 @@
|
|||
From 5f566346b70403891cfc52d0c807d72335691708 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Alejandro=20S=C3=A1ez?= <asm@redhat.com>
|
||||
Date: Wed, 15 Jan 2025 21:45:33 +0100
|
||||
Subject: [PATCH] Fix _cgo_panic with gcc15 in 368
|
||||
|
||||
---
|
||||
src/cmd/link/internal/x86/asm.go | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/cmd/link/internal/x86/asm.go b/src/cmd/link/internal/x86/asm.go
|
||||
index d535e5fb4d..c4253a8c08 100644
|
||||
--- a/src/cmd/link/internal/x86/asm.go
|
||||
+++ b/src/cmd/link/internal/x86/asm.go
|
||||
@@ -184,7 +184,7 @@ func adddynrel(target *ld.Target, ldr *loader.Loader, syms *ld.ArchSyms, s loade
|
||||
return true
|
||||
}
|
||||
|
||||
- if r.Off() >= 2 && sData[r.Off()-2] == 0xff && sData[r.Off()-1] == 0xb3 {
|
||||
+ if r.Off() >= 2 && sData[r.Off()-2] == 0xff && sData[r.Off()-1] >= 0xb0 && sData[r.Off()-1] <= 0xb7 {
|
||||
su.MakeWritable()
|
||||
// turn PUSHL of GOT entry into PUSHL of symbol itself.
|
||||
// use unnecessary SS prefix to keep instruction same length.
|
||||
--
|
||||
2.47.1
|
||||
|
||||
71
golang.spec
71
golang.spec
|
|
@ -1,5 +1,4 @@
|
|||
%bcond_with bootstrap
|
||||
|
||||
# build ids are not currently generated:
|
||||
# https://code.google.com/p/go/issues/detail?id=5238
|
||||
#
|
||||
|
|
@ -32,14 +31,14 @@
|
|||
# Golang build options.
|
||||
|
||||
# Build golang using external/internal(close to cgo disabled) linking.
|
||||
%ifarch %{ix86} x86_64 ppc64le %{arm} aarch64 s390x riscv64
|
||||
%ifarch %{ix86} x86_64 ppc64le %{arm} aarch64 s390x
|
||||
%global external_linker 1
|
||||
%else
|
||||
%global external_linker 0
|
||||
%endif
|
||||
|
||||
# Build golang with cgo enabled/disabled(later equals more or less to internal linking).
|
||||
%ifarch %{ix86} x86_64 ppc64le %{arm} aarch64 s390x riscv64
|
||||
%ifarch %{ix86} x86_64 ppc64le %{arm} aarch64 s390x
|
||||
%global cgo_enabled 1
|
||||
%else
|
||||
%global cgo_enabled 0
|
||||
|
|
@ -94,18 +93,15 @@
|
|||
%ifarch s390x
|
||||
%global gohostarch s390x
|
||||
%endif
|
||||
%ifarch riscv64
|
||||
%global gohostarch riscv64
|
||||
%endif
|
||||
|
||||
# Comment out go_prerelease and go_patch as needed
|
||||
%global go_api 1.26
|
||||
%global go_prerelease rc1
|
||||
#global go_patch 1
|
||||
%global go_api 1.22
|
||||
#global go_prerelease rc3
|
||||
%global go_patch 9
|
||||
|
||||
%global go_version %{go_api}%{?go_patch:.%{go_patch}}%{?go_prerelease:~%{go_prerelease}}
|
||||
%global go_source %{go_api}%{?go_patch:.%{go_patch}}%{?go_prerelease}
|
||||
|
||||
|
||||
Name: golang
|
||||
Version: %{go_version}
|
||||
Release: %autorelease
|
||||
|
|
@ -123,41 +119,36 @@ BuildRequires: gcc-go >= 5
|
|||
%else
|
||||
BuildRequires: golang > 1.4
|
||||
%endif
|
||||
%if 0%{?rhel} > 6 || 0%{?fedora} > 0
|
||||
BuildRequires: hostname
|
||||
|
||||
%else
|
||||
BuildRequires: net-tools
|
||||
%endif
|
||||
# for tests
|
||||
BuildRequires: pcre2-devel, glibc-static, perl-interpreter, procps-ng
|
||||
|
||||
Provides: go = %{version}-%{release}
|
||||
|
||||
# Bundled/Vendored provides generated by bundled-deps.sh based on the in tree module data
|
||||
Provides: bundled(golang(github.com/google/pprof)) = 0.0.0.20251114195745.4902fdda35c8
|
||||
Provides: bundled(golang(github.com/ianlancetaylor/demangle)) = 0.0.0.20250417193237.f615e6bd150b
|
||||
Provides: bundled(golang(golang.org/x/arch)) = 0.23.0
|
||||
Provides: bundled(golang(golang.org/x/build)) = 0.0.0.20251128064159.b9bfd88b30e8
|
||||
Provides: bundled(golang(golang.org/x/crypto)) = 0.46.1.0.20251210140736.7dacc380ba00
|
||||
Provides: bundled(golang(golang.org/x/mod)) = 0.30.1.0.20251115032019.269c237cf350
|
||||
Provides: bundled(golang(golang.org/x/net)) = 0.47.1.0.20251128220604.7c360367ab7e
|
||||
Provides: bundled(golang(golang.org/x/sync)) = 0.19.0
|
||||
Provides: bundled(golang(golang.org/x/sys)) = 0.39.0
|
||||
Provides: bundled(golang(golang.org/x/telemetry)) = 0.0.0.20251128220624.abf20d0e57ec
|
||||
Provides: bundled(golang(golang.org/x/term)) = 0.38.0
|
||||
Provides: bundled(golang(golang.org/x/text)) = 0.32.0
|
||||
Provides: bundled(golang(golang.org/x/tools)) = 0.27.0
|
||||
Provides: bundled(golang(golang.org/x/tools)) = 0.39.1.0.20251205000126.062ef7b6ced2
|
||||
Provides: bundled(golang(rsc.io/markdown)) = 0.0.0.20240306144322.0bf8f97ee8ef
|
||||
Provides: bundled(golang(github.com/google/pprof)) = 0.0.0.20230811205829.9131a7e9cc17
|
||||
Provides: bundled(golang(github.com/ianlancetaylor/demangle)) = 0.0.0.20230524184225.eabc099b10ab
|
||||
Provides: bundled(golang(golang.org/x/arch)) = 0.6.0
|
||||
Provides: bundled(golang(golang.org/x/crypto)) = 0.16.1.0.20231129163542.152cdb1503eb
|
||||
Provides: bundled(golang(golang.org/x/mod)) = 0.14.0
|
||||
Provides: bundled(golang(golang.org/x/net)) = 0.19.1.0.20240412193750.db050b07227e
|
||||
Provides: bundled(golang(golang.org/x/sync)) = 0.5.0
|
||||
Provides: bundled(golang(golang.org/x/sys)) = 0.15.0
|
||||
Provides: bundled(golang(golang.org/x/term)) = 0.15.0
|
||||
Provides: bundled(golang(golang.org/x/text)) = 0.14.0
|
||||
Provides: bundled(golang(golang.org/x/tools)) = 0.16.2.0.20231218185909.83bceaf2424d
|
||||
|
||||
Requires: %{name}-bin = %{version}-%{release}
|
||||
Requires: %{name}-src = %{version}-%{release}
|
||||
Requires: go-filesystem
|
||||
|
||||
Patch1: 0001-Modify-go.env.patch
|
||||
Patch5: 0005-Skip-TestCrashDumpsAllThreads.patch
|
||||
Patch6: 0006-Default-to-ld.bfd-on-ARM64.patch
|
||||
# Related to https://gcc.gnu.org/PR118497
|
||||
Patch8: fix_cgo_panic-with-gcc15-in-368.patch
|
||||
# Related to https://github.com/golang/go/issues/74476
|
||||
Patch9: skip_lsan_tests.patch
|
||||
Patch4: 0004-cmd-link-use-gold-on-ARM-ARM64-only-if-gold-is-avail.patch
|
||||
Patch5: 0005-Skip-TestCrashDumpsAllThreads.patch
|
||||
|
||||
# Having documentation separate was broken
|
||||
Obsoletes: %{name}-docs < 1.1-4
|
||||
|
|
@ -252,8 +243,11 @@ Requires(preun): %{_sbindir}/update-alternatives
|
|||
# This is an odd issue, still looking for a better fix.
|
||||
Requires: glibc
|
||||
Requires: gcc
|
||||
Recommends: git-core, subversion, mercurial
|
||||
|
||||
%if 0%{?rhel} && 0%{?rhel} < 8
|
||||
Requires: git, subversion, mercurial
|
||||
%else
|
||||
Recommends: git, subversion, mercurial
|
||||
%endif
|
||||
%description bin
|
||||
%{summary}
|
||||
|
||||
|
|
@ -393,7 +387,7 @@ echo "== 4 =="
|
|||
echo "%%{goroot}/$file" >> $shared_list
|
||||
echo "%%{golibdir}/$(basename $file)" >> $shared_list
|
||||
done
|
||||
|
||||
|
||||
find pkg/*_dynlink/ -type d -printf '%%%dir %{goroot}/%p\n' >> $shared_list
|
||||
find pkg/*_dynlink/ ! -type d -printf '%{goroot}/%p\n' >> $shared_list
|
||||
%endif
|
||||
|
|
@ -462,12 +456,7 @@ export CGO_ENABLED=0
|
|||
#endif
|
||||
|
||||
# make sure to not timeout
|
||||
%ifnarch riscv64
|
||||
export GO_TEST_TIMEOUT_SCALE=2
|
||||
%else
|
||||
# NOTE(davidlt): 20 is probably too much, but it's only for riscv and it works
|
||||
export GO_TEST_TIMEOUT_SCALE=20
|
||||
%endif
|
||||
|
||||
%if %{fail_on_tests}
|
||||
./run.bash --no-rebuild -v -v -v -k
|
||||
|
|
@ -498,8 +487,6 @@ fi
|
|||
%dir %{goroot}
|
||||
%{goroot}/api/
|
||||
%{goroot}/lib/time/
|
||||
%{goroot}/lib/wasm/
|
||||
%{goroot}/lib/fips140/
|
||||
|
||||
# ensure directory ownership, so they are cleaned up if empty
|
||||
%dir %{gopath}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
summary: CI Gating Plan
|
||||
discover:
|
||||
how: fmf
|
||||
url: https://src.fedoraproject.org/tests/golang
|
||||
execute:
|
||||
how: tmt
|
||||
|
|
|
|||
|
|
@ -1,25 +0,0 @@
|
|||
From 958f06663d81dd4b946fce963b9f985f68da6212 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Alejandro=20S=C3=A1ez?= <asm@redhat.com>
|
||||
Date: Wed, 16 Jul 2025 13:14:03 +0200
|
||||
Subject: [PATCH] Skip lsan_test.go in aarch64
|
||||
|
||||
Reference: https://github.com/golang/go/issues/74476
|
||||
---
|
||||
src/cmd/cgo/internal/testsanitizers/lsan_test.go | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/cmd/cgo/internal/testsanitizers/lsan_test.go b/src/cmd/cgo/internal/testsanitizers/lsan_test.go
|
||||
index 4dde3d20ec..3bcf0eba51 100644
|
||||
--- a/src/cmd/cgo/internal/testsanitizers/lsan_test.go
|
||||
+++ b/src/cmd/cgo/internal/testsanitizers/lsan_test.go
|
||||
@@ -2,7 +2,7 @@
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
-//go:build linux || (freebsd && amd64)
|
||||
+//go:build (linux && !(arm64 || riscv64)) || (freebsd && amd64)
|
||||
|
||||
package sanitizers_test
|
||||
|
||||
--
|
||||
2.50.1
|
||||
2
sources
2
sources
|
|
@ -1 +1 @@
|
|||
SHA512 (go1.26rc1.src.tar.gz) = 6696ee765dcde64b830b14e20a5fdf6324916211bff80a62d0db0cbef58bb0856f02e88e95b2f1a3ad6d9282ebd04a377a0b000d56849576caedbd526c9a7923
|
||||
SHA512 (go1.22.9.src.tar.gz) = d9237212e82f6acb40685fdbe75f3e5c6a6340329c31a885e7f241a5868b5835052e90063db849a5960c8242da2971c55a3a3cab2c0e0e62754b8c33344887cf
|
||||
|
|
|
|||
64
tests/Sanity/basic-smoke/Makefile
Normal file
64
tests/Sanity/basic-smoke/Makefile
Normal file
|
|
@ -0,0 +1,64 @@
|
|||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Makefile of /tools/golang/Sanity/basic-smoke
|
||||
# Description: basic smoke test for go
|
||||
# Author: Edjunior Machado <emachado@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2019 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
export TEST=/tools/golang/Sanity/basic-smoke
|
||||
export TESTVERSION=1.0
|
||||
|
||||
BUILT_FILES=
|
||||
|
||||
FILES=$(METADATA) runtest.sh Makefile PURPOSE
|
||||
|
||||
.PHONY: all install download clean
|
||||
|
||||
run: $(FILES) build
|
||||
./runtest.sh
|
||||
|
||||
build: $(BUILT_FILES)
|
||||
test -x runtest.sh || chmod a+x runtest.sh
|
||||
|
||||
clean:
|
||||
rm -f *~ $(BUILT_FILES)
|
||||
|
||||
|
||||
include /usr/share/rhts/lib/rhts-make.include
|
||||
|
||||
$(METADATA): Makefile
|
||||
@echo "Owner: Edjunior Machado <emachado@redhat.com>" > $(METADATA)
|
||||
@echo "Name: $(TEST)" >> $(METADATA)
|
||||
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
||||
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
||||
@echo "Description: basic smoke test for go" >> $(METADATA)
|
||||
@echo "Type: Sanity" >> $(METADATA)
|
||||
@echo "TestTime: 5m" >> $(METADATA)
|
||||
@echo "RunFor: golang" >> $(METADATA)
|
||||
@echo "Requires: golang" >> $(METADATA)
|
||||
@echo "Priority: Normal" >> $(METADATA)
|
||||
@echo "License: GPLv2+" >> $(METADATA)
|
||||
@echo "Confidential: no" >> $(METADATA)
|
||||
@echo "Destructive: no" >> $(METADATA)
|
||||
@echo "Releases: -RHEL4 -RHEL6 -RHELClient5 -RHELServer5" >> $(METADATA)
|
||||
@echo "Architectures: s390x x86_64 ppc64le aarch64" >> $(METADATA)
|
||||
|
||||
rhts-lint $(METADATA)
|
||||
3
tests/Sanity/basic-smoke/PURPOSE
Normal file
3
tests/Sanity/basic-smoke/PURPOSE
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
PURPOSE of /tools/golang/Sanity/basic-smoke
|
||||
Description: basic smoke test for go
|
||||
Author: Edjunior Machado <emachado@redhat.com>
|
||||
13
tests/Sanity/basic-smoke/main.fmf
Normal file
13
tests/Sanity/basic-smoke/main.fmf
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
summary: basic smoke test for go
|
||||
description: ''
|
||||
contact:
|
||||
- Edjunior Machado <emachado@redhat.com>
|
||||
component:
|
||||
- golang
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- golang
|
||||
duration: 5m
|
||||
extra-summary: /tools/golang/Sanity/basic-smoke
|
||||
extra-task: /tools/golang/Sanity/basic-smoke
|
||||
68
tests/Sanity/basic-smoke/runtest.sh
Executable file
68
tests/Sanity/basic-smoke/runtest.sh
Executable file
|
|
@ -0,0 +1,68 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/golang/Sanity/basic-smoke
|
||||
# Description: basic smoke test for go
|
||||
# Author: Edjunior Machado <emachado@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2019 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="$(rpm -qf $(which go))"
|
||||
|
||||
# Conserve the non-zero return value through the pipe
|
||||
set -o pipefail
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
cat << EOF > $TmpDir/hello.go
|
||||
package main
|
||||
import "fmt"
|
||||
func main() {
|
||||
fmt.Println("hello world")
|
||||
}
|
||||
EOF
|
||||
rlAssertExists "$TmpDir/hello.go"
|
||||
|
||||
rlRun "go run $TmpDir/hello.go |& tee $TmpDir/go-run-hello.out" 0 "Testing 'go run'"
|
||||
rlAssertNotDiffer <(echo 'hello world') go-run-hello.out
|
||||
|
||||
rlRun "go build -o $TmpDir/hello $TmpDir/hello.go" 0 "Testing 'go build'"
|
||||
rlAssertExists "hello"
|
||||
|
||||
rlRun "$TmpDir/hello |& tee $TmpDir/hello.out" 0 "Running binary"
|
||||
rlAssertNotDiffer <(echo 'hello world') hello.out
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
Loading…
Add table
Add a link
Reference in a new issue