git: 9cf9f6909d2f - main - sysutils/docker-buildx: fix build on armv7
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 08 Jul 2026 08:49:20 UTC
The branch main has been updated by fuz:
URL: https://cgit.FreeBSD.org/ports/commit/?id=9cf9f6909d2fdecb965fd3119b806879f268dd82
commit 9cf9f6909d2fdecb965fd3119b806879f268dd82
Author: Robert Clausecker <fuz@FreeBSD.org>
AuthorDate: 2026-07-06 12:26:43 +0000
Commit: Robert Clausecker <fuz@FreeBSD.org>
CommitDate: 2026-07-08 08:49:10 +0000
sysutils/docker-buildx: fix build on armv7
On armv7, syscall.Timespec and golang.org/x/sys/unix.Timespec do not
have the same members due to padding in syscall.Timespec. Work around
this difference by converting field-by-field.
Approved by: portmgr (build fix blanket)
See also: https://github.com/tonistiigi/fsutil/issues/266
---
...h-vendor_github.com_tonistiigi_fsutil_copy_copy__unix.go | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/sysutils/docker-buildx/files/patch-vendor_github.com_tonistiigi_fsutil_copy_copy__unix.go b/sysutils/docker-buildx/files/patch-vendor_github.com_tonistiigi_fsutil_copy_copy__unix.go
new file mode 100644
index 000000000000..7229f810b60d
--- /dev/null
+++ b/sysutils/docker-buildx/files/patch-vendor_github.com_tonistiigi_fsutil_copy_copy__unix.go
@@ -0,0 +1,13 @@
+--- vendor/github.com/tonistiigi/fsutil/copy/copy_unix.go.orig 2026-07-06 12:19:07 UTC
++++ vendor/github.com/tonistiigi/fsutil/copy/copy_unix.go
+@@ -62,7 +62,9 @@ func (c *copier) copyFileTimestamp(fi os.FileInfo, nam
+ }
+
+ st := fi.Sys().(*syscall.Stat_t)
+- timespec := []unix.Timespec{unix.Timespec(StatAtime(st)), unix.Timespec(StatMtime(st))}
++ atime := unix.Timespec{Sec: StatAtime(st).Sec, Nsec: StatAtime(st).Nsec}
++ mtime := unix.Timespec{Sec: StatMtime(st).Sec, Nsec: StatMtime(st).Nsec}
++ timespec := []unix.Timespec{atime, mtime}
+ if err := unix.UtimesNanoAt(unix.AT_FDCWD, name, timespec, unix.AT_SYMLINK_NOFOLLOW); err != nil {
+ return errors.Wrapf(err, "failed to utime %s", name)
+ }