public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] proj/genkernel:master commit in: /, patches/lvm/2.02.183/, patches/lvm/2.02.173/
@ 2019-03-21 23:51 Thomas Deutschmann
  0 siblings, 0 replies; only message in thread
From: Thomas Deutschmann @ 2019-03-21 23:51 UTC (permalink / raw
  To: gentoo-commits

commit:     4c92b79d16789bfeddb02dcf7834111ca187359c
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Thu Mar 21 20:43:38 2019 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Thu Mar 21 20:43:38 2019 +0000
URL:        https://gitweb.gentoo.org/proj/genkernel.git/commit/?id=4c92b79d

Bump LVM2 to v2.02.183

Bug: https://bugs.gentoo.org/642988
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>

 gen_compile.sh                                     |  21 +++--
 .../lvm2-2.02.139-dynamic-static-ldflags.patch     |  63 -------------
 .../lvm/2.02.183/lvm2-001-example.conf.in.patch    |  50 ++++++++++
 .../lvm2-002-always-make-static-libdm.patch        |  42 +++++++++
 .../lvm/2.02.183/lvm2-003-lvm2create_initrd.patch  |  72 +++++++++++++++
 patches/lvm/2.02.183/lvm2-004-createinitrd.patch   |  18 ++++
 patches/lvm/2.02.183/lvm2-005-locale-muck.patch    |  11 +++
 patches/lvm/2.02.183/lvm2-006-asneeded.patch       |  15 +++
 .../2.02.183/lvm2-007-dynamic-static-ldflags.patch |  59 ++++++++++++
 .../2.02.183/lvm2-008-static-pkgconfig-libs.patch  | 102 +++++++++++++++++++++
 .../lvm/2.02.183/lvm2-009-pthread-pkgconfig.patch  |  29 ++++++
 patches/lvm/2.02.183/lvm2-010-static-libm.patch    |  13 +++
 .../lvm/2.02.183/lvm2-011-HPPA-no-O_DIRECT.patch   |  12 +++
 13 files changed, 437 insertions(+), 70 deletions(-)

diff --git a/gen_compile.sh b/gen_compile.sh
index 0689e10..c4a6665 100755
--- a/gen_compile.sh
+++ b/gen_compile.sh
@@ -530,7 +530,9 @@ compile_libaio() {
 }
 
 compile_lvm() {
-	if [ -f "${LVM_BINCACHE}" ]
+	compile_libaio
+
+	if [[ -f "${LVM_BINCACHE}" && "${LVM_BINCACHE}" -nt "${LIBAIO_BINCACHE}" ]]
 	then
 		print_info 1 "$(getIndent 3)lvm: >> Using cache"
 	else
@@ -542,6 +544,12 @@ compile_lvm() {
 			gen_die 'Could not extract LVM source tarball!'
 		[ -d "${LVM_DIR}" ] ||
 			gen_die "LVM directory ${LVM_DIR} is invalid!"
+
+		rm -rf "${TEMP}/libaio" > /dev/null
+		mkdir -p "${TEMP}/libaio"
+		/bin/tar -xpf "${LIBAIO_BINCACHE}" -C "${TEMP}/libaio" ||
+			gen_die "Could not extract libaio binary cache!";
+
 		cd "${LVM_DIR}"
 		print_info 1 "$(getIndent 3)lvm: >> Patching ..."
 		apply_patches lvm ${LVM_VER}
@@ -553,7 +561,7 @@ compile_lvm() {
 		LVM_CONF=(
 			--enable-static_link
 			--prefix=/
-			--disable-dmeventd # Fails to build libdm-string.c:(.text+0x1481): undefined reference to `nearbyintl'
+			--enable-dmeventd
 			--enable-cmdlib
 			--enable-applib
 			--disable-lvmetad
@@ -570,22 +578,21 @@ compile_lvm() {
 			--with-raid=internal
 		)
 		CFLAGS="-fPIC" \
-		LIBS='-luuid -lrt -lpthread -lm' \
-		LDFLAGS='-Wl,--no-as-needed' \
+		LDFLAGS="-L${TEMP}/libaio/lib" \
 		./configure "${LVM_CONF[@]}" \
 			>> ${LOGFILE} 2>&1 || \
 			gen_die 'Configure of lvm failed!'
 		print_info 1 "$(getIndent 3)lvm: >> Compiling..."
 		compile_generic '' utils || gen_die "failed to build LVM"
 
-		mkdir -p "${TEMP}/lvm/sbin"
 		print_info 1 "$(getIndent 3)lvm: >> Installing to DESTDIR..."
+		mkdir -p "${TEMP}/lvm/sbin"
 		compile_generic "install DESTDIR=${TEMP}/lvm/" utils || gen_die "failed to install LVM"
 		# Upstream does u-w on files, and this breaks stuff.
 		chmod -R u+w "${TEMP}/lvm/"
 
-		cd "${TEMP}/lvm"
 		print_info 1 "$(getIndent 3)lvm: >> Copying to bincache..."
+		cd "${TEMP}/lvm" || gen_die "cannot chdir into '${TEMP}/lvm'"
 		${UTILS_CROSS_COMPILE}strip "sbin/lvm.static" ||
 			gen_die 'Could not strip lvm.static!'
 		# See bug 382555
@@ -596,7 +603,7 @@ compile_lvm() {
 
 		cd "${TEMP}"
 		isTrue "${CMD_DEBUGCLEANUP}" && rm -rf "${TEMP}/lvm" > /dev/null
-		isTrue "${CMD_DEBUGCLEANUP}" && rm -rf "${LVM_DIR}" lvm
+		isTrue "${CMD_DEBUGCLEANUP}" && rm -rf "${LVM_DIR}" libaio lvm
 		return 0
 	fi
 }

diff --git a/patches/lvm/2.02.173/lvm2-2.02.139-dynamic-static-ldflags.patch b/patches/lvm/2.02.173/lvm2-2.02.139-dynamic-static-ldflags.patch
deleted file mode 100644
index 312e546..0000000
--- a/patches/lvm/2.02.173/lvm2-2.02.139-dynamic-static-ldflags.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-diff -ur LVM2.2.02.139_O/configure.in LVM2.2.02.139/configure.in
---- LVM2.2.02.139_O/configure.in	2016-01-19 12:54:33.155187005 +0000
-+++ LVM2.2.02.139/configure.in	2016-01-19 12:56:39.487181372 +0000
-@@ -31,6 +31,7 @@
- 	linux*)
- 		CLDFLAGS="$CLDFLAGS -Wl,--version-script,.export.sym"
- 		ELDFLAGS="-Wl,--export-dynamic"
-+		STATIC_LDFLAGS="-Wl,--no-export-dynamic"
- 		# FIXME Generate list and use --dynamic-list=.dlopen.sym
- 		CLDWHOLEARCHIVE="-Wl,-whole-archive"
- 		CLDNOWHOLEARCHIVE="-Wl,-no-whole-archive"
-@@ -2009,6 +2010,7 @@
- AC_SUBST(SELINUX_PC)
- AC_SUBST(SNAPSHOTS)
- AC_SUBST(STATICDIR)
-+AC_SUBST(STATIC_LDFLAGS)
- AC_SUBST(STATIC_LINK)
- AC_SUBST(TESTING)
- AC_SUBST(TESTSUITE_DATA)
-diff -ur LVM2.2.02.139_O/daemons/dmeventd/Makefile.in LVM2.2.02.139/daemons/dmeventd/Makefile.in
---- LVM2.2.02.139_O/daemons/dmeventd/Makefile.in	2016-01-19 12:54:33.278186999 +0000
-+++ LVM2.2.02.139/daemons/dmeventd/Makefile.in	2016-01-19 12:57:44.277178484 +0000
-@@ -67,7 +67,7 @@
- 	$(DL_LIBS) $(LVMLIBS) $(LIBS) -rdynamic
- 
- dmeventd.static: $(LIB_STATIC) dmeventd.o $(interfacebuilddir)/libdevmapper.a
--	$(CC) $(CFLAGS) $(LDFLAGS) $(ELDFLAGS) -static -L. -L$(interfacebuilddir) -o $@ \
-+	$(CC) $(CFLAGS) $(LDFLAGS) $(ELDFLAGS) $(STATIC_LDFLAGS) -static -L. -L$(interfacebuilddir) -o $@ \
- 	dmeventd.o $(DL_LIBS) $(LVMLIBS) $(LIBS) $(STATIC_LIBS)
- 
- ifeq ("@PKGCONFIG@", "yes")
-diff -ur LVM2.2.02.139_O/make.tmpl.in LVM2.2.02.139/make.tmpl.in
---- LVM2.2.02.139_O/make.tmpl.in	2016-01-19 12:54:33.529186988 +0000
-+++ LVM2.2.02.139/make.tmpl.in	2016-01-19 12:58:31.514176378 +0000
-@@ -49,6 +49,7 @@
- # FIXME set this only where it's needed, not globally?
- CFLAGS ?= @COPTIMISE_FLAG@ @CFLAGS@
- LDFLAGS ?= @COPTIMISE_FLAG@ @LDFLAGS@
-+STATIC_LDFLAGS += @STATIC_LDFLAGS@
- CLDFLAGS += @CLDFLAGS@
- ELDFLAGS += @ELDFLAGS@
- LDDEPS += @LDDEPS@
-diff -ur LVM2.2.02.139_O/tools/Makefile.in LVM2.2.02.139/tools/Makefile.in
---- LVM2.2.02.139_O/tools/Makefile.in	2016-01-08 18:51:21.000000000 +0000
-+++ LVM2.2.02.139/tools/Makefile.in	2016-01-19 13:00:08.349172060 +0000
-@@ -129,7 +129,7 @@
- 	      -o $@ dmsetup.o -ldevmapper $(LIBS)
- 
- dmsetup.static: dmsetup.o $(interfacebuilddir)/libdevmapper.a
--	$(CC) $(CFLAGS) $(LDFLAGS) -static -L$(interfacebuilddir) \
-+	$(CC) $(CFLAGS) $(LDFLAGS) $(STATIC_LDFLAGS) -static -L$(interfacebuilddir) \
- 	      -o $@ dmsetup.o -ldevmapper $(M_LIBS) $(PTHREAD_LIBS) $(STATIC_LIBS) $(LIBS)
- 
- all: device-mapper
-@@ -146,7 +146,7 @@
- endif
- 
- lvm.static: $(OBJECTS) lvm-static.o $(top_builddir)/lib/liblvm-internal.a  $(interfacebuilddir)/libdevmapper.a
--	$(CC) $(CFLAGS) $(LDFLAGS) -static -L$(interfacebuilddir) -o $@ \
-+	$(CC) $(CFLAGS) $(LDFLAGS) $(STATIC_LDFLAGS) -static -L$(interfacebuilddir) -o $@ \
- 	      $(OBJECTS) lvm-static.o $(LVMLIBS) $(STATIC_LIBS) $(LIBS)
- 
- liblvm2cmd.a: $(top_builddir)/lib/liblvm-internal.a $(OBJECTS) lvmcmdlib.o lvm2cmd.o

diff --git a/patches/lvm/2.02.183/lvm2-001-example.conf.in.patch b/patches/lvm/2.02.183/lvm2-001-example.conf.in.patch
new file mode 100644
index 0000000..34c710d
--- /dev/null
+++ b/patches/lvm/2.02.183/lvm2-001-example.conf.in.patch
@@ -0,0 +1,50 @@
+--- LVM2.2.02.178/conf/example.conf.in
++++ LVM2.2.02.178/conf/example.conf.in
+@@ -128,6 +128,9 @@
+ 	# Example
+ 	# Accept every block device:
+ 	# filter = [ "a|.*/|" ]
++	# Gentoo: we exclude /dev/nbd by default, because it makes a lot of kernel
++	# noise when you probed while not available.
++	filter = [ "r|/dev/nbd.*|", "a/.*/" ]
+ 	# Reject the cdrom drive:
+ 	# filter = [ "r|/dev/cdrom|" ]
+ 	# Work with just loopback devices, e.g. for testing:
+@@ -704,7 +707,8 @@
+ 	# Configuration option global/fallback_to_lvm1.
+ 	# This setting is no longer used.
+ 	# This configuration option has an automatic default value.
+-	# fallback_to_lvm1 = 0
++	# Gentoo: the LVM tools are a seperate package.
++	fallback_to_lvm1 = 0
+ 
+ 	# Configuration option global/format.
+ 	# This setting is no longer used.
+@@ -1508,7 +1512,7 @@
+ 
+ # Configuration section metadata.
+ # This configuration section has an automatic default value.
+-# metadata {
++metadata {
+ 
+ 	# Configuration option metadata/check_pv_device_sizes.
+ 	# Check device sizes are not smaller than corresponding PV sizes.
+@@ -1553,7 +1557,8 @@
+ 	# 
+ 	# This configuration option is advanced.
+ 	# This configuration option has an automatic default value.
+-	# pvmetadatacopies = 1
++	# Gentoo: enable for data safety, but PV resize is then disabled.
++	# pvmetadatacopies = 2
+ 
+ 	# Configuration option metadata/vgmetadatacopies.
+ 	# Number of copies of metadata to maintain for each VG.
+@@ -1608,7 +1613,7 @@
+ 	# 
+ 	# This configuration option is advanced.
+ 	# This configuration option does not have a default value defined.
+-# }
++}
+ 
+ # Configuration section report.
+ # LVM report command output formatting.

diff --git a/patches/lvm/2.02.183/lvm2-002-always-make-static-libdm.patch b/patches/lvm/2.02.183/lvm2-002-always-make-static-libdm.patch
new file mode 100644
index 0000000..5ddcb4e
--- /dev/null
+++ b/patches/lvm/2.02.183/lvm2-002-always-make-static-libdm.patch
@@ -0,0 +1,42 @@
+diff -Nuar --exclude '*~' LVM2.2.02.63.orig/daemons/dmeventd/Makefile.in LVM2.2.02.63/daemons/dmeventd/Makefile.in
+--- LVM2.2.02.63.orig/daemons/dmeventd/Makefile.in	2010-04-09 14:42:48.000000000 -0700
++++ LVM2.2.02.63/daemons/dmeventd/Makefile.in	2010-04-19 11:53:27.000000000 -0700
+@@ -28,11 +28,12 @@
+ INSTALL_LIB_TARGETS = install_lib_dynamic
+ 
+ LIB_NAME = libdevmapper-event
++LIB_STATIC = $(LIB_NAME).a
++INSTALL_LIB_TARGETS += install_lib_static
++TARGETS += $(LIB_STATIC)
+ ifeq ("@STATIC_LINK@", "yes")
+-  LIB_STATIC = $(LIB_NAME).a
+-  TARGETS += $(LIB_STATIC) dmeventd.static
++  TARGETS += dmeventd.static
+   INSTALL_DMEVENTD_TARGETS += install_dmeventd_static
+-  INSTALL_LIB_TARGETS += install_lib_static
+ endif
+ 
+ LIB_VERSION = $(LIB_VERSION_DM)
+diff -Nuar --exclude '*~' LVM2.2.02.63.orig/libdm/Makefile.in LVM2.2.02.63/libdm/Makefile.in
+--- LVM2.2.02.63.orig/libdm/Makefile.in	2010-04-09 14:42:51.000000000 -0700
++++ LVM2.2.02.63/libdm/Makefile.in	2010-04-19 11:52:20.000000000 -0700
+@@ -34,8 +34,8 @@
+ 
+ INCLUDES = -I$(srcdir)/$(interface) -I$(srcdir)
+ 
+-ifeq ("@STATIC_LINK@", "yes")
+ LIB_STATIC = $(interface)/libdevmapper.a
++ifeq ("@STATIC_LINK@", "yes")
+ endif
+ 
+ LIB_SHARED = $(interface)/libdevmapper.$(LIB_SUFFIX)
+@@ -63,8 +63,8 @@
+ 
+ INSTALL_TYPE = install_dynamic
+ 
+-ifeq ("@STATIC_LINK@", "yes")
+   INSTALL_TYPE += install_static
++ifeq ("@STATIC_LINK@", "yes")
+ endif
+ 
+ ifeq ("@PKGCONFIG@", "yes")

diff --git a/patches/lvm/2.02.183/lvm2-003-lvm2create_initrd.patch b/patches/lvm/2.02.183/lvm2-003-lvm2create_initrd.patch
new file mode 100644
index 0000000..59aaa9b
--- /dev/null
+++ b/patches/lvm/2.02.183/lvm2-003-lvm2create_initrd.patch
@@ -0,0 +1,72 @@
+--- LVM2.2.02.56/scripts/lvm2create_initrd/lvm2create_initrd.orig	2006-11-21 22:41:56.000000000 +0000
++++ LVM2.2.02.56/scripts/lvm2create_initrd/lvm2create_initrd	2009-12-26 01:47:08.025224602 +0000
+@@ -54,7 +54,9 @@
+ DEVRAM=/tmp/initrd.$$
+ 
+ # set defaults
+-BINFILES=${BINFILES:-"`which lvm` `which bash` `which busybox` `which pivot_root`"}
++LVM=`which lvm.static`
++LVM=${LVM:-"`which lvm`"}
++BINFILES=${BINFILES:-"${LVM} `which bash` `which busybox` `which pivot_root`"}
+ BASICDEVICES=${BASICDEVICES:-"std consoleonly fd"}
+ BLOCKDEVICES=${BLOCKDEVICES:-"md hda hdb hdc hdd sda sdb sdc sdd"}
+ MAKEDEV=${MAKEDEV:-"debian"}
+@@ -119,6 +121,10 @@
+ echo "$PRE Mounting /proc"
+ mount -t proc none /proc
+ 
++# We need /sys for lvm
++echo "$PRE Mounting /sys"
++mount -t sysfs sysfs /sys
++
+ # plug in modules listed in /etc/modules
+ if [ -f /etc/modules ]; then
+     echo -n "$PRE plugging in kernel modules:"
+@@ -179,26 +185,29 @@
+ # run a shell if we're passed lvm2rescue on commandline
+ grep lvm2rescue /proc/cmdline 1>/dev/null 2>&1
+ if [ $? -eq 0 ]; then
+-    lvm vgchange --ignorelockingfailure -P -a y
++    $LVM vgchange --ignorelockingfailure -P -a y
+     do_shell
+ else
+-    lvm vgchange --ignorelockingfailure -a y
++    $LVM vgchange --ignorelockingfailure -a y
+ fi
+ 
+ echo "$PRE Mounting root filesystem $rootvol ro"
+ mkdir /rootvol
+ if ! mount -t auto -o ro $rootvol /rootvol; then
+-	echo "\t*FAILED*";
++	echo "\t*FAILED TRYING TO MOUNT ROOTVOL*";
+ 	do_shell
+ fi
+ 
+ echo "$PRE Umounting /proc"
+ umount /proc
+ 
++echo "$PRE Umounting /sys"
++umount /sys
++
+ echo "$PRE Changing roots"
+ cd /rootvol
+ if ! pivot_root . initrd ; then
+-	echo "\t*FAILED*"
++	echo "\t*FAILED PIVOT TO NEW ROOT*"
+ 	do_shell
+ fi
+ 
+@@ -356,7 +365,7 @@
+ fi
+ 
+ verbose "creating basic set of directories in $TMPMNT"
+-(cd $TMPMNT; mkdir bin dev etc lib proc sbin var)
++(cd $TMPMNT; mkdir bin dev etc lib proc sbin sys var)
+ if [ $? -ne 0 ]; then
+    echo "$cmd -- ERROR creating directories in $TMPMNT"
+    cleanup 1
+@@ -499,4 +508,3 @@
+ FINALTXT
+ 
+ cleanup 0
+-

diff --git a/patches/lvm/2.02.183/lvm2-004-createinitrd.patch b/patches/lvm/2.02.183/lvm2-004-createinitrd.patch
new file mode 100644
index 0000000..7f0bfb8
--- /dev/null
+++ b/patches/lvm/2.02.183/lvm2-004-createinitrd.patch
@@ -0,0 +1,18 @@
+X-Gentoo-Bug-URL: http://bugs.gentoo.org/show_bug.cgi?id=301331
+X-Gentoo-Bug: 301331
+
+diff -Nuar LVM2.2.02.67.orig/scripts/lvm2create_initrd/lvm2create_initrd LVM2.2.02.67/scripts/lvm2create_initrd/lvm2create_initrd
+--- LVM2.2.02.67.orig/scripts/lvm2create_initrd/lvm2create_initrd	2010-06-07 18:44:34.182980475 +0000
++++ LVM2.2.02.67/scripts/lvm2create_initrd/lvm2create_initrd	2010-06-07 18:51:27.636312899 +0000
+@@ -469,9 +469,9 @@
+ rmdir $TMPMNT/lost+found
+ 
+ echo "$cmd -- ummounting ram disk"
+-umount $DEVRAM
++umount $TMPMNT
+ if [ $? -ne 0 ]; then
+-   echo "$cmd -- ERROR umounting $DEVRAM"
++   echo "$cmd -- ERROR umounting $TMPMNT"
+    cleanup 1
+ fi
+ 

diff --git a/patches/lvm/2.02.183/lvm2-005-locale-muck.patch b/patches/lvm/2.02.183/lvm2-005-locale-muck.patch
new file mode 100644
index 0000000..fe7ec87
--- /dev/null
+++ b/patches/lvm/2.02.183/lvm2-005-locale-muck.patch
@@ -0,0 +1,11 @@
+--- LVM2/make.tmpl.in
++++ LVM2/make.tmpl.in
+@@ -395,7 +395,7 @@
+ 	( cat $(srcdir)/.exported_symbols; \
+ 	  if test x$(EXPORTED_HEADER) != x; then \
+ 		$(CC) -E -P $(INCLUDES) $(DEFS) $(EXPORTED_HEADER) | \
+-		$(SED) -ne "/^typedef|}/!s/.*[ *]\($(EXPORTED_FN_PREFIX)_[a-z0-9_]*\)(.*/\1/p"; \
++		LC_ALL=C $(SED) -ne "/^typedef|}/!s/.*[ *]\($(EXPORTED_FN_PREFIX)_[a-z0-9_]*\)(.*/\1/p"; \
+ 	  fi \
+ 	) > $@
+ 

diff --git a/patches/lvm/2.02.183/lvm2-006-asneeded.patch b/patches/lvm/2.02.183/lvm2-006-asneeded.patch
new file mode 100644
index 0000000..c831c6d
--- /dev/null
+++ b/patches/lvm/2.02.183/lvm2-006-asneeded.patch
@@ -0,0 +1,15 @@
+http://bugs.gentoo.org/330255
+
+liblvm2app.so: undefined reference to `floor'
+
+--- LVM2.2.02.178/liblvm/Makefile.in
++++ LVM2.2.02.178/liblvm/Makefile.in
+@@ -43,7 +43,7 @@
+ include $(top_builddir)/make.tmpl
+ 
+ LDFLAGS += -L$(top_builddir)/lib -L$(top_builddir)/daemons/dmeventd
+-LIBS += $(LVMINTERNAL_LIBS) -ldevmapper -laio
++LIBS += $(LVMINTERNAL_LIBS) -ldevmapper -laio -lm
+ 
+ .PHONY: install_dynamic install_static install_include install_pkgconfig
+ 

diff --git a/patches/lvm/2.02.183/lvm2-007-dynamic-static-ldflags.patch b/patches/lvm/2.02.183/lvm2-007-dynamic-static-ldflags.patch
new file mode 100644
index 0000000..0a0e732
--- /dev/null
+++ b/patches/lvm/2.02.183/lvm2-007-dynamic-static-ldflags.patch
@@ -0,0 +1,59 @@
+--- LVM2.2.02.178/configure.ac
++++ LVM2.2.02.178/configure.ac
+@@ -33,6 +33,7 @@
+ 		CLDFLAGS="$CLDFLAGS -Wl,--version-script,.export.sym"
+ 		# equivalent to -rdynamic
+ 		ELDFLAGS="-Wl,--export-dynamic"
++		STATIC_LDFLAGS="-Wl,--no-export-dynamic"
+ 		# FIXME Generate list and use --dynamic-list=.dlopen.sym
+ 		CLDWHOLEARCHIVE="-Wl,-whole-archive"
+ 		CLDNOWHOLEARCHIVE="-Wl,-no-whole-archive"
+@@ -2042,6 +2043,7 @@
+ AC_SUBST(SYSTEMD_LIBS)
+ AC_SUBST(SNAPSHOTS)
+ AC_SUBST(STATICDIR)
++AC_SUBST(STATIC_LDFLAGS)
+ AC_SUBST(STATIC_LINK)
+ AC_SUBST(TESTSUITE_DATA)
+ AC_SUBST(THIN)
+--- LVM2.2.02.178/daemons/dmeventd/Makefile.in
++++ LVM2.2.02.178/daemons/dmeventd/Makefile.in
+@@ -64,7 +64,7 @@
+ 		-o $@ $(DL_LIBS) $(DMEVENT_LIBS) $(LIBS)
+ 
+ dmeventd.static: $(LIB_STATIC) dmeventd.o $(interfacebuilddir)/libdevmapper.a
+-	$(CC) $(CFLAGS) $(LDFLAGS) -static -L. -L$(interfacebuilddir) dmeventd.o \
++	$(CC) $(CFLAGS) $(LDFLAGS) $(STATIC_LDFLAGS) -static -L. -L$(interfacebuilddir) dmeventd.o \
+ 		-o $@ $(DL_LIBS) $(DMEVENT_LIBS) $(LIBS) $(STATIC_LIBS)
+ 
+ ifeq ("@PKGCONFIG@", "yes")
+--- LVM2.2.02.178/make.tmpl.in
++++ LVM2.2.02.178/make.tmpl.in
+@@ -64,6 +64,7 @@
+ # FIXME set this only where it's needed, not globally?
+ CFLAGS ?= @COPTIMISE_FLAG@ @CFLAGS@
+ LDFLAGS ?= @LDFLAGS@
++STATIC_LDFLAGS += @STATIC_LDFLAGS@
+ CLDFLAGS += @CLDFLAGS@
+ ELDFLAGS += @ELDFLAGS@
+ LDDEPS += @LDDEPS@
+--- LVM2.2.02.178/tools/Makefile.in
++++ LVM2.2.02.178/tools/Makefile.in
+@@ -129,7 +129,7 @@
+ 
+ dmsetup.static: dmsetup.o $(interfacebuilddir)/libdevmapper.a
+ 	@echo "    [CC] $@"
+-	$(Q) $(CC) $(CFLAGS) $(LDFLAGS) -static -L$(interfacebuilddir) \
++	$(Q) $(CC) $(CFLAGS) $(LDFLAGS) $(STATIC_LDFLAGS) -static -L$(interfacebuilddir) \
+ 	      -o $@ dmsetup.o -ldevmapper $(M_LIBS) $(PTHREAD_LIBS) $(STATIC_LIBS) $(LIBS)
+ 
+ all: device-mapper
+@@ -159,7 +159,7 @@
+ 
+ lvm.static: $(OBJECTS) lvm-static.o $(top_builddir)/lib/liblvm-internal.a  $(interfacebuilddir)/libdevmapper.a
+ 	@echo "    [CC] $@"
+-	$(Q) $(CC) $(CFLAGS) $(LDFLAGS) -static -L$(interfacebuilddir) -o $@ \
++	$(Q) $(CC) $(CFLAGS) $(LDFLAGS) $(STATIC_LDFLAGS) -static -L$(interfacebuilddir) -o $@ \
+ 	      $(OBJECTS) lvm-static.o $(LVMLIBS) $(STATIC_LIBS) $(LIBS)
+ 
+ liblvm2cmd.a: $(top_builddir)/lib/liblvm-internal.a $(OBJECTS) lvmcmdlib.o lvm2cmd.o

diff --git a/patches/lvm/2.02.183/lvm2-008-static-pkgconfig-libs.patch b/patches/lvm/2.02.183/lvm2-008-static-pkgconfig-libs.patch
new file mode 100644
index 0000000..989b308
--- /dev/null
+++ b/patches/lvm/2.02.183/lvm2-008-static-pkgconfig-libs.patch
@@ -0,0 +1,102 @@
+--- LVM2.2.02.178/configure.ac
++++ LVM2.2.02.178/configure.ac
+@@ -1238,6 +1238,7 @@
+ 	PKG_CHECK_MODULES(BLKID, blkid >= 2.24,
+ 			  [ BLKID_WIPING=yes
+ 			    BLKID_PC="blkid"
++			    BLKID_STATIC_LIBS=`$PKG_CONFIG --static --libs $BLKID_PC`
+ 			    DEFAULT_USE_BLKID_WIPING=1
+ 			    AC_DEFINE([BLKID_WIPING_SUPPORT], 1, [Define to 1 to use libblkid detection of signatures when wiping.])
+ 			  ], [if test "$BLKID_WIPING" = maybe; then
+@@ -1286,6 +1287,7 @@
+ if test "$UDEV_SYNC" = yes; then
+ 	pkg_config_init
+ 	PKG_CHECK_MODULES(UDEV, libudev >= 143, [UDEV_PC="libudev"])
++	UDEV_STATIC_LIBS=`$PKG_CONFIG --static --libs libudev`
+ 	AC_DEFINE([UDEV_SYNC_SUPPORT], 1, [Define to 1 to enable synchronisation with udev processing.])
+ 
+ 	AC_CHECK_LIB(udev, udev_device_get_is_initialized, AC_DEFINE([HAVE_LIBUDEV_UDEV_DEVICE_GET_IS_INITIALIZED], 1,
+@@ -1564,19 +1566,32 @@
+ if test "$SELINUX" = yes; then
+ 	AC_CHECK_LIB([sepol], [sepol_check_context], [
+ 		AC_DEFINE([HAVE_SEPOL], 1, [Define to 1 if sepol_check_context is available.])
+-		SELINUX_LIBS="-lsepol"])
++		SEPOL_LIBS="-lsepol"])
++
++	dnl -- init pkgconfig if required
++	if  test x$PKGCONFIG_INIT != x1; then
++		pkg_config_init
++	fi
++	PKG_CHECK_MODULES(SELINUX, libselinux, [
++		SELINUX_PC="libselinux"
++		SELINUX_STATIC_LIBS=`$PKG_CONFIG --static --libs libselinux`
++		SELINUX_LIBS="$SELINUX_LIBS $SEPOL_LIBS"
++		AC_DEFINE([HAVE_SELINUX], 1, [Define to 1 to include support for selinux.])
++	],[
++		dnl -- old non-pkgconfig method, is buggy with static builds
+ 
+ 	AC_CHECK_LIB([selinux], [is_selinux_enabled], [
+ 		AC_CHECK_HEADERS([selinux/selinux.h],, hard_bailout)
+ 		AC_CHECK_HEADERS([selinux/label.h])
+ 		AC_DEFINE([HAVE_SELINUX], 1, [Define to 1 to include support for selinux.])
+-		SELINUX_LIBS="-lselinux $SELINUX_LIBS"
++		SELINUX_LIBS="-lselinux $SEPOL_LIBS"
+ 		SELINUX_PC="libselinux"
+ 		HAVE_SELINUX=yes ], [
+ 		AC_MSG_WARN(Disabling selinux)
+ 		SELINUX_LIBS=
+ 		SELINUX_PC=
+ 		HAVE_SELINUX=no ])
++	])
+ fi
+ 
+ ################################################################################
+@@ -1927,6 +1942,7 @@
+ ################################################################################
+ AC_SUBST(APPLIB)
+ AC_SUBST(AWK)
++AC_SUBST(BLKID_STATIC_LIBS)
+ AC_SUBST(BLKID_PC)
+ AC_SUBST(BUILD_CMIRRORD)
+ AC_SUBST(BUILD_DMEVENTD)
+@@ -2037,6 +2053,7 @@
+ AC_SUBST(SALCK_LIBS)
+ AC_SUBST(SBINDIR)
+ AC_SUBST(SELINUX_LIBS)
++AC_SUBST(SELINUX_STATIC_LIBS)
+ AC_SUBST(SELINUX_PC)
+ AC_SUBST(SYSCONFDIR)
+ AC_SUBST(SYSTEMD_LIBS)
+@@ -2053,6 +2070,7 @@
+ AC_SUBST(CACHE_DUMP_CMD)
+ AC_SUBST(CACHE_REPAIR_CMD)
+ AC_SUBST(CACHE_RESTORE_CMD)
++AC_SUBST(UDEV_STATIC_LIBS)
+ AC_SUBST(UDEV_PC)
+ AC_SUBST(UDEV_RULES)
+ AC_SUBST(UDEV_SYNC)
+--- LVM2.2.02.178/make.tmpl.in
++++ LVM2.2.02.178/make.tmpl.in
+@@ -59,7 +59,7 @@
+ 
+ LIBS = @LIBS@
+ # Extra libraries always linked with static binaries
+-STATIC_LIBS = $(SELINUX_LIBS) $(UDEV_LIBS) $(BLKID_LIBS)
++STATIC_LIBS = $(SELINUX_STATIC_LIBS) $(UDEV_STATIC_LIBS) $(BLKID_STATIC_LIBS)
+ DEFS += @DEFS@
+ # FIXME set this only where it's needed, not globally?
+ CFLAGS ?= @COPTIMISE_FLAG@ @CFLAGS@
+@@ -75,10 +75,13 @@
+ PTHREAD_LIBS = @PTHREAD_LIBS@
+ READLINE_LIBS = @READLINE_LIBS@
+ SELINUX_LIBS = @SELINUX_LIBS@
++SELINUX_STATIC_LIBS = @SELINUX_STATIC_LIBS@
+ UDEV_CFLAGS = @UDEV_CFLAGS@
+ UDEV_LIBS = @UDEV_LIBS@
++UDEV_STATIC_LIBS = @UDEV_STATIC_LIBS@
+ BLKID_CFLAGS = @BLKID_CFLAGS@
+ BLKID_LIBS = @BLKID_LIBS@
++BLKID_STATIC_LIBS = @BLKID_STATIC_LIBS@
+ SYSTEMD_LIBS = @SYSTEMD_LIBS@
+ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@
+ 

diff --git a/patches/lvm/2.02.183/lvm2-009-pthread-pkgconfig.patch b/patches/lvm/2.02.183/lvm2-009-pthread-pkgconfig.patch
new file mode 100644
index 0000000..c0265e8
--- /dev/null
+++ b/patches/lvm/2.02.183/lvm2-009-pthread-pkgconfig.patch
@@ -0,0 +1,29 @@
+--- LVM2.2.02.176/libdm/libdevmapper.pc.in
++++ LVM2.2.02.176/libdm/libdevmapper.pc.in
+@@ -9,4 +9,4 @@
+ Cflags: -I${includedir} 
+ Libs: -L${libdir} -ldevmapper
+ Requires.private: @SELINUX_PC@ @UDEV_PC@
+-Libs.private: -lm @RT_LIBS@
++Libs.private: -lm @RT_LIBS@ @PTHREAD_LIBS@
+--- LVM2.2.02.176/tools/Makefile.in
++++ LVM2.2.02.176/tools/Makefile.in
+@@ -93,6 +93,7 @@
+   INSTALL_LVM_TARGETS += install_tools_static
+   INSTALL_DMSETUP_TARGETS += install_dmsetup_static
+   INSTALL_CMDLIB_TARGETS += install_cmdlib_static
++  STATIC_LIBS += @PTHREAD_LIBS@
+ endif
+ 
+ LVMLIBS = $(LVMINTERNAL_LIBS) -ldevmapper
+@@ -118,6 +119,10 @@
+ 
+ include $(top_builddir)/make.tmpl
+ 
++ifeq ("@STATIC_LINK@", "yes")
++  STATIC_LIBS += @PTHREAD_LIBS@
++endif
++
+ device-mapper: $(TARGETS_DM)
+ 
+ CFLAGS_dmsetup.o += $(UDEV_CFLAGS) $(EXTRA_EXEC_CFLAGS)

diff --git a/patches/lvm/2.02.183/lvm2-010-static-libm.patch b/patches/lvm/2.02.183/lvm2-010-static-libm.patch
new file mode 100644
index 0000000..1cbf956
--- /dev/null
+++ b/patches/lvm/2.02.183/lvm2-010-static-libm.patch
@@ -0,0 +1,13 @@
+diff --git a/make.tmpl.in b/make.tmpl.in
+index a40eaaa15..7eea943aa 100644
+--- a/make.tmpl.in
++++ b/make.tmpl.in
+@@ -53,7 +53,7 @@ PYCOMPILE = $(top_srcdir)/autoconf/py-compile
+ 
+ LIBS = @LIBS@
+ # Extra libraries always linked with static binaries
+-STATIC_LIBS = $(SELINUX_STATIC_LIBS) $(UDEV_STATIC_LIBS) $(BLKID_STATIC_LIBS)
++STATIC_LIBS = $(SELINUX_STATIC_LIBS) $(UDEV_STATIC_LIBS) $(BLKID_STATIC_LIBS) $(M_LIBS)
+ DEFS += @DEFS@
+ # FIXME set this only where it's needed, not globally?
+ CFLAGS ?= @COPTIMISE_FLAG@ @CFLAGS@

diff --git a/patches/lvm/2.02.183/lvm2-011-HPPA-no-O_DIRECT.patch b/patches/lvm/2.02.183/lvm2-011-HPPA-no-O_DIRECT.patch
new file mode 100644
index 0000000..0f830e4
--- /dev/null
+++ b/patches/lvm/2.02.183/lvm2-011-HPPA-no-O_DIRECT.patch
@@ -0,0 +1,12 @@
+--- a/lib/device/dev-io.c
++++ b/lib/device/dev-io.c
+@@ -505,7 +505,9 @@
+ 			dev->flags |= DEV_NOT_O_NOATIME;
+ 			if ((dev->fd = open(name, flags, 0777)) >= 0) {
+ 				log_debug_devs("%s: Not using O_NOATIME", name);
++#ifdef O_DIRECT_SUPPORT
+ 				goto opened;
++#endif
+ 			}
+ 		}
+ #endif


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

only message in thread, other threads:[~2019-03-21 23:51 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-03-21 23:51 [gentoo-commits] proj/genkernel:master commit in: /, patches/lvm/2.02.183/, patches/lvm/2.02.173/ Thomas Deutschmann

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox