All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [git commit] package/lvm2: bump version to 2.03.12
@ 2021-05-11  7:48 Peter Korsgaard
  0 siblings, 0 replies; only message in thread
From: Peter Korsgaard @ 2021-05-11  7:48 UTC (permalink / raw)
  To: buildroot

commit: https://git.buildroot.net/buildroot/commit/?id=80997acd3587a4528f8877d9e8a502c39ed800c5
branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master

Downstream patches have been mainlined in commits [1] (v2.03.06) and
[2] (v2.03.12). Second patch was slightly modified, so replace
--disable-symvers with --with-symvers=no.

[1] https://github.com/lvmteam/lvm2/commit/125f27ac37bc9b93cc96f64052b9681b3d479ee1
[2] https://github.com/lvmteam/lvm2/commit/1cedbaf13778de02e38b5dc80a7af246b7ec83e5

Signed-off-by: Marcin Niestroj <m.niestroj@grinn-global.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
---
 ...configure-Introduce-enable-symvers-option.patch | 278 ---------------------
 ...ve-unsupported-options-event-timeout-rule.patch |  33 ---
 package/lvm2/lvm2.hash                             |   2 +-
 package/lvm2/lvm2.mk                               |   4 +-
 4 files changed, 3 insertions(+), 314 deletions(-)

diff --git a/package/lvm2/0001-configure-Introduce-enable-symvers-option.patch b/package/lvm2/0001-configure-Introduce-enable-symvers-option.patch
deleted file mode 100644
index 7ef153313c..0000000000
--- a/package/lvm2/0001-configure-Introduce-enable-symvers-option.patch
+++ /dev/null
@@ -1,278 +0,0 @@
-From 94d71c49eb1682a73465eb162b0a059561168bb2 Mon Sep 17 00:00:00 2001
-From: Marcin Niestroj <m.niestroj@grinn-global.com>
-Date: Fri, 20 Jul 2018 14:26:44 +0200
-Subject: [PATCH] configure: Introduce --enable-symvers option
-
-Only few libc (e.g. glibc) libraries support full symbol version
-resolution in runtime. There are lot of standard libraries that do not
-support that, such as dietlibc, musl and uclibc. Hence there is no
-reason to generate symbol versions when compiling against them.
-
-Additionally libdevmapper.so was broken when compiled against
-uclibc. Runtime linker loader caused calling dm_task_get_info_base()
-function recursively, leading to segmentation fault.
-
-Introduce --enable-symvers[=STYLE] option, which allows to choose
-between gnu and disabled symbol versioning. By default gnu symbol
-versioning is used to provide backward compatibility.
-__GNUC__ check is replaced now with GNU_SYMVER, which is generated by
-configure script. Additionally ld version script is included only in
-case of gnu option, which slightly reduces output size.
-
-Providing --disable-symvers to configure script when building against
-uclibc library fixes segmentation fault error described above, due to
-lack of several versions of the same symbol in libdevmapper.so
-library.
-
-Signed-off-by: Marcin Niestroj <m.niestroj@grinn-global.com>
----
- configure                 | 32 ++++++++++++++++++++++++++++++--
- configure.ac              | 28 +++++++++++++++++++++++++---
- include/configure.h.in    |  3 +++
- lib/misc/lib.h            | 10 +++++-----
- libdm/datastruct/bitset.c |  5 +----
- libdm/ioctl/libdm-iface.c |  2 +-
- libdm/libdm-deptree.c     |  2 +-
- libdm/libdm-stats.c       |  2 +-
- 8 files changed, 67 insertions(+), 17 deletions(-)
-
-diff --git a/configure b/configure
-index 7d945dfa8..94cd6b1ea 100755
---- a/configure
-+++ b/configure
-@@ -975,6 +975,7 @@ enable_fsadm
- enable_blkdeactivate
- enable_dmeventd
- enable_selinux
-+enable_symvers
- enable_nls
- with_localedir
- with_confdir
-@@ -1725,6 +1726,9 @@ Optional Features:
-   --disable-blkdeactivate disable blkdeactivate
-   --enable-dmeventd       enable the device-mapper event daemon
-   --disable-selinux       disable selinux support
-+  --enable-symvers[=STYLE]
-+                          enables symbol versioning of the shared library
-+                          [default=gnu]
-   --enable-nls            enable Native Language Support
- 
- Optional Packages:
-@@ -3156,7 +3160,6 @@ if test -z "$CFLAGS"; then :
- fi
- case "$host_os" in
- 	linux*)
--		CLDFLAGS="$CLDFLAGS -Wl,--version-script,.export.sym"
- 		# equivalent to -rdynamic
- 		ELDFLAGS="-Wl,--export-dynamic"
- 		# FIXME Generate list and use --dynamic-list=.dlopen.sym
-@@ -3178,7 +3181,6 @@ case "$host_os" in
- 		;;
- 	darwin*)
- 		CFLAGS="$CFLAGS -no-cpp-precomp -fno-common"
--		CLDFLAGS="$CLDFLAGS"
- 		ELDFLAGS=
- 		CLDWHOLEARCHIVE="-all_load"
- 		CLDNOWHOLEARCHIVE=
-@@ -14401,6 +14403,32 @@ done
- 	LIBS=$lvm_saved_libs
- fi
- 
-+################################################################################
-+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable symbol versioning" >&5
-+$as_echo_n "checking whether to enable symbol versioning... " >&6; }
-+# Check whether --enable-symvers was given.
-+if test "${enable_symvers+set}" = set; then :
-+  enableval=$enable_symvers;
-+  case "$enableval" in
-+    gnu|no) ;;
-+    *) as_fn_error $? "Unknown argument to enable/disable symvers" "$LINENO" 5 ;;
-+  esac
-+else
-+  enable_symvers=gnu
-+fi
-+
-+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_symvers" >&5
-+$as_echo "$enable_symvers" >&6; }
-+
-+if test x$GCC = xyes && test x$enable_symvers = xgnu ; then
-+
-+$as_echo "#define GNU_SYMVER 1" >>confdefs.h
-+
-+  case "$host_os" in
-+    linux*) CLDFLAGS="$CLDFLAGS -Wl,--version-script,.export.sym" ;;
-+  esac
-+fi
-+
- ################################################################################
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable internationalisation" >&5
- $as_echo_n "checking whether to enable internationalisation... " >&6; }
-diff --git a/configure.ac b/configure.ac
-index e427708cd..2e8712f92 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -30,13 +30,11 @@ AC_CANONICAL_TARGET([])
- AS_IF([test -z "$CFLAGS"], [COPTIMISE_FLAG="-O2"])
- case "$host_os" in
- 	linux*)
--		CLDFLAGS="$CLDFLAGS -Wl,--version-script,.export.sym"
- 		# equivalent to -rdynamic
- 		ELDFLAGS="-Wl,--export-dynamic"
- 		# FIXME Generate list and use --dynamic-list=.dlopen.sym
- 		CLDWHOLEARCHIVE="-Wl,-whole-archive"
- 		CLDNOWHOLEARCHIVE="-Wl,-no-whole-archive"
--		LDDEPS="$LDDEPS .export.sym"
- 		LIB_SUFFIX=so
- 		DEVMAPPER=yes
- 		BUILD_LVMETAD=no
-@@ -52,7 +50,6 @@ case "$host_os" in
- 		;;
- 	darwin*)
- 		CFLAGS="$CFLAGS -no-cpp-precomp -fno-common"
--		CLDFLAGS="$CLDFLAGS"
- 		ELDFLAGS=
- 		CLDWHOLEARCHIVE="-all_load"
- 		CLDNOWHOLEARCHIVE=
-@@ -1656,6 +1653,31 @@ package as well (which may be called readline-devel or something similar).])
- 	LIBS=$lvm_saved_libs
- fi
- 
-+################################################################################
-+dnl -- Symbol versioning
-+AC_MSG_CHECKING(whether to enable symbol versioning)
-+AC_ARG_ENABLE(symvers,
-+              AC_HELP_STRING([--enable-symvers[[[=STYLE]]]],
-+                             [enables symbol versioning of the shared library [default=gnu]]),
-+                             [
-+  case "$enableval" in
-+    gnu|no) ;;
-+    *) AC_MSG_ERROR(Unknown argument to enable/disable symvers) ;;
-+  esac],
-+                             enable_symvers=gnu)
-+AC_MSG_RESULT($enable_symvers)
-+
-+if test x$GCC = xyes && test x$enable_symvers = xgnu ; then
-+  AC_DEFINE(GNU_SYMVER, 1,
-+            [Define to use GNU versioning in the shared library.])
-+  case "$host_os" in
-+    linux*)
-+      CLDFLAGS="$CLDFLAGS -Wl,--version-script,.export.sym"
-+      LDDEPS="$LDDEPS .export.sym"
-+      ;;
-+  esac
-+fi
-+
- ################################################################################
- dnl -- Internationalisation stuff
- AC_MSG_CHECKING(whether to enable internationalisation)
-diff --git a/include/configure.h.in b/include/configure.h.in
-index 15fd150ed..7a07a10ef 100644
---- a/include/configure.h.in
-+++ b/include/configure.h.in
-@@ -147,6 +147,9 @@
- /* Path to fsadm binary. */
- #undef FSADM_PATH
- 
-+/* Define to use GNU versioning in the shared library. */
-+#undef GNU_SYMVER
-+
- /* Define to 1 if you have the `alarm' function. */
- #undef HAVE_ALARM
- 
-diff --git a/lib/misc/lib.h b/lib/misc/lib.h
-index d7fa5c721..7cf98f932 100644
---- a/lib/misc/lib.h
-+++ b/lib/misc/lib.h
-@@ -41,16 +41,16 @@
-  * macro DM_EXPORT_SYMBOL to export the function and bind it to the
-  * specified version string.
-  *
-- * Since versioning is only available when compiling with GCC the entire
-- * compatibility version should be enclosed in '#if defined(__GNUC__)',
-- * for example:
-+ * Since versioning is only available when compiling with GCC
-+ * and GLIBC the entire compatibility version should be enclosed
-+ * in '#if defined(GNU_SYMVER)', for example:
-  *
-  *   int dm_foo(int bar)
-  *   {
-  *     return bar;
-  *   }
-  *
-- *   #if defined(__GNUC__)
-+ *   #if defined(GNU_SYMVER)
-  *   // Backward compatible dm_foo() version 1.02.104
-  *   int dm_foo_v1_02_104(void);
-  *   int dm_foo_v1_02_104(void)
-@@ -67,7 +67,7 @@
-  * versions of library symbols prior to the introduction of symbol
-  * versioning: it must never be used for new symbols.
-  */
--#if defined(__GNUC__)
-+#if defined(GNU_SYMVER)
- #define DM_EXPORT_SYMBOL(func, ver) \
- 	__asm__(".symver " #func "_v" #ver ", " #func "@DM_" #ver )
- #define DM_EXPORT_SYMBOL_BASE(func) \
-diff --git a/libdm/datastruct/bitset.c b/libdm/datastruct/bitset.c
-index b0826e1eb..2ec3f8f84 100644
---- a/libdm/datastruct/bitset.c
-+++ b/libdm/datastruct/bitset.c
-@@ -242,7 +242,7 @@ bad:
- 	return NULL;
- }
- 
--#if defined(__GNUC__)
-+#if defined(GNU_SYMVER)
- /*
-  * Maintain backward compatibility with older versions that did not
-  * accept a 'min_num_bits' argument to dm_bitset_parse_list().
-@@ -253,7 +253,4 @@ dm_bitset_t dm_bitset_parse_list_v1_02_129(const char *str, struct dm_pool *mem)
- 	return dm_bitset_parse_list(str, mem, 0);
- }
- DM_EXPORT_SYMBOL(dm_bitset_parse_list, 1_02_129);
--
--#else /* if defined(__GNUC__) */
--
- #endif
-diff --git a/libdm/ioctl/libdm-iface.c b/libdm/ioctl/libdm-iface.c
-index 769b69c1b..28e2eadee 100644
---- a/libdm/ioctl/libdm-iface.c
-+++ b/libdm/ioctl/libdm-iface.c
-@@ -2145,7 +2145,7 @@ void dm_lib_exit(void)
- 	_version_checked = 0;
- }
- 
--#if defined(__GNUC__)
-+#if defined(GNU_SYMVER)
- /*
-  * Maintain binary backward compatibility.
-  * Version script mechanism works with 'gcc' compatible compilers only.
-diff --git a/libdm/libdm-deptree.c b/libdm/libdm-deptree.c
-index ab0545659..00651c0b2 100644
---- a/libdm/libdm-deptree.c
-+++ b/libdm/libdm-deptree.c
-@@ -3797,7 +3797,7 @@ void dm_tree_node_set_callback(struct dm_tree_node *dnode,
- 	dnode->callback_data = data;
- }
- 
--#if defined(__GNUC__)
-+#if defined(GNU_SYMVER)
- /*
-  * Backward compatible implementations.
-  *
-diff --git a/libdm/libdm-stats.c b/libdm/libdm-stats.c
-index 94ad380e0..76efbbe35 100644
---- a/libdm/libdm-stats.c
-+++ b/libdm/libdm-stats.c
-@@ -5065,7 +5065,7 @@ int dm_stats_start_filemapd(int fd, uint64_t group_id, const char *path,
-  * current dm_stats_create_region() version.
-  */
- 
--#if defined(__GNUC__)
-+#if defined(GNU_SYMVER)
- int dm_stats_create_region_v1_02_106(struct dm_stats *dms, uint64_t *region_id,
- 				     uint64_t start, uint64_t len, int64_t step,
- 				     int precise, const char *program_id,
--- 
-2.18.0
-
diff --git a/package/lvm2/0002-udev-remove-unsupported-options-event-timeout-rule.patch b/package/lvm2/0002-udev-remove-unsupported-options-event-timeout-rule.patch
deleted file mode 100644
index f162ec58de..0000000000
--- a/package/lvm2/0002-udev-remove-unsupported-options-event-timeout-rule.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 125f27ac37bc9b93cc96f64052b9681b3d479ee1 Mon Sep 17 00:00:00 2001
-From: Peter Rajnoha <prajnoha@redhat.com>
-Date: Tue, 13 Aug 2019 15:18:30 +0200
-Subject: [PATCH] udev: remove unsupported OPTIONS+="event_timeout" rule
-
-The OPTIONS+="event_timeout" is Unsupported since systemd/udev version 216,
-that is ~5 years ago.
-
-Since systemd/udev version 243, there's a new message printed if unsupported
-OPTIONS value is used:
-
-  Invalid value for OPTIONS key, ignoring: 'event_timeout=180'
-
-Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1740666
-
-Signed-off-by: Pascal de Bruijn <p.debruijn@unilogic.nl>
----
-diff --git a/udev/11-dm-lvm.rules.in b/udev/11-dm-lvm.rules.in
-index 91cb991..7c58994 100644
---- a/udev/11-dm-lvm.rules.in
-+++ b/udev/11-dm-lvm.rules.in
-@@ -37,8 +37,6 @@ ENV{DM_SUBSYSTEM_UDEV_FLAG0}!="1", ENV{DM_NOSCAN}=="1", ENV{DM_UDEV_DISABLE_OTHE
- 
- ENV{DM_UDEV_DISABLE_SUBSYSTEM_RULES_FLAG}=="1", GOTO="lvm_end"
- 
--OPTIONS+="event_timeout=180"
--
- # Do not create symlinks for inappropriate subdevices.
- ENV{DM_LV_NAME}=="pvmove?*|?*_vorigin", GOTO="lvm_disable"
- ENV{DM_LV_LAYER}=="?*", GOTO="lvm_disable"
--- 
-2.9.3
-
diff --git a/package/lvm2/lvm2.hash b/package/lvm2/lvm2.hash
index 9a581527e0..1260669480 100644
--- a/package/lvm2/lvm2.hash
+++ b/package/lvm2/lvm2.hash
@@ -1,5 +1,5 @@
 # From http://sources.redhat.com/pub/lvm2/sha512.sum
-sha512 f421505551aec2a09bc862f2fcc1ee825bc4d94c53a01d13265631e99308d60fbca40112be5bc7824cce3ef223c0775d2f6c345f6a3f227229a0566c903841bf  LVM2.2.02.185.tgz
+sha512 e4d3bfb38b346251a2ea2cee7b79f2e12ed407652b659b35b65f58c8bb252943cee1c511713aeec8ff3400790e0e99ea6b83e8740050defe5cbb118f18bf7700  LVM2.2.03.12.tgz
 # Locally computed sha256 checksums
 sha256 e76fbcd2fb97cf202da330301327754d2db5c58b5b4bebd3a8a749393e7603d1  COPYING
 sha256 5df07007198989c622f5d41de8d703e7bef3d0e79d62e24332ee739a452af62a  COPYING.LIB
diff --git a/package/lvm2/lvm2.mk b/package/lvm2/lvm2.mk
index 653e72c72f..dc4e938697 100644
--- a/package/lvm2/lvm2.mk
+++ b/package/lvm2/lvm2.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-LVM2_VERSION = 2.02.185
+LVM2_VERSION = 2.03.12
 LVM2_SOURCE = LVM2.$(LVM2_VERSION).tgz
 LVM2_SITE = http://sources.redhat.com/pub/lvm2
 LVM2_INSTALL_STAGING = YES
@@ -20,7 +20,7 @@ LVM2_CONF_OPTS += \
 	--enable-cmdlib \
 	--enable-dmeventd \
 	--disable-nls \
-	--disable-symvers
+	--with-symvers=no
 
 LVM2_DEPENDENCIES += host-pkgconf libaio
 

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2021-05-11  7:48 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-05-11  7:48 [Buildroot] [git commit] package/lvm2: bump version to 2.03.12 Peter Korsgaard

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.