The package rpms/partclone.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/partclone.git/commit/?id=2fe54b96....
Change:
+%ifarch s390x
Thanks.
Full change:
============
commit 2fe54b966d5d568a2d71e61283e38acaabcafd0d
Author: Robert Scheck <robert(a)fedoraproject.org>
Date: Sun Jan 8 02:33:26 2023 +0100
Upgrade to 0.3.21 (#2159036)
diff --git a/partclone-0.3.20-c99-for-loop.patch b/partclone-0.3.20-c99-for-loop.patch
deleted file mode 100644
index 6af5cd2..0000000
--- a/partclone-0.3.20-c99-for-loop.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 63719febd8db264aeae2770a5dd9056763dde261 Mon Sep 17 00:00:00 2001
-From: Robert Scheck <robert(a)fedoraproject.org>
-Date: Fri, 29 Apr 2022 02:35:40 +0200
-Subject: [PATCH] Change C99 for loop init to C89 for compatibility
-
----
- src/partclone.c | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/src/partclone.c b/src/partclone.c
-index c773de51..bbcf96c4 100644
---- a/src/partclone.c
-+++ b/src/partclone.c
-@@ -1797,6 +1797,7 @@ long long skip_bytes(int *fd, char *empty_buffer, unsigned long
long empty_buffe
- }
-
- int skip_blocks(int *fd, char *empty_buffer, unsigned long long empty_buffer_size,
unsigned long long empty_count, cmd_opt *opt, unsigned long long *block_id) {
-+ unsigned long long i;
- int w_size;
- if (empty_count == 0)
- return 0;
-@@ -1808,7 +1809,7 @@ int skip_blocks(int *fd, char *empty_buffer, unsigned long long
empty_buffer_siz
- *block_id += empty_count;
- return 0;
- }
-- for (unsigned long long i = 0; i < empty_count; i++) {
-+ for (i = 0; i < empty_count; i++) {
- w_size = write_all(fd, empty_buffer, empty_buffer_size, opt);
- if (w_size < 0)
- return w_size;
diff --git a/partclone-0.3.21-tests-size.patch b/partclone-0.3.21-tests-size.patch
new file mode 100644
index 0000000..16ed5d6
--- /dev/null
+++ b/partclone-0.3.21-tests-size.patch
@@ -0,0 +1,21 @@
+Patch by Robert Scheck <robert(a)fedoraproject.org> for partclone <= 0.3.21 to
merge
+the following patches proposed to upstream:
+
+ -
https://github.com/Thomas-Tsai/partclone/pull/207
+ -
https://github.com/Thomas-Tsai/partclone/pull/209
+
+--- partclone-0.3.21/tests/_common 2023-01-06 10:55:15.000000000 +0100
++++ partclone-0.3.21/tests/_common.tests-size 2023-01-08 00:42:05.729742280 +0100
+@@ -77,6 +77,12 @@
+ fat32|fat|vfat)
+ normal_size=$((1024*128))
+ ;;
++ f2fs)
++ normal_size=$((1024*128))
++ ;;
++ xfs)
++ normal_size=$((1024*384))
++ ;;
+ esac
+
+ echo $normal_size
diff --git a/partclone.spec b/partclone.spec
index 717ecad..cc54714 100644
--- a/partclone.spec
+++ b/partclone.spec
@@ -3,21 +3,22 @@
Summary: Utility to clone and restore a partition
Name: partclone
-Version: 0.3.20
-Release: 2%{?dist}
-# Partclone itself is GPLv2+ but uses other source codes, breakdown:
-# GPLv3+: fail-mbr/fail-mbr.S
-# GPLv2 and GPLv2+: src/btrfs*
-# GPL+ and GPLv2 and GPLv2+ and LGPLv2 and LGPLv2+: src/xfs*
-# GPLv2 and GPLv2+: src/f2fs*
-# GPLv2+: src/{dd,extfs,fat,hfsplus,minix,nilfs,ntfsclone-ng,part}clone*
-# GPLv2+: src/{{fuseimg,info,main,ntfsfixboot,readblock}.c,progress*}
-# LGPLv2+: src/gettext.h
-# Unused source code (= not built): src/{exfat,jfs,reiser,ufs,vmfs}*
-License: GPL+ and GPLv2 and GPLv2+ and GPLv3+ and LGPLv2 and LGPLv2+
+Version: 0.3.21
+Release: 1%{?dist}
+# Partclone itself is GPL-2.0-or-later but uses other source codes, breakdown:
+# GPL-3.0-or-later: fail-mbr/fail-mbr.S
+# BSD-2-Clause AND GPL-2.0-only AND GPL-2.0-or-later AND LGPL-3.0-or-later: src/btrfs*
+# GPL-2.0-or-later: src/exfat*
+# GPL-2.0-only: src/f2fs/
+# GPL-1.0-or-later AND GPL-2.0-only AND GPL-2.0-or-later AND LGPL-2.1-only: src/xfs*
+# GPL-2.0-or-later:
src/{apfs,dd,extfs,fat,f2fs,hfsplus,minix,nilfs,ntfsclone-ng,part}clone*
+# GPL-2.0-or-later: src/{{fuseimg,info,main,ntfsfixboot,readblock}.c,progress*}
+# LGPL-2.0-or-later: src/gettext.h
+# Unused source code (= not built): src/{jfs,reiser,ufs,vmfs}*
+License: BSD-2-Clause AND GPL-1.0-or-later AND GPL-2.0-only AND GPL-2.0-or-later
AND GPL-3.0-or-later AND LGPL-2.1-only AND LGPL-2.0-or-later AND LGPL-3.0-or-later
URL:
https://partclone.org/
Source0:
https://github.com/Thomas-Tsai/partclone/archive/%{version}/%{name}-%{ver...
-Patch0:
https://github.com/Thomas-Tsai/partclone/commit/63719febd8db264aeae2770a5...
+Patch0: partclone-0.3.21-tests-size.patch
BuildRequires: gcc
BuildRequires: make
BuildRequires: libuuid-devel
@@ -27,6 +28,8 @@ BuildRequires: ncurses-devel
BuildRequires: openssl-devel >= 1.1.0
%else
BuildRequires: openssl11-devel
+# APFS support requires modern GCC
+BuildRequires: devtoolset-8-toolchain
%endif
BuildRequires: e2fsprogs-devel
BuildRequires: ntfs-3g-devel
@@ -40,8 +43,9 @@ BuildRequires: e2fsprogs
BuildRequires: ntfsprogs
BuildRequires: dosfstools
BuildRequires: xfsprogs
-%if 0%{?fedora} || 0%{?rhel} == 7
-# RHEL 8 (including EPEL 8) doesn't provide any btrfs-progs RPM at all
+BuildRequires: exfatprogs
+%if 0%{?fedora} || (0%{?rhel} && 0%{?rhel} < 8)
+# RHEL 8+ (including EPEL 8+) doesn't provide any btrfs-progs RPM at all
BuildRequires: btrfs-progs
%endif
%if 0%{?fedora}
@@ -60,7 +64,7 @@ libraries, e.g. e2fslibs is used to read and write the ext2 partition.
%prep
%setup -q
-%patch0 -p1 -b .c99-for-loop
+%patch0 -p1 -b .tests-size
autoreconf -i -f
# Some recent gcc or annobin changes seem to confuse the comparison (#1943056)
@@ -69,19 +73,22 @@ sed -e 's/exit 1/exit 0/' -i fail-mbr/compile-mbr.sh
%build
# src/progress.c:50: undefined reference to `__fpclassifyf',
# reported:
https://github.com/Thomas-Tsai/partclone/issues/153
-%if 0%{?rhel} == 7
+%if 0%{?rhel} && 0%{?rhel} < 8
+. /opt/rh/devtoolset-8/enable
export CFLAGS="$RPM_OPT_FLAGS $(pkg-config --cflags-only-I openssl11)"
export LDFLAGS="$RPM_LD_FLAGS $(pkg-config --libs-only-L openssl11)-lm"
%endif
%configure \
+ --enable-fuse \
--enable-extfs \
--enable-xfs \
--disable-reiserfs \
--disable-reiser4 \
--enable-hfsp \
+ --enable-apfs \
--enable-fat \
- --disable-exfat \
+ --enable-exfat \
--enable-f2fs \
%if 0%{?fedora}
--enable-nilfs2 \
@@ -110,31 +117,24 @@ rm -rf $RPM_BUILD_ROOT%{_datadir}/%{name}/
%if 0%{?testsuite}
%check
-# Patch proposal submitted:
https://github.com/Thomas-Tsai/partclone/issues/103
-sed -e 's/256/1440/' -i tests/_common
-
-# Tests for Btrfs, XFS and F2FS filesystems are broken on all architectures
-sed -e 's/^\(am__append_2 = btrfs.test\)/#\1/' \
- -e 's/^\(am__append_6 = xfs.test\)/#\1/' \
- -e 's/^\(am__append_8 = f2fs.test\)/#\1/' \
- -e 's/^\(am__append_11 = btrfs.test\)/#\1/' \
- -i tests/Makefile
-
# NILFS2 tests must be run as root (mockbuild is unprivileged)
-sed -e 's/^\(am__append_13 = nilfs2.test\)/#\1/' \
+sed -e 's/^\(am__append_[[:digit:]]* = nilfs2.test\)/#\1/' \
-i tests/Makefile
-# Tests for FAT and HFS+ filesystems are broken on ppc64 and s390x
-%ifarch ppc64 s390x
-sed -e 's/^\(am__append_3 = fat.test\)/#\1/' \
- -e 's/^\(am__append_5 = hfsplus.test\)/#\1/' \
+# Tests for FAT and F2FS filesystems support only little-endian
+# See also:
https://github.com/Thomas-Tsai/partclone/pull/205
+#
https://github.com/Thomas-Tsai/partclone/pull/210
+%ifarch s390x
+sed -e 's/^\(am__append_[[:digit:]]* = fat.test\)/#\1/' \
+ -e 's/^\(am__append_[[:digit:]]* = f2fs.test\)/#\1/' \
-i tests/Makefile
%endif
-# No f2fs-tools and hfsplus-tools in RHEL or EPEL
+# No btrfs-progs, f2fs-tools and hfsplus-tools in RHEL or EPEL
%if 0%{?rhel}
-sed -e 's/^\(am__append_5 = hfsplus.test\)/#\1/' \
- -e 's/^\(am__append_8 = f2fs.test\)/#\1/' \
+sed -e 's/^\(am__append_[[:digit:]]* = btrfs.test\)/#\1/' \
+ -e 's/^\(am__append_[[:digit:]]* = f2fs.test\)/#\1/' \
+ -e 's/^\(am__append_[[:digit:]]* = hfsplus.test\)/#\1/' \
-i tests/Makefile
%endif
@@ -151,6 +151,9 @@ make check || (cat tests/test-suite.log; exit 1)
%{_mandir}/man8/%{name}*.8*
%changelog
+* Sun Jan 08 2023 Robert Scheck <robert(a)fedoraproject.org> 0.3.21-1
+- Upgrade to 0.3.21 (#2159036)
+
* Fri Jul 22 2022 Fedora Release Engineering <releng(a)fedoraproject.org> - 0.3.20-2
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
diff --git a/sources b/sources
index 4fdbd11..47c0285 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (partclone-0.3.20.tar.gz) =
32dced369973c39412c562ab8731ff7b490f464b5ed4033456e6b23f3f79c437f43dc9db4c79b4821f35e4997d1444c8d80c53816b2a3bb90836fb5ad33b368e
+SHA512 (partclone-0.3.21.tar.gz) =
7e85a2ade02821559590241d3184149bef0cf4a1116692d28208adc392ea7488cfeb877b8a14b6566ff08b79d4a3dd7023acdec1a180c20313ced1b5f6633fe6