-diff -ur LVM2.2.03.21.orig/libdm/dm-tools/dmsetup.c LVM2.2.03.21/libdm/dm-tools/dmsetup.c
---- LVM2.2.03.21.orig/libdm/dm-tools/dmsetup.c 2023-07-10 11:25:56.509112198 +0200
-+++ LVM2.2.03.21/libdm/dm-tools/dmsetup.c 2023-07-10 11:27:18.722275271 +0200
-@@ -2563,6 +2563,116 @@
+diff -urNpa LVM2.2.03.23.orig/libdm/dm-tools/dmsetup.c LVM2.2.03.23/libdm/dm-tools/dmsetup.c
+--- LVM2.2.03.23.orig/libdm/dm-tools/dmsetup.c 2023-12-03 19:56:43.002779419 +0100
++++ LVM2.2.03.23/libdm/dm-tools/dmsetup.c 2023-12-03 19:56:52.195888521 +0100
+@@ -2565,6 +2565,116 @@ out:
return r;
}
/* Show target names and their version numbers */
static int _targets(CMD_ARGS)
{
-@@ -6272,6 +6382,7 @@
+@@ -6286,6 +6396,7 @@ static struct command _dmsetup_commands[
{"stats", "<command> [<options>] [<device>...]", 1, -1, 1, 1, _stats},
{"status", "[<device>...] [--noflush] [--target <target_type>]", 0, -1, 2, 0, _status},
{"table", "[<device>...] [--concise] [--target <target_type>] [--showkeys]", 0, -1, 2, 0, _status},
{"wait", "<device> [<event_nr>] [--noflush]", 0, 2, 0, 0, _wait},
{"mknodes", "[<device>...]", 0, -1, 1, 0, _mknodes},
{"mangle", "[<device>...]", 0, -1, 1, 0, _mangle},
-diff -ur LVM2.2.03.21.orig/man/dmsetup.8_main LVM2.2.03.21/man/dmsetup.8_main
---- LVM2.2.03.21.orig/man/dmsetup.8_main 2023-07-10 11:25:56.511112226 +0200
-+++ LVM2.2.03.21/man/dmsetup.8_main 2023-07-10 11:27:08.907136415 +0200
-@@ -61,6 +61,14 @@
+diff -urNpa LVM2.2.03.23.orig/man/dmsetup.8_main LVM2.2.03.23/man/dmsetup.8_main
+--- LVM2.2.03.23.orig/man/dmsetup.8_main 2023-12-03 19:56:43.003779431 +0100
++++ LVM2.2.03.23/man/dmsetup.8_main 2023-12-03 19:56:52.195888521 +0100
+@@ -61,6 +61,14 @@ dmsetup \(em low level logical volume ma
.
.HP
.B dmsetup
.de CMD_HELP
. BR help
. RB [ -c | -C | --columns ]
-@@ -635,6 +643,9 @@
+@@ -642,6 +650,9 @@ device. Device names on output can be cu
\fBdevname\fP (map name for device-mapper devices, equal to blkdevname otherwise).
.
.HP
+++ /dev/null
-diff -urp LVM2.2.03.00.orig/lib/commands/toolcontext.c LVM2.2.03.00/lib/commands/toolcontext.c
---- LVM2.2.03.00.orig/lib/commands/toolcontext.c 2018-10-21 14:34:49.832416609 +0000
-+++ LVM2.2.03.00/lib/commands/toolcontext.c 2018-10-21 14:34:56.826416609 +0000
-@@ -1298,6 +1298,7 @@ int lvm_register_segtype(struct segtype_
- return 1;
- }
-
-+#ifdef HAVE_LIBDL
- static int _init_single_segtype(struct cmd_context *cmd,
- struct segtype_library *seglib)
- {
-@@ -1315,6 +1316,7 @@ static int _init_single_segtype(struct c
-
- return lvm_register_segtype(seglib, segtype);
- }
-+#endif
-
- static int _init_segtypes(struct cmd_context *cmd)
- {
-diff -ur LVM2.2.03.02.orig/tools/Makefile.in LVM2.2.03.02/tools/Makefile.in
---- LVM2.2.03.02.orig/tools/Makefile.in 2018-12-18 15:22:34.000000000 +0100
-+++ LVM2.2.03.02/tools/Makefile.in 2019-03-22 21:16:03.771000000 +0100
-@@ -158,7 +158,7 @@
+diff -urNpa LVM2.2.03.23.orig/tools/Makefile.in LVM2.2.03.23/tools/Makefile.in
+--- LVM2.2.03.23.orig/tools/Makefile.in 2023-12-03 20:03:07.124337884 +0100
++++ LVM2.2.03.23/tools/Makefile.in 2023-12-03 20:03:17.851465189 +0100
+@@ -160,7 +160,7 @@ liblvm2cmd.$(LIB_SUFFIX): liblvm2cmd.a $
$(Q) $(CC) -shared -Wl,-soname,$@.$(LIB_VERSION) \
$(CFLAGS) $(CLDFLAGS) -o $@ \
@CLDWHOLEARCHIVE@ $< @CLDNOWHOLEARCHIVE@ \
-diff -ur LVM2.2.03.21.orig/configure.ac LVM2.2.03.21/configure.ac
---- LVM2.2.03.21.orig/configure.ac 2023-07-10 11:28:44.248485213 +0200
-+++ LVM2.2.03.21/configure.ac 2023-07-10 11:29:32.276164664 +0200
-@@ -706,8 +706,7 @@
+diff -urNpa LVM2.2.03.23.orig/configure.ac LVM2.2.03.23/configure.ac
+--- LVM2.2.03.23.orig/configure.ac 2023-12-03 19:58:08.846798150 +0100
++++ LVM2.2.03.23/configure.ac 2023-12-03 19:58:22.952965549 +0100
+@@ -724,8 +724,7 @@ AC_ARG_WITH(ocfdir,
################################################################################
AC_MSG_CHECKING([for default run directory])
-diff -urNp -x '*.orig' LVM2.2.03.21.org/tools/Makefile.in LVM2.2.03.21/tools/Makefile.in
---- LVM2.2.03.21.org/tools/Makefile.in 2023-04-21 10:42:24.000000000 +0200
-+++ LVM2.2.03.21/tools/Makefile.in 2023-07-10 00:29:26.522385169 +0200
+diff -urNpa LVM2.2.03.23.orig/tools/Makefile.in LVM2.2.03.23/tools/Makefile.in
+--- LVM2.2.03.23.orig/tools/Makefile.in 2023-11-21 14:37:11.000000000 +0100
++++ LVM2.2.03.23/tools/Makefile.in 2023-12-03 19:55:57.011233622 +0100
@@ -93,6 +93,9 @@ endif
LIB_VERSION = $(LIB_VERSION_LVM)
---- LVM2.2.03.19/configure.ac.orig 2023-02-21 15:37:53.000000000 +0100
-+++ LVM2.2.03.19/configure.ac 2023-02-22 10:52:41.267893915 +0100
-@@ -393,7 +393,7 @@
+diff -urNpa LVM2.2.03.23.orig/configure.ac LVM2.2.03.23/configure.ac
+--- LVM2.2.03.23.orig/configure.ac 2023-12-03 19:58:43.179205581 +0100
++++ LVM2.2.03.23/configure.ac 2023-12-03 19:59:54.935057131 +0100
+@@ -409,7 +409,7 @@ dnl -- thin_check needs-check flag
AC_ARG_ENABLE(thin_check_needs_check,
AS_HELP_STRING([--disable-thin_check_needs_check],
[required if thin_check version is < 0.3.0]),
# Test if necessary thin tools are available
# if not - use plain defaults and warn user
-@@ -421,7 +421,7 @@
+@@ -424,7 +424,7 @@ AS_CASE(["$THIN"],
+ THIN_CONFIGURE_WARN="y"
+ ])
+ ])
+- AS_IF([test "$THIN_CHECK_NEEDS_CHECK" = "yes" && test "$THIN_CONFIGURE_WARN" != "y"], [
++ AS_IF([test "$THIN_CHECK_NEEDS_CHECK" = "autodetect" && test "$THIN_CONFIGURE_WARN" != "y"], [
+ THIN_CHECK_VSN=$("$THIN_CHECK_CMD" -V 2>/dev/null)
+ THIN_CHECK_VSN=${THIN_CHECK_VSN##* } # trim away all before the first space
+ THIN_CHECK_VSN_MAJOR=$(echo "$THIN_CHECK_VSN" | $AWK -F '.' '{print $1}')
+@@ -438,7 +438,7 @@ AS_CASE(["$THIN"],
AC_MSG_WARN([$THIN_CHECK_CMD: Old version "$THIN_CHECK_VSN" found])
THIN_CHECK_VERSION_WARN="y"
THIN_CHECK_NEEDS_CHECK="no"
])
# Empty means a config way to ignore thin dumping
AS_IF([test "$THIN_DUMP_CMD" = "autodetect"], [
-@@ -505,7 +505,7 @@
+@@ -522,7 +522,7 @@ dnl -- cache_check needs-check flag
AC_ARG_ENABLE(cache_check_needs_check,
AS_HELP_STRING([--disable-cache_check_needs_check],
[required if cache_check version is < 0.5]),
# Test if necessary cache tools are available
# if not - use plain defaults and warn user
-@@ -520,7 +520,7 @@
- CACHE_CONFIGURE_WARN="y"
- ])
- ])
-- AS_IF([test "$CACHE_CHECK_NEEDS_CHECK" = "yes" && test "$CACHE_CONFIGURE_WARN" != "y"], [
-+ AS_IF([test "$CACHE_CHECK_NEEDS_CHECK" = "autodetect" && test "$CACHE_CONFIGURE_WARN" != "y"], [
- $CACHE_CHECK_CMD -V 2>/dev/null >conftest.tmp
- read -r CACHE_CHECK_VSN < conftest.tmp
- IFS=.- read -r CACHE_CHECK_VSN_MAJOR CACHE_CHECK_VSN_MINOR CACHE_CHECK_VSN_PATCH LEFTOVER < conftest.tmp
-@@ -544,7 +544,7 @@
+@@ -562,7 +562,7 @@ AS_CASE(["$CACHE"],
AC_MSG_WARN([$CACHE_CHECK_CMD: Old version "$CACHE_CHECK_VSN" does not support new cache format V2])
CACHE_CHECK_VERSION_WARN=y
])
-diff -ur LVM2.2.03.02.orig/scripts/blk_availability_init_red_hat.in LVM2.2.03.02/scripts/blk_availability_init_red_hat.in
---- LVM2.2.03.02.orig/scripts/blk_availability_init_red_hat.in 2019-03-22 17:01:45.758000000 +0100
-+++ LVM2.2.03.02/scripts/blk_availability_init_red_hat.in 2019-03-22 17:01:58.006000000 +0100
+diff -urNpa LVM2.2.03.23.orig/scripts/blk_availability_init_red_hat.in LVM2.2.03.23/scripts/blk_availability_init_red_hat.in
+--- LVM2.2.03.23.orig/scripts/blk_availability_init_red_hat.in 2023-12-03 19:57:35.810406101 +0100
++++ LVM2.2.03.23/scripts/blk_availability_init_red_hat.in 2023-12-03 19:57:44.066504078 +0100
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/bin/sh
+ exit 3
;;
esac
-diff -ur LVM2.2.03.02.orig/scripts/cmirrord_init_red_hat.in LVM2.2.03.02/scripts/cmirrord_init_red_hat.in
---- LVM2.2.03.02.orig/scripts/cmirrord_init_red_hat.in 2019-03-22 17:01:45.758000000 +0100
-+++ LVM2.2.03.02/scripts/cmirrord_init_red_hat.in 2019-03-22 17:01:58.006000000 +0100
+diff -urNpa LVM2.2.03.23.orig/scripts/cmirrord_init_red_hat.in LVM2.2.03.23/scripts/cmirrord_init_red_hat.in
+--- LVM2.2.03.23.orig/scripts/cmirrord_init_red_hat.in 2023-12-03 19:57:35.811406112 +0100
++++ LVM2.2.03.23/scripts/cmirrord_init_red_hat.in 2023-12-03 19:57:44.066504078 +0100
@@ -2,7 +2,7 @@
#
# chkconfig: - 22 78
-exit $rtrn
+exit $RETVAL
-diff -ur LVM2.2.03.02.orig/scripts/lvm2_lvmpolld_init_red_hat.in LVM2.2.03.02/scripts/lvm2_lvmpolld_init_red_hat.in
---- LVM2.2.03.02.orig/scripts/lvm2_lvmpolld_init_red_hat.in 2019-03-22 17:01:45.758000000 +0100
-+++ LVM2.2.03.02/scripts/lvm2_lvmpolld_init_red_hat.in 2019-03-22 17:01:58.006000000 +0100
+diff -urNpa LVM2.2.03.23.orig/scripts/lvm2_lvmpolld_init_red_hat.in LVM2.2.03.23/scripts/lvm2_lvmpolld_init_red_hat.in
+--- LVM2.2.03.23.orig/scripts/lvm2_lvmpolld_init_red_hat.in 2023-12-03 19:57:35.811406112 +0100
++++ LVM2.2.03.23/scripts/lvm2_lvmpolld_init_red_hat.in 2023-12-03 19:57:44.067504090 +0100
@@ -1,6 +1,6 @@
-#!/bin/bash
+#!/bin/sh
-exit $rtrn
+exit $RETVAL
-diff -ur LVM2.2.03.02.orig/scripts/lvm2_monitoring_init_red_hat.in LVM2.2.03.02/scripts/lvm2_monitoring_init_red_hat.in
---- LVM2.2.03.02.orig/scripts/lvm2_monitoring_init_red_hat.in 2019-03-22 17:01:45.758000000 +0100
-+++ LVM2.2.03.02/scripts/lvm2_monitoring_init_red_hat.in 2019-03-22 17:01:58.006000000 +0100
+diff -urNpa LVM2.2.03.23.orig/scripts/lvm2_monitoring_init_red_hat.in LVM2.2.03.23/scripts/lvm2_monitoring_init_red_hat.in
+--- LVM2.2.03.23.orig/scripts/lvm2_monitoring_init_red_hat.in 2023-12-03 19:57:35.811406112 +0100
++++ LVM2.2.03.23/scripts/lvm2_monitoring_init_red_hat.in 2023-12-03 19:57:44.067504090 +0100
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/bin/sh
%bcond_without python2 # Python 2 binding
%bcond_without python3 # Python 3 binding and lvmdbusd
-# for convenience
-%if %{without python}
-%undefine with_python2
-%undefine with_python3
+# lvmlockd requires lvmpolld
+%if %{without lvmpolld}
+%undefine with_lvmpolld
%endif
-%if %{without python3}
-%undefine with_lvmdbusd
+
+%if %{without cluster} && %{without sanlock}
+%undefine with_lvmlockd
%endif
Summary: The new version of Logical Volume Manager for Linux
Summary(pl.UTF-8): Nowa wersja Logical Volume Managera dla Linuksa
Name: lvm2
-Version: 2.03.21
+Version: 2.03.23
Release: 1
License: GPL v2 and LGPL v2.1
Group: Applications/System
Source0: ftp://sourceware.org/pub/lvm2/LVM2.%{version}.tgz
-# Source0-md5: 1730b322321bed204487ba241105e005
+# Source0-md5: 0535b5e638b6f0b48f7b259e0ec0ba65
Patch0: %{name}-selinux.patch
Patch1: device-mapper-dmsetup-export.patch
Patch2: %{name}-tld_init.patch
%{?with_selinux:BuildRequires: libsepol-devel}
BuildRequires: ncurses-devel
BuildRequires: pkgconfig
-%{?with_python2:BuildRequires: python-devel >= 2}
-%{?with_python3:BuildRequires: python3-devel >= 1:3.2}
%if %{with lvmdbusd}
BuildRequires: python3-dbus
+BuildRequires: python3-devel >= 1:3.2
BuildRequires: python3-pyudev
%endif
BuildRequires: readline-devel
%{?with_selinux:Requires: libselinux >= 1.10}
# doesn't work with 2.4 kernels
Requires: uname(release) >= 2.6
-Suggests: thin-provisioning-tools >= 0.5.4
-Obsoletes: lvm
-Obsoletes: lvm2-clvmd
-Obsoletes: lvm2-systemd
+Suggests: thin-provisioning-tools >= 0.7.0
+Obsoletes: lvm < 2
+Obsoletes: lvm2-clvmd < 2.03
+Obsoletes: lvm2-systemd < 2.02.94
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define _sbindir /sbin
%description resource-agents -l pl.UTF-8
Agenci OCF do monitorowania procesów LVM2.
-%package -n python-lvm
-Summary: Python 2 interface to LVM2
-Summary(pl.UTF-8): Interfejs Pythona 2 do LVM2
-Group: Libraries/Python
-Requires: device-mapper-libs = %{version}-%{release}
-
-%description -n python-lvm
-Python 2 interface to LVM2.
-
-%description -n python-lvm -l pl.UTF-8
-Interfejs Pythona 2 do LVM2.
-
-%package -n python3-lvm
-Summary: Python 3 interface to LVM2
-Summary(pl.UTF-8): Interfejs Pythona 3 do LVM2
-Group: Libraries/Python
-Requires: device-mapper-libs = %{version}-%{release}
-
-%description -n python3-lvm
-Python 3 interface to LVM2.
-
-%description -n python3-lvm -l pl.UTF-8
-Interfejs Pythona 3 do LVM2.
-
%package -n device-mapper
Summary: Userspace support for the device-mapper
Summary(pl.UTF-8): Wsparcie dla mapowania urządzeń w przestrzeni użytkownika
Group: Libraries
Requires: libblkid >= 2.24
Requires: udev-libs >= 1:176
+Obsoletes: python-lvm < 2.03
+Obsoletes: python3-lvm < 2.03
Conflicts: device-mapper < 2.02.119-1
%description -n device-mapper-libs
%{__autoconf}
%configure \
- --enable-applib \
--enable-cache_check_needs_check \
--enable-cmdlib \
%if %{with cluster}
%endif
--enable-lvmpolld \
--enable-ocf \
- %{?with_python2:--enable-python2_bindings} \
- %{?with_python3:--enable-python3_bindings} \
--enable-pkgconfig \
--enable-readline \
%{!?with_selinux:--disable-selinux} \
--with-thin-repair=/usr/sbin/thin_repair \
--with-thin-restore=/usr/sbin/thin_restore \
--with-udev-prefix=/ \
- --with-usrlibdir=%{_libdir}
+ --with-usrlibdir=%{_libdir} \
+ --with-vdo=internal --with-vdo-format=%{_bindir}/vdoformat \
+ --with-writecache=internal
# use bash because of "set -o pipefail"
# V=1 still used because of missing --disable-silent-rules support in libdm (as of 2.03.09)
%{__make} -j1 \
%{__make} install install_system_dirs install_initscripts \
DESTDIR=$RPM_BUILD_ROOT \
+ PYTHON_PREFIX=%{_prefix} \
OWNER="" \
- GROUP="" \
- python3dir=%{py3_sitescriptdir}
+ GROUP=""
%{__make} -C scripts \
DESTDIR=$RPM_BUILD_ROOT
%dir %{_prefix}/lib/ocf/resource.d/lvm2
%attr(755,root,root) %{_prefix}/lib/ocf/resource.d/lvm2/VolumeGroup
-%if %{with python2}
-%files -n python-lvm
-%defattr(644,root,root,755)
-#%attr(755,root,root) %{py_sitedir}/lvm.so
-#%{py_sitedir}/lvm-%{version}_*-py*.egg-info
-%endif
-
-%if %{with python3}
-%files -n python3-lvm
-%defattr(644,root,root,755)
-#%attr(755,root,root) %{py3_sitedir}/lvm.cpython-*.so
-#%{py3_sitedir}/lvm-%{version}_*-py*.egg-info
-%endif
-
%files -n device-mapper
%defattr(644,root,root,755)
%doc *_DM