git: 9cf9f6909d2f - main - sysutils/docker-buildx: fix build on armv7

From: Robert Clausecker <fuz_at_FreeBSD.org>
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)
+ 	}