diff --git a/1000-add-loongarch64-support-not-upstream-new-file-bolt.patch b/1000-add-loongarch64-support-not-upstream-new-file-bolt.patch new file mode 100644 index 0000000000000000000000000000000000000000..603857c50c46d33d63f6483752cb8369f051db5a --- /dev/null +++ b/1000-add-loongarch64-support-not-upstream-new-file-bolt.patch @@ -0,0 +1,34 @@ +From 72de69fc9c8e6f418b754a6eca8ed8c296fb7047 Mon Sep 17 00:00:00 2001 +From: rpm-build +Date: Thu, 11 May 2023 08:46:48 +0800 +Subject: [PATCH] add loong64 support for bolt + +Signed-off-by: rpm-build +--- + vendor/github.com/boltdb/bolt/bolt_loong64.go | 13 +++++++++++++ + 1 file changed, 13 insertions(+) + create mode 100644 vendor/github.com/boltdb/bolt/bolt_loong64.go + +diff --git a/vendor/github.com/boltdb/bolt/bolt_loong64.go b/vendor/github.com/boltdb/bolt/bolt_loong64.go +new file mode 100644 +index 0000000..1eb7a43 +--- /dev/null ++++ b/vendor/github.com/boltdb/bolt/bolt_loong64.go +@@ -0,0 +1,13 @@ ++//go:build loong64 ++// +build loong64 ++ ++package bolt ++ ++// maxMapSize represents the largest mmap size supported by Bolt. ++const maxMapSize = 0xFFFFFFFFFFFF // 256TB ++ ++// maxAllocSize is the size used when creating array pointers. ++const maxAllocSize = 0x7FFFFFFF ++ ++// Are unaligned load/stores broken on this arch? ++var brokenUnaligned = false +\ No newline at end of file +-- +2.39.2 + diff --git a/1001-add-sw_64-support-not-upstream-new-file-bolt.patch b/1001-add-sw_64-support-not-upstream-new-file-bolt.patch new file mode 100644 index 0000000000000000000000000000000000000000..9889ed64bff9fdc748203d47f90fab742af59f92 --- /dev/null +++ b/1001-add-sw_64-support-not-upstream-new-file-bolt.patch @@ -0,0 +1,16 @@ +diff -Naur a/vendor/github.com/boltdb/bolt/bolt_sw64.go b/vendor/github.com/boltdb/bolt/bolt_sw64.go +--- a/vendor/github.com/boltdb/bolt/bolt_sw64.go 1970-01-01 08:00:00.000000000 +0800 ++++ b/vendor/github.com/boltdb/bolt/bolt_sw64.go 2022-09-16 15:23:18.290000000 +0800 +@@ -0,0 +1,12 @@ ++// +build sw64 ++ ++package bolt ++ ++// maxMapSize represents the largest mmap size supported by Bolt. ++const maxMapSize = 0xFFFFFFFFFFFF // 256TB ++ ++// maxAllocSize is the size used when creating array pointers. ++const maxAllocSize = 0x7FFFFFFF ++ ++// Are unaligned load/stores broken on this arch? ++var brokenUnaligned = false diff --git a/podman.spec b/podman.spec index 177dc29d9c2c81203519faabcc10d8359fea5566..87b90e488781ce8fa0a97b0a7b095380a3b3a54e 100644 --- a/podman.spec +++ b/podman.spec @@ -1,13 +1,14 @@ %define debug_package %{nil} Name: podman Version: 0.10.1 -Release: 12 +Release: 13 Summary: A daemonless container engine for managing Containers Epoch: 1 License: ASL 2.0 URL: https://podman.io/ Source0: https://github.com/containers/libpod/archive/e4a155328fb88590fafd3d4e845f9bca49133f62/libpod-e4a1553.tar.gz Source1: https://github.com/cpuguy83/go-md2man/archive/v1.0.10.tar.gz +Source9000: sys_1.17.tar.gz BuildRequires: golang btrfs-progs-devel glib2-devel glibc-devel glibc-static BuildRequires: git gpgme-devel libassuan-devel libgpg-error-devel libseccomp-devel BuildRequires: libselinux-devel ostree-devel pkgconfig make @@ -119,6 +120,8 @@ Patch5: CVE-2021-20188.patch Patch6: 0002-Fix-the-invalid-memory-address-reference.patch Patch7: 0003-eat-signal-23-in-signal-proxy.patch Patch8: 0004-create-directories-with-0755-mode.patch +Patch1000:1000-add-loongarch64-support-not-upstream-new-file-bolt.patch +Patch1001:1001-add-sw_64-support-not-upstream-new-file-bolt.patch %description Podman manages the entire container ecosystem which includes pods, @@ -166,6 +169,16 @@ sed -i 's/0.0.0/%{version}/' contrib/python/%{name}/setup.py sed -i 's/0.0.0/%{version}/' contrib/python/py%{name}/setup.py mv pkg/hooks/README.md pkg/hooks/README-hooks.md tar -xf %SOURCE1 +%ifarch loongarch64 +%__rm -rf vendor/golang.org/x/sys +%__tar xf %{SOURCE9000} -C vendor/golang.org/x/ +%endif +%ifarch sw_64 +%__rm -rf vendor/golang.org/x/sys +cp -af %{_prefix}/lib/golang/src/cmd/vendor/golang.org/x/sys vendor/golang.org/x/ +sed -i '/AAFS_MAGIC/aTIOCSWINSZ = 0x80087467' vendor/golang.org/x/sys/unix/zerrors_linux_sw64.go +sed -i '/SIGABRT /aSIGSTKFLT = syscall.Signal(0x10)' vendor/golang.org/x/sys/unix/zerrors_linux_sw64.go +%endif %build mkdir -p _build/bin _output/bin @@ -182,6 +195,10 @@ export GOPATH=$(pwd)/_build:$(pwd):$(pwd):%{gopath} export BUILDTAGS="varlink selinux seccomp $(hack/btrfs_installed_tag.sh) $(hack/btrfs_tag.sh) $(hack/libdm_tag.sh) exclude_graphdriver_devicemapper" export GO111MODULE=off go generate ./cmd/%{name}/varlink/... +# -i flag is deprecated +%ifarch sw_64 +%__sed -i 's/build -i/build/g' Makefile +%endif BUILDTAGS=$BUILDTAGS make binaries docs %install @@ -228,6 +245,9 @@ install -Dp -m644 libpod.conf %{buildroot}%{_datadir}/containers/libpod.conf %{_mandir}/man5/*.5* %changelog +* Fri Aug 18 2023 panchenbo - 1:0.10.1-13 +- add loongarch64 and sw_64 support + * Mon Mar 28 2022 Ge Wang 1:0.10.1-12 - Set umask to 022 ensure create directories with 0755 mode diff --git a/sys_1.17.tar.gz b/sys_1.17.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..a3652f1a5b4a184f62fcddb06f4f25be49e40669 Binary files /dev/null and b/sys_1.17.tar.gz differ