- Use python3 in buildroot
- Add make to BuildRequires - Switch gpt-header-move and msdos-overlap to python3 (bcl) - Modify gpt-header-move and msdos-overlap to work with py2 or py3 (bcl) - Fix atari label false positives (psusi) - Lift 512 byte restriction on fat resize (psusi) - build: Remove unused traces of dynamic loading (cjwatson) - Fix resizepart iec unit end sector (psusi) - mkpart: Allow negative start value when FS-TYPE is not given (mail) - Fix set and disk_set to not crash when no flags are supported (psusi) - tests: fix t6100-mdraid-partitions (psusi) - Fix make check (psusi) - linux: Include <sys/sysmacros.h> for major() macro. (rjones)
This commit is contained in:
parent
3166d30c65
commit
d6652ea632
@ -1,7 +1,7 @@
|
||||
From 2d572685e56e46fa10ea25c46185a17e38cb156c Mon Sep 17 00:00:00 2001
|
||||
From ba5e0451b51c983e40afd123b6e0d3eddb55e610 Mon Sep 17 00:00:00 2001
|
||||
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||
Date: Sat, 24 Mar 2018 17:37:02 +0000
|
||||
Subject: [PATCH] linux: Include <sys/sysmacros.h> for major() macro.
|
||||
Subject: [PATCH 82/92] linux: Include <sys/sysmacros.h> for major() macro.
|
||||
|
||||
Since glibc 2.27 this header is required.
|
||||
---
|
||||
@ -21,5 +21,5 @@ index 31b98ab..7e86b51 100644
|
||||
#include <libdevmapper.h>
|
||||
#endif
|
||||
--
|
||||
2.15.1
|
||||
2.17.1
|
||||
|
63
0083-Fix-make-check.patch
Normal file
63
0083-Fix-make-check.patch
Normal file
@ -0,0 +1,63 @@
|
||||
From d91acc645ad1204ded41cfecad337bf9c48952f6 Mon Sep 17 00:00:00 2001
|
||||
From: Phillip Susi <psusi@ubuntu.com>
|
||||
Date: Fri, 4 May 2018 10:12:05 -0400
|
||||
Subject: [PATCH 83/92] Fix make check
|
||||
|
||||
Make check failed due to some warnings treated as errors. One was
|
||||
caused by a warning that a function could have the noreturn attribute.
|
||||
It seems that this had previously been disabled but gcc has changed
|
||||
the flag from -Wmissing-noreturn to -Wsuggest-attribute=noreturn. The
|
||||
recently added volser.c test also caused a few warnings when not
|
||||
compiled on s390x because most of the functions were no used, so #if
|
||||
those out as well.
|
||||
---
|
||||
configure.ac | 2 +-
|
||||
libparted/tests/volser.c | 5 ++++-
|
||||
2 files changed, 5 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 738c697..056478f 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -226,7 +226,7 @@ if test "$gl_gcc_warnings" = yes; then
|
||||
nw="$nw -Wpacked"
|
||||
nw="$nw -Wmissing-prototypes"
|
||||
nw="$nw -Wmissing-declarations"
|
||||
- nw="$nw -Wmissing-noreturn"
|
||||
+ nw="$nw -Wsuggest-attribute=noreturn"
|
||||
# things I might fix soon:
|
||||
nw="$nw -Wfloat-equal" # sort.c, seq.c
|
||||
nw="$nw -Wmissing-format-attribute" # copy.c
|
||||
diff --git a/libparted/tests/volser.c b/libparted/tests/volser.c
|
||||
index 9063821..c6efa5f 100644
|
||||
--- a/libparted/tests/volser.c
|
||||
+++ b/libparted/tests/volser.c
|
||||
@@ -14,6 +14,8 @@
|
||||
#include "common.h"
|
||||
#include "progname.h"
|
||||
|
||||
+#if defined __s390__ || defined __s390x__
|
||||
+
|
||||
/* set dasd first */
|
||||
static char vol_devno[7] = {0};
|
||||
static char *tmp_disk;
|
||||
@@ -75,7 +77,6 @@ END_TEST
|
||||
|
||||
START_TEST (test_check_volser)
|
||||
{
|
||||
- char vol[7] = {0};
|
||||
char vol_long[] = "abcdefg";
|
||||
char vol_short[] = "ab_c ";
|
||||
char vol_null[] = " ";
|
||||
@@ -135,6 +136,8 @@ START_TEST (test_reuse_vtoc)
|
||||
}
|
||||
END_TEST
|
||||
|
||||
+#endif
|
||||
+
|
||||
int main (int argc, char **argv)
|
||||
{
|
||||
|
||||
--
|
||||
2.17.1
|
||||
|
26
0084-tests-fix-t6100-mdraid-partitions.patch
Normal file
26
0084-tests-fix-t6100-mdraid-partitions.patch
Normal file
@ -0,0 +1,26 @@
|
||||
From ddb9cce8a2ec87cdd9853bdca25c852c7aee8bdf Mon Sep 17 00:00:00 2001
|
||||
From: Phillip Susi <psusi@ubuntu.com>
|
||||
Date: Fri, 4 May 2018 10:35:42 -0400
|
||||
Subject: [PATCH 84/92] tests: fix t6100-mdraid-partitions
|
||||
|
||||
The test was failing because it didn't wait for the md device
|
||||
to appear after creating it.
|
||||
---
|
||||
tests/t6100-mdraid-partitions.sh | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/tests/t6100-mdraid-partitions.sh b/tests/t6100-mdraid-partitions.sh
|
||||
index dbb1686..b37cddf 100755
|
||||
--- a/tests/t6100-mdraid-partitions.sh
|
||||
+++ b/tests/t6100-mdraid-partitions.sh
|
||||
@@ -47,6 +47,7 @@ cleanup_fn_() {
|
||||
|
||||
# create mdraid on top of both partitions
|
||||
mdadm -C $md_dev --force -R -l1 -n2 "${scsi_dev}1" "${scsi_dev}2"
|
||||
+wait_for_dev_to_appear_ ${md_dev} || { fail=1; cat /proc/partitions; }
|
||||
|
||||
# create gpt and two partitions on the raid device
|
||||
parted -s $md_dev mklabel gpt \
|
||||
--
|
||||
2.17.1
|
||||
|
@ -0,0 +1,77 @@
|
||||
From 9e196cc2902255c328a90584e44666b79e4344c3 Mon Sep 17 00:00:00 2001
|
||||
From: Phillip Susi <psusi@ubuntu.com>
|
||||
Date: Thu, 10 May 2018 12:31:36 -0400
|
||||
Subject: [PATCH 85/92] Fix set and disk_set to not crash when no flags are
|
||||
supported
|
||||
|
||||
Loop labels and file images support no flags. set and disk_set
|
||||
would prompt for a flag and accept any string since the list of
|
||||
flags was empty, then fail to look up an actual flag value, then
|
||||
throw an exception with a null string for the name of the flag,
|
||||
which would bug.
|
||||
---
|
||||
parted/ui.c | 18 ++++++++++++++++--
|
||||
tests/t3310-flags.sh | 13 +++++++++++++
|
||||
3 files changed, 31 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/parted/ui.c b/parted/ui.c
|
||||
index 752860b..4f42b7c 100644
|
||||
--- a/parted/ui.c
|
||||
+++ b/parted/ui.c
|
||||
@@ -1150,7 +1150,14 @@ command_line_get_disk_flag (const char* prompt, const PedDisk* disk,
|
||||
opts = str_list_append_unique (opts, _(walk_name));
|
||||
}
|
||||
}
|
||||
-
|
||||
+ if (opts == NULL)
|
||||
+ {
|
||||
+ ped_exception_throw (PED_EXCEPTION_ERROR,
|
||||
+ PED_EXCEPTION_OK,
|
||||
+ _("No flags supported"));
|
||||
+
|
||||
+ return 0;
|
||||
+ }
|
||||
flag_name = command_line_get_word (prompt, NULL, opts, 1);
|
||||
str_list_destroy (opts);
|
||||
|
||||
@@ -1179,7 +1186,14 @@ command_line_get_part_flag (const char* prompt, const PedPartition* part,
|
||||
opts = str_list_append_unique (opts, _(walk_name));
|
||||
}
|
||||
}
|
||||
-
|
||||
+ if (opts == NULL)
|
||||
+ {
|
||||
+ ped_exception_throw (PED_EXCEPTION_ERROR,
|
||||
+ PED_EXCEPTION_OK,
|
||||
+ _("No flags supported"));
|
||||
+
|
||||
+ return 0;
|
||||
+ }
|
||||
flag_name = command_line_get_word (prompt, NULL, opts, 1);
|
||||
str_list_destroy (opts);
|
||||
|
||||
diff --git a/tests/t3310-flags.sh b/tests/t3310-flags.sh
|
||||
index 2da72d0..0997748 100644
|
||||
--- a/tests/t3310-flags.sh
|
||||
+++ b/tests/t3310-flags.sh
|
||||
@@ -114,4 +114,17 @@ for table_type in aix amiga atari bsd dvh gpt mac msdos pc98 sun loop; do
|
||||
done
|
||||
done
|
||||
|
||||
+# loop filesystems support no flags. Make sure this doesn't crash
|
||||
+
|
||||
+if [ $ss == 512 ]; then
|
||||
+ # only test on 512 byte ss since mke2fs assumes this on a file
|
||||
+ truncate -s 5m img || framework_failure
|
||||
+ mke2fs img || framework_failure
|
||||
+ echo Error: No flags supported > out.exp
|
||||
+ parted -s img set 1 foo on > out 2>&1
|
||||
+ compare out.exp out || fail=1
|
||||
+ parted -s img disk_set foo on > out 2>&1
|
||||
+ compare out.exp out || fail=1
|
||||
+fi
|
||||
+
|
||||
Exit $fail
|
||||
--
|
||||
2.17.1
|
||||
|
122
0086-mkpart-Allow-negative-start-value-when-FS-TYPE-is-no.patch
Normal file
122
0086-mkpart-Allow-negative-start-value-when-FS-TYPE-is-no.patch
Normal file
@ -0,0 +1,122 @@
|
||||
From f3b4015e216a3733082e71ff930526f3e8bf0c26 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Niklas=20Hamb=C3=BCchen?= <mail@nh2.me>
|
||||
Date: Fri, 11 May 2018 21:09:05 +0200
|
||||
Subject: [PATCH 86/92] mkpart: Allow negative start value when FS-TYPE is not
|
||||
given
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
The manual had long documented that negative values are
|
||||
allowed for both start and end values, but until now negative
|
||||
start values were rejected if FS-TYPE was not given.
|
||||
|
||||
Example:
|
||||
|
||||
# parted --script -a optimal /dev/loop0 -- mklabel gpt mkpart primary ext4 -5MiB 100%
|
||||
(succeeds)
|
||||
|
||||
# parted --script -a optimal /dev/loop0 -- mklabel gpt mkpart primary -5MiB 100%
|
||||
parted: invalid token: -5MiB
|
||||
Error: Expecting a file system type.
|
||||
|
||||
This commit fixes the latter error.
|
||||
The issue was an insufficient lookahead in command line parsing,
|
||||
looking only for digits when skipping over FS-TYPE.
|
||||
The fix is including the minus '-' in the lookahead.
|
||||
|
||||
Originally reported as Debian bug #880035:
|
||||
|
||||
"parted: fails to use negative start value for 'mkpart' command without specyfying FS-TYPE"
|
||||
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=880035
|
||||
|
||||
Signed-off-by: Niklas Hambüchen <mail@nh2.me>
|
||||
---
|
||||
parted/parted.c | 2 +-
|
||||
tests/Makefile.am | 1 +
|
||||
tests/t0213-mkpart-start-negative.sh | 48 ++++++++++++++++++++++++++++
|
||||
4 files changed, 52 insertions(+), 1 deletion(-)
|
||||
create mode 100755 tests/t0213-mkpart-start-negative.sh
|
||||
|
||||
diff --git a/parted/parted.c b/parted/parted.c
|
||||
index b5e3b97..88f32b9 100644
|
||||
--- a/parted/parted.c
|
||||
+++ b/parted/parted.c
|
||||
@@ -682,7 +682,7 @@ do_mkpart (PedDevice** dev, PedDisk** diskp)
|
||||
|
||||
peek_word = command_line_peek_word ();
|
||||
if (part_type == PED_PARTITION_EXTENDED
|
||||
- || (peek_word && isdigit (peek_word[0]))) {
|
||||
+ || (peek_word && (isdigit (peek_word[0]) || peek_word[0] == '-'))) {
|
||||
fs_type = NULL;
|
||||
} else {
|
||||
if (!command_line_get_fs_type (_("File system type?"),
|
||||
diff --git a/tests/Makefile.am b/tests/Makefile.am
|
||||
index a840304..3851983 100644
|
||||
--- a/tests/Makefile.am
|
||||
+++ b/tests/Makefile.am
|
||||
@@ -25,6 +25,7 @@ TESTS = \
|
||||
t0210-gpt-resized-partition-entry-array.sh \
|
||||
t0211-gpt-rewrite-header.sh \
|
||||
t0212-gpt-many-partitions.sh \
|
||||
+ t0213-mkpart-start-negative.sh \
|
||||
t0220-gpt-msftres.sh \
|
||||
t0250-gpt.sh \
|
||||
t0251-gpt-unicode.sh \
|
||||
diff --git a/tests/t0213-mkpart-start-negative.sh b/tests/t0213-mkpart-start-negative.sh
|
||||
new file mode 100755
|
||||
index 0000000..182ef0c
|
||||
--- /dev/null
|
||||
+++ b/tests/t0213-mkpart-start-negative.sh
|
||||
@@ -0,0 +1,48 @@
|
||||
+#!/bin/sh
|
||||
+# Make sure parted mkpart ends the partition one sector before the specified
|
||||
+# value if end is specified with IEC units.
|
||||
+
|
||||
+# Copyright (C) 2011-2018 Free Software Foundation, 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 3 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/>.
|
||||
+
|
||||
+. "${srcdir=.}/init.sh"; path_prepend_ ../parted
|
||||
+
|
||||
+require_512_byte_sector_size_
|
||||
+n_mbs=8
|
||||
+dev=dev-file
|
||||
+
|
||||
+dd if=/dev/null of=$dev bs=1M seek=$n_mbs || fail=1
|
||||
+# start negative, end positive
|
||||
+parted --align=none -s $dev -- mklabel gpt mkpart p1 -7MiB 2MiB > err 2>&1 || fail=1
|
||||
+compare /dev/null err || fail=1 # expect no output
|
||||
+
|
||||
+# start negative, end negative
|
||||
+parted --align=none -s $dev -- mkpart p2 -6MiB -5MiB > err 2>&1 || fail=1
|
||||
+compare /dev/null err || fail=1 # expect no output
|
||||
+
|
||||
+# check boundaries of the partitions
|
||||
+parted -m -s $dev u s p > out || fail=1
|
||||
+
|
||||
+# prepare expected output
|
||||
+cat <<EOF > exp || framework_failure
|
||||
+1:2048s:4095s:2048s::p1:;
|
||||
+2:4096s:6143s:2048s::p2:;
|
||||
+EOF
|
||||
+
|
||||
+# compare expected and actual outputs
|
||||
+sed -e "1,2d" out > k; mv k out
|
||||
+compare exp out || fail=1
|
||||
+
|
||||
+Exit $fail
|
||||
--
|
||||
2.17.1
|
||||
|
32
0087-Fix-resizepart-iec-unit-end-sector.patch
Normal file
32
0087-Fix-resizepart-iec-unit-end-sector.patch
Normal file
@ -0,0 +1,32 @@
|
||||
From 247e3fc6cd8bca79b7c0362886ae9b5b06ba6f8c Mon Sep 17 00:00:00 2001
|
||||
From: Phillip Susi <psusi@ubuntu.com>
|
||||
Date: Thu, 12 May 2016 21:38:51 -0400
|
||||
Subject: [PATCH 87/92] Fix resizepart iec unit end sector
|
||||
|
||||
Fix resizepart to adjust the end to be -1 sector when using iec
|
||||
power of 2 units so that the next partition can start immediately
|
||||
following the new end, just like mkpart does.
|
||||
---
|
||||
parted/parted.c | 5 ++++-
|
||||
2 files changed, 8 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/parted/parted.c b/parted/parted.c
|
||||
index 88f32b9..267c346 100644
|
||||
--- a/parted/parted.c
|
||||
+++ b/parted/parted.c
|
||||
@@ -1567,8 +1567,11 @@ do_resizepart (PedDevice** dev, PedDisk** diskp)
|
||||
|
||||
start = part->geom.start;
|
||||
end = oldend = part->geom.end;
|
||||
- if (!command_line_get_sector (_("End?"), *dev, &end, &range_end, NULL))
|
||||
+ char *end_input;
|
||||
+ if (!command_line_get_sector (_("End?"), *dev, &end, &range_end, &end_input))
|
||||
goto error;
|
||||
+ _adjust_end_if_iec(&start, &end, range_end, end_input);
|
||||
+ free(end_input);
|
||||
/* Do not move start of the partition */
|
||||
constraint = constraint_from_start_end_fixed_start (*dev, start, range_end);
|
||||
if (!ped_disk_set_partition_geom (disk, part, constraint,
|
||||
--
|
||||
2.17.1
|
||||
|
238
0088-build-Remove-unused-traces-of-dynamic-loading.patch
Normal file
238
0088-build-Remove-unused-traces-of-dynamic-loading.patch
Normal file
@ -0,0 +1,238 @@
|
||||
From b49388018931cab220b9dd50f3a2bd51401e48af Mon Sep 17 00:00:00 2001
|
||||
From: Colin Watson <cjwatson@ubuntu.com>
|
||||
Date: Mon, 21 Sep 2015 12:10:02 +0100
|
||||
Subject: [PATCH 88/92] build: Remove unused traces of dynamic loading
|
||||
|
||||
Now that file system operations have been removed from libparted,
|
||||
libreiserfs is no longer used. Remove references to it, along with the
|
||||
dynamic loading build infrastructure which was only used for
|
||||
libreiserfs.
|
||||
|
||||
Signed-off-by: Colin Watson <cjwatson@ubuntu.com>
|
||||
---
|
||||
README | 9 ++----
|
||||
configure.ac | 49 --------------------------------
|
||||
doc/parted.texi | 15 ----------
|
||||
libparted/Makefile.am | 1 -
|
||||
libparted/fs/reiserfs/reiserfs.c | 16 +----------
|
||||
libparted/tests/Makefile.am | 1 -
|
||||
libparted/tests/t2100-zerolen.sh | 3 --
|
||||
parted.spec.in | 3 +-
|
||||
8 files changed, 4 insertions(+), 93 deletions(-)
|
||||
|
||||
diff --git a/README b/README
|
||||
index 3d1fee9..de91d4c 100644
|
||||
--- a/README
|
||||
+++ b/README
|
||||
@@ -56,10 +56,5 @@ dangerous bugs before they would have done damage, so we think it's worth
|
||||
it. Also, it means we get more bug reports ;)
|
||||
|
||||
|
||||
-(2) When doing dependencies, remember that libreiserfs is a *soft* dependency,
|
||||
-so I guess that means Debian-look-alikes should do a "suggests", but
|
||||
-not a "requires".
|
||||
-
|
||||
-
|
||||
-(3) When space is important, we suggest --without-readline, --disable-shared,
|
||||
-and possibly --disable-nls and --disable-dynamic-loading.
|
||||
+(2) When space is important, we suggest --without-readline, --disable-shared,
|
||||
+and possibly --disable-nls.
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 056478f..8413e06 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -103,20 +103,6 @@ if test "$enable_discover_only" = yes; then
|
||||
fi
|
||||
|
||||
PARTED_LIBS=""
|
||||
-AC_ARG_ENABLE([dynamic-loading],
|
||||
-[ --enable-dynamic-loading support dynamic fs libraries [default=yes]], ,
|
||||
- if test "$enable_discover_only" = yes; then
|
||||
- enable_dynamic_loading=no
|
||||
- else
|
||||
- enable_dynamic_loading=yes
|
||||
- fi
|
||||
-)
|
||||
-if test "$enable_discover_only" = yes \
|
||||
- && test "$enable_dynamic_loading" = yes; then
|
||||
- AC_MSG_ERROR(
|
||||
-[You can't use --enable-dynamic-loading and --disable-discover-only together]
|
||||
- )
|
||||
-fi
|
||||
|
||||
AC_ARG_ENABLE([debug],
|
||||
[ --enable-debug compile in assertions [default=yes]], ,
|
||||
@@ -303,23 +289,6 @@ Or install gettext. GNU gettext is available from
|
||||
])
|
||||
fi
|
||||
|
||||
-dnl Check for libdl, if we are doing dynamic loading
|
||||
-DL_LIBS=""
|
||||
-AC_SUBST([DYNAMIC_LOADING])
|
||||
-DYNAMIC_LOADING=no
|
||||
-if test "$enable_dynamic_loading" = yes; then
|
||||
- AC_CHECK_LIB([dl], [dlopen],
|
||||
- DL_LIBS="-ldl"
|
||||
- PARTED_LIBS="$PARTED_LIBS -ldl"
|
||||
- DYNAMIC_LOADING=yes
|
||||
- AC_DEFINE([DYNAMIC_LOADING], [1], [Lazy linking to fs libs]),
|
||||
- AC_MSG_ERROR(
|
||||
- [-ldl not found! Try using --disable-dynamic-loading]
|
||||
- )
|
||||
- )
|
||||
-fi
|
||||
-AC_SUBST([DL_LIBS])
|
||||
-
|
||||
dnl Check for libuuid
|
||||
UUID_LIBS=""
|
||||
AC_CHECK_LIB([uuid], [uuid_generate], [UUID_LIBS="-luuid"],
|
||||
@@ -357,24 +326,6 @@ if test "$enable_selinux" = yes; then
|
||||
fi
|
||||
AC_SUBST([SELINUX_LIBS])
|
||||
|
||||
-dnl Check for libreiserfs
|
||||
-REISER_LIBS=""
|
||||
-if test "$enable_dynamic_loading" = no && test "$enable_discover_only" = no; then
|
||||
- OLD_LIBS="$LIBS"
|
||||
- AC_CHECK_LIB([dal], [dal_equals],
|
||||
- LIBS="-ldal"
|
||||
- AC_CHECK_LIB([reiserfs], [reiserfs_fs_probe],
|
||||
- REISER_LIBS="-ldal -lreiserfs"
|
||||
- AC_DEFINE([HAVE_LIBREISERFS], [1], [Have libreiserfs])
|
||||
- )
|
||||
- AC_CHECK_LIB([reiserfs], [reiserfs_fs_check],
|
||||
- AC_DEFINE([HAVE_REISERFS_FS_CHECK], [1], [Have reiserfs_fs_check()])
|
||||
- )
|
||||
- )
|
||||
- LIBS="$OLD_LIBS"
|
||||
-fi
|
||||
-AC_SUBST([REISER_LIBS])
|
||||
-
|
||||
dnl Check for termcap
|
||||
if test "$with_readline" = yes; then
|
||||
OLD_LIBS="$LIBS"
|
||||
diff --git a/doc/parted.texi b/doc/parted.texi
|
||||
index ac23ef6..c08cdc7 100644
|
||||
--- a/doc/parted.texi
|
||||
+++ b/doc/parted.texi
|
||||
@@ -178,13 +178,6 @@ internationalisation support is desired.
|
||||
|
||||
@uref{ftp://ftp.gnu.org/gnu/gettext}
|
||||
|
||||
-@item libreiserfs, if you want reiserfs support:
|
||||
-
|
||||
- @uref{http://reiserfs.osdn.org.ua}
|
||||
-
|
||||
-Note that parted will automatically detect libreiserfs at runtime, and enable
|
||||
-reiserfs support. libreiserfs is new, and hasn't been widely tested yet.
|
||||
-
|
||||
@end itemize
|
||||
|
||||
@node Supported Platforms
|
||||
@@ -242,14 +235,6 @@ etc., where few libraries are available.
|
||||
@item --disable-debug
|
||||
don't include assertions
|
||||
|
||||
-@item --disable-dynamic-loading
|
||||
-disables dynamic loading of some libraries (only libreiserfs for now,
|
||||
-although we hope to expand this). Dynamic loading is useful because it
|
||||
-allows you to reuse libparted shared libraries even when you don't know
|
||||
-if some libraries will be available. It has a small overhead (mainly
|
||||
-linking with libdl), so it may be useful to disable it on bootdisks if
|
||||
-you don't need the flexibility.
|
||||
-
|
||||
@item --disable-nls
|
||||
turns off native language support. This is useful for use with old
|
||||
versions of glibc, or a trimmed down version of glibc suitable for
|
||||
diff --git a/libparted/Makefile.am b/libparted/Makefile.am
|
||||
index cb58648..e4a8049 100644
|
||||
--- a/libparted/Makefile.am
|
||||
+++ b/libparted/Makefile.am
|
||||
@@ -54,7 +54,6 @@ libparted_la_LIBADD = \
|
||||
labels/liblabels.la \
|
||||
$(top_builddir)/lib/libgnulib.la \
|
||||
$(OS_LIBS) \
|
||||
- $(DL_LIBS) \
|
||||
$(DM_LIBS) \
|
||||
$(SELINUX_LIBS) \
|
||||
$(LIB_BLKID) \
|
||||
diff --git a/libparted/fs/reiserfs/reiserfs.c b/libparted/fs/reiserfs/reiserfs.c
|
||||
index 2efcdf3..ef809cd 100644
|
||||
--- a/libparted/fs/reiserfs/reiserfs.c
|
||||
+++ b/libparted/fs/reiserfs/reiserfs.c
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
- reiserfs.c -- libparted / libreiserfs glue
|
||||
+ reiserfs.c -- ReiserFS detection
|
||||
Copyright (C) 2001-2002, 2007, 2009-2014 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
@@ -14,17 +14,6 @@
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
-
|
||||
- This is all rather complicated. There are a few combinations:
|
||||
- * shared libraries full support
|
||||
- * dynamic libraries present full support (via dlopen)
|
||||
- * dynamic libraries absent (full support disabled) (via dlopen)
|
||||
- * discover only
|
||||
-
|
||||
- We'd love to hear comments...
|
||||
-
|
||||
- So far, we've opted for maximum flexibility for the user. Is it
|
||||
- all worth it?
|
||||
*/
|
||||
|
||||
#include <config.h>
|
||||
@@ -49,9 +38,6 @@
|
||||
static PedSector reiserfs_super_offset[] = { 128, 16, -1 };
|
||||
static PedFileSystemType* reiserfs_type;
|
||||
|
||||
-#define FPTR
|
||||
-#define FCLASS extern
|
||||
-
|
||||
static PedGeometry *reiserfs_probe(PedGeometry *geom)
|
||||
{
|
||||
int i;
|
||||
diff --git a/libparted/tests/Makefile.am b/libparted/tests/Makefile.am
|
||||
index 9689fb3..7954e91 100644
|
||||
--- a/libparted/tests/Makefile.am
|
||||
+++ b/libparted/tests/Makefile.am
|
||||
@@ -35,5 +35,4 @@ $(TEST_LOGS): prereq
|
||||
TESTS_ENVIRONMENT = \
|
||||
top_srcdir='$(top_srcdir)' \
|
||||
abs_top_srcdir='$(abs_top_srcdir)' \
|
||||
- DYNAMIC_LOADING=$(DYNAMIC_LOADING) \
|
||||
ENABLE_DEVICE_MAPPER=$(ENABLE_DEVICE_MAPPER)
|
||||
diff --git a/libparted/tests/t2100-zerolen.sh b/libparted/tests/t2100-zerolen.sh
|
||||
index ecd579c..e0e521e 100755
|
||||
--- a/libparted/tests/t2100-zerolen.sh
|
||||
+++ b/libparted/tests/t2100-zerolen.sh
|
||||
@@ -28,9 +28,6 @@ init_root_dir_
|
||||
test "$(uname -s)" = Linux \
|
||||
|| skip_ "not on Linux"
|
||||
|
||||
-test "x$DYNAMIC_LOADING" = xyes \
|
||||
- || skip_ "no dynamic loading support"
|
||||
-
|
||||
test "x$ENABLE_DEVICE_MAPPER" = xyes \
|
||||
|| skip_ "no device-mapper support"
|
||||
|
||||
diff --git a/parted.spec.in b/parted.spec.in
|
||||
index cd5a99a..bdbe218 100644
|
||||
--- a/parted.spec.in
|
||||
+++ b/parted.spec.in
|
||||
@@ -60,8 +60,7 @@ Parted library, you need to install this package.
|
||||
%endif
|
||||
--enable-part-static \
|
||||
--enable-pc98=no \
|
||||
- --enable-Werror=no \
|
||||
- --disable-dynamic-loading
|
||||
+ --enable-Werror=no
|
||||
%{__make} %{?_smp_mflags}
|
||||
|
||||
%install
|
||||
--
|
||||
2.17.1
|
||||
|
52
0089-Lift-512-byte-restriction-on-fat-resize.patch
Normal file
52
0089-Lift-512-byte-restriction-on-fat-resize.patch
Normal file
@ -0,0 +1,52 @@
|
||||
From 4347ddb8e2dd01674c759e94eaaf5872915a2e48 Mon Sep 17 00:00:00 2001
|
||||
From: Phillip Susi <psusi@ubuntu.com>
|
||||
Date: Fri, 4 May 2018 10:57:56 -0400
|
||||
Subject: [PATCH 89/92] Lift 512 byte restriction on fat resize
|
||||
|
||||
As Colin Watson pointed out way back in 2014, when I removed the
|
||||
512 byte sector size restriction from the fs recognition code,
|
||||
I missed the same from the fat resize code.
|
||||
---
|
||||
NEWS | 2 ++
|
||||
libparted/fs/r/fat/bootsector.c | 12 ------------
|
||||
2 files changed, 2 insertions(+), 12 deletions(-)
|
||||
|
||||
diff --git a/NEWS b/NEWS
|
||||
index 83352a6..552e319 100644
|
||||
--- a/NEWS
|
||||
+++ b/NEWS
|
||||
@@ -45,6 +45,8 @@ GNU parted NEWS -*- outline -*-
|
||||
|
||||
** New Features
|
||||
|
||||
+ libparted-fs-resize: Work on non 512 byte sectors.
|
||||
+
|
||||
Add resizepart command to resize a partition. This works even on
|
||||
mounted partitions.
|
||||
|
||||
diff --git a/libparted/fs/r/fat/bootsector.c b/libparted/fs/r/fat/bootsector.c
|
||||
index 99d788d..3e34e13 100644
|
||||
--- a/libparted/fs/r/fat/bootsector.c
|
||||
+++ b/libparted/fs/r/fat/bootsector.c
|
||||
@@ -125,18 +125,6 @@ fat_boot_sector_analyse (FatBootSector* bs, PedFileSystem* fs)
|
||||
|
||||
PED_ASSERT (bs != NULL);
|
||||
|
||||
- if (PED_LE16_TO_CPU (bs->sector_size) != 512) {
|
||||
- if (ped_exception_throw (
|
||||
- PED_EXCEPTION_BUG,
|
||||
- PED_EXCEPTION_IGNORE_CANCEL,
|
||||
- _("This file system has a logical sector size of %d. "
|
||||
- "GNU Parted is known not to work properly with sector "
|
||||
- "sizes other than 512 bytes."),
|
||||
- (int) PED_LE16_TO_CPU (bs->sector_size))
|
||||
- != PED_EXCEPTION_IGNORE)
|
||||
- return 0;
|
||||
- }
|
||||
-
|
||||
fs_info->logical_sector_size = PED_LE16_TO_CPU (bs->sector_size) / 512;
|
||||
|
||||
fs_info->sectors_per_track = PED_LE16_TO_CPU (bs->secs_track);
|
||||
--
|
||||
2.17.1
|
||||
|
41
0090-Fix-atari-label-false-positives.patch
Normal file
41
0090-Fix-atari-label-false-positives.patch
Normal file
@ -0,0 +1,41 @@
|
||||
From 395f8aabfecb28820006d37ec37e9ffe1d2eb1e3 Mon Sep 17 00:00:00 2001
|
||||
From: Phillip Susi <psusi@ubuntu.com>
|
||||
Date: Fri, 11 May 2018 11:01:01 -0400
|
||||
Subject: [PATCH 90/92] Fix atari label false positives
|
||||
|
||||
The atari label gets false positives easily, so probe it after
|
||||
all other labels have said no.
|
||||
---
|
||||
libparted/libparted.c | 4 ++--
|
||||
2 files changed, 4 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/libparted/libparted.c b/libparted/libparted.c
|
||||
index d855d0e..3bd071d 100644
|
||||
--- a/libparted/libparted.c
|
||||
+++ b/libparted/libparted.c
|
||||
@@ -80,12 +80,13 @@ extern void ped_disk_atari_init ();
|
||||
static void
|
||||
init_disk_types ()
|
||||
{
|
||||
+ /* Note that probing is done in the reverse order of init */
|
||||
ped_disk_loop_init (); /* must be last in the probe list */
|
||||
|
||||
#if defined __s390__ || defined __s390x__
|
||||
ped_disk_dasd_init();
|
||||
#endif
|
||||
-
|
||||
+ ped_disk_atari_init (); /* easy false positives, so probe others first */
|
||||
ped_disk_sun_init ();
|
||||
#ifdef ENABLE_PC98
|
||||
ped_disk_pc98_init ();
|
||||
@@ -97,7 +98,6 @@ init_disk_types ()
|
||||
ped_disk_bsd_init ();
|
||||
ped_disk_amiga_init ();
|
||||
ped_disk_aix_init ();
|
||||
- ped_disk_atari_init ();
|
||||
}
|
||||
|
||||
extern void ped_file_system_amiga_init (void);
|
||||
--
|
||||
2.17.1
|
||||
|
@ -0,0 +1,87 @@
|
||||
From a0494446d44f00fbd47c1081186678d26c331a51 Mon Sep 17 00:00:00 2001
|
||||
From: "Brian C. Lane" <bcl@redhat.com>
|
||||
Date: Wed, 27 Jun 2018 13:45:09 -0700
|
||||
Subject: [PATCH 91/92] Modify gpt-header-move and msdos-overlap to work with
|
||||
py2 or py3
|
||||
|
||||
Distributions are starting to remove python2 and only use python3.
|
||||
Modify these test scripts so that they will work with either python 2.7
|
||||
or python 3.X
|
||||
---
|
||||
tests/gpt-header-move | 15 ++++++++-------
|
||||
tests/msdos-overlap | 5 ++---
|
||||
2 files changed, 10 insertions(+), 10 deletions(-)
|
||||
|
||||
diff --git a/tests/gpt-header-move b/tests/gpt-header-move
|
||||
index 05cdc65..3dda5cb 100755
|
||||
--- a/tests/gpt-header-move
|
||||
+++ b/tests/gpt-header-move
|
||||
@@ -3,20 +3,21 @@
|
||||
# open img file, subtract 33 from altlba address, and move the last 33 sectors
|
||||
# back by 33 sectors
|
||||
|
||||
-from struct import *
|
||||
+from struct import unpack_from, pack_into
|
||||
from zipfile import crc32
|
||||
import array
|
||||
import sys
|
||||
+
|
||||
file = open(sys.argv[1],'rb+')
|
||||
file.seek(512)
|
||||
gptheader = file.read(512)
|
||||
-altlba = unpack_from('<q', gptheader,offset=32)[0]
|
||||
-gptheader = array.array('c',gptheader)
|
||||
+altlba = unpack_from('<q', gptheader, offset=32)[0]
|
||||
+gptheader = array.array('B', gptheader)
|
||||
pack_into('<Q', gptheader, 32, altlba-33)
|
||||
#zero header crc
|
||||
pack_into('<L', gptheader, 16, 0)
|
||||
#compute new crc
|
||||
-newcrc = ((crc32(buffer(gptheader,0,92))) & 0xFFFFFFFF)
|
||||
+newcrc = ((crc32(gptheader[:92])) & 0xFFFFFFFF)
|
||||
pack_into('<L', gptheader, 16, newcrc)
|
||||
file.seek(512)
|
||||
file.write(gptheader)
|
||||
@@ -25,7 +26,7 @@ gptheader = file.read(512)
|
||||
file.seek(512*(altlba-32))
|
||||
backup = file.read(512*32)
|
||||
altlba -= 33
|
||||
-gptheader = array.array('c',gptheader)
|
||||
+gptheader = array.array('B',gptheader)
|
||||
#update mylba
|
||||
pack_into('<Q', gptheader, 24, altlba)
|
||||
#update table lba
|
||||
@@ -33,9 +34,9 @@ pack_into('<Q', gptheader, 72, altlba-32)
|
||||
#zero header crc
|
||||
pack_into('<L', gptheader, 16, 0)
|
||||
#compute new crc
|
||||
-newcrc = ((crc32(buffer(gptheader,0,92))) & 0xFFFFFFFF)
|
||||
+newcrc = ((crc32(gptheader[:92])) & 0xFFFFFFFF)
|
||||
pack_into('<L', gptheader, 16, newcrc)
|
||||
file.seek(512*(altlba-32))
|
||||
file.write(backup)
|
||||
file.write(gptheader)
|
||||
-file.write("\0" * (512 * 33))
|
||||
+file.write(b"\0" * (512 * 33))
|
||||
diff --git a/tests/msdos-overlap b/tests/msdos-overlap
|
||||
index 5bddfb0..48cfa7f 100755
|
||||
--- a/tests/msdos-overlap
|
||||
+++ b/tests/msdos-overlap
|
||||
@@ -14,12 +14,11 @@ BAD_ENTRY = (0x72, 0xf5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
OFFSET = 0x1b8
|
||||
|
||||
if len(sys.argv) < 2:
|
||||
- print "%s: <image or device>"
|
||||
+ print("%s: <image or device>" % sys.argv[0])
|
||||
sys.exit(1)
|
||||
|
||||
-data = "".join(chr(c) for c in BAD_ENTRY)
|
||||
with open(sys.argv[1], "rb+") as f:
|
||||
f.seek(OFFSET, 0)
|
||||
- f.write(data)
|
||||
+ f.write(bytes(BAD_ENTRY))
|
||||
|
||||
sys.exit(0)
|
||||
--
|
||||
2.17.1
|
||||
|
@ -0,0 +1,33 @@
|
||||
From f37716966aaa5bde3b2636249944e9cdfdf2f82a Mon Sep 17 00:00:00 2001
|
||||
From: "Brian C. Lane" <bcl@redhat.com>
|
||||
Date: Wed, 27 Jun 2018 13:47:33 -0700
|
||||
Subject: [PATCH 92/92] Switch gpt-header-move and msdos-overlap to python3
|
||||
|
||||
---
|
||||
tests/gpt-header-move | 2 +-
|
||||
tests/msdos-overlap | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/tests/gpt-header-move b/tests/gpt-header-move
|
||||
index 3dda5cb..18f58d0 100755
|
||||
--- a/tests/gpt-header-move
|
||||
+++ b/tests/gpt-header-move
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!/usr/bin/python
|
||||
+#!/usr/bin/python3
|
||||
|
||||
# open img file, subtract 33 from altlba address, and move the last 33 sectors
|
||||
# back by 33 sectors
|
||||
diff --git a/tests/msdos-overlap b/tests/msdos-overlap
|
||||
index 48cfa7f..4f48005 100755
|
||||
--- a/tests/msdos-overlap
|
||||
+++ b/tests/msdos-overlap
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!/usr/bin/python
|
||||
+#!/usr/bin/python3
|
||||
"""
|
||||
Write an overlapping partition to a msdos disk
|
||||
|
||||
--
|
||||
2.17.1
|
||||
|
39
parted.spec
39
parted.spec
@ -4,7 +4,7 @@
|
||||
Summary: The GNU disk partition manipulation program
|
||||
Name: parted
|
||||
Version: 3.2
|
||||
Release: 33%{?dist}
|
||||
Release: 34%{?dist}
|
||||
License: GPLv3+
|
||||
Group: Applications/System
|
||||
URL: http://www.gnu.org/software/parted
|
||||
@ -95,10 +95,21 @@ Patch0078: 0078-libparted-Fix-udev-cookie-leak-in-_dm_resize_partiti.patch
|
||||
Patch0079: 0079-atari.c-Drop-xlocale.h-1476934.patch
|
||||
Patch0080: 0080-libparted-labels-link-with-libiconv-if-needed.patch
|
||||
Patch0081: 0081-Add-support-for-NVDIMM-devices.patch
|
||||
Patch0082: 0082-linux-Include-sys-sysmacros.h-for-major-macro.patch
|
||||
Patch0083: 0083-Fix-make-check.patch
|
||||
Patch0084: 0084-tests-fix-t6100-mdraid-partitions.patch
|
||||
Patch0085: 0085-Fix-set-and-disk_set-to-not-crash-when-no-flags-are-.patch
|
||||
Patch0086: 0086-mkpart-Allow-negative-start-value-when-FS-TYPE-is-no.patch
|
||||
Patch0087: 0087-Fix-resizepart-iec-unit-end-sector.patch
|
||||
Patch0088: 0088-build-Remove-unused-traces-of-dynamic-loading.patch
|
||||
Patch0089: 0089-Lift-512-byte-restriction-on-fat-resize.patch
|
||||
Patch0090: 0090-Fix-atari-label-false-positives.patch
|
||||
|
||||
# Use python3 in the buildroot
|
||||
# Sent upstream 2018-06-27
|
||||
Patch0091: 0091-Modify-gpt-header-move-and-msdos-overlap-to-work-wit.patch
|
||||
Patch0092: 0092-Switch-gpt-header-move-and-msdos-overlap-to-python3.patch
|
||||
|
||||
# Fix for missing major/minor() macros in glibc 2.27.
|
||||
# Sent upstream 2018-03-24.
|
||||
Patch0099: 0001-linux-Include-sys-sysmacros.h-for-major-macro.patch
|
||||
|
||||
|
||||
Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||
@ -120,8 +131,9 @@ BuildRequires: xfsprogs
|
||||
BuildRequires: dosfstools
|
||||
BuildRequires: perl-Digest-CRC
|
||||
BuildRequires: bc
|
||||
Buildrequires: python2
|
||||
Buildrequires: python3
|
||||
BuildRequires: gperf
|
||||
BuildRequires: make
|
||||
|
||||
Requires(post): /sbin/ldconfig
|
||||
Requires(post): /sbin/install-info
|
||||
@ -235,6 +247,21 @@ fi
|
||||
|
||||
|
||||
%changelog
|
||||
* Wed Jun 27 2018 Brian C. Lane <bcl@redhat.com> - 3.2-34
|
||||
- Use python3 in buildroot
|
||||
- Add make to BuildRequires
|
||||
- Switch gpt-header-move and msdos-overlap to python3 (bcl)
|
||||
- Modify gpt-header-move and msdos-overlap to work with py2 or py3 (bcl)
|
||||
- Fix atari label false positives (psusi)
|
||||
- Lift 512 byte restriction on fat resize (psusi)
|
||||
- build: Remove unused traces of dynamic loading (cjwatson)
|
||||
- Fix resizepart iec unit end sector (psusi)
|
||||
- mkpart: Allow negative start value when FS-TYPE is not given (mail)
|
||||
- Fix set and disk_set to not crash when no flags are supported (psusi)
|
||||
- tests: fix t6100-mdraid-partitions (psusi)
|
||||
- Fix make check (psusi)
|
||||
- linux: Include <sys/sysmacros.h> for major() macro. (rjones)
|
||||
|
||||
* Thu Jun 07 2018 Brian C. Lane <bcl@redhat.com> - 3.2-33
|
||||
- Use gpg2 for signature checking
|
||||
|
||||
@ -243,7 +270,7 @@ fi
|
||||
|
||||
* Mon Feb 19 2018 Brian C. Lane <bcl@redhat.com> - 3.2-31
|
||||
- Add gcc BuildRequires for future minimal buildroot support
|
||||
- Remove %clean section
|
||||
- Remove %%clean section
|
||||
|
||||
* Thu Feb 08 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.2-30
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
||||
|
Loading…
Reference in New Issue
Block a user