public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Lars Wendler" <polynomial-c@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-fs/multipath-tools/files/, sys-fs/multipath-tools/
Date: Mon, 11 May 2020 11:53:17 +0000 (UTC)	[thread overview]
Message-ID: <1589197992.eb22b954c177b5c1e2b6ed5c7cdd02f40f40d757.polynomial-c@gentoo> (raw)

commit:     eb22b954c177b5c1e2b6ed5c7cdd02f40f40d757
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Mon May 11 11:51:43 2020 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Mon May 11 11:53:12 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=eb22b954

sys-fs/multipath-tools: Bump to version 0.8.4

Package-Manager: Portage-2.3.99, Repoman-2.3.22
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 sys-fs/multipath-tools/Manifest                    |  1 +
 .../multipath-tools-0.8.4-parallel_make_fix.patch  | 85 ++++++++++++++++++++
 .../multipath-tools-0.8.4-respect-flags.patch      | 19 +++++
 .../multipath-tools/multipath-tools-0.8.4.ebuild   | 93 ++++++++++++++++++++++
 4 files changed, 198 insertions(+)

diff --git a/sys-fs/multipath-tools/Manifest b/sys-fs/multipath-tools/Manifest
index fa9c2ed1f14..03297803016 100644
--- a/sys-fs/multipath-tools/Manifest
+++ b/sys-fs/multipath-tools/Manifest
@@ -3,3 +3,4 @@ DIST multipath-tools-0.7.9.tar.gz 419377 BLAKE2B 29003b7ce2d673eb59d869e21650286
 DIST multipath-tools-0.8.1.tar.gz 447883 BLAKE2B c840ede03fd15763cd947a71596bf3a2e5935433d956208225f4fd6ed55074e2d9709f8b0e6c059a58d44b6649f52b3564d6651ea1af6186138357ba37f86b14 SHA512 1f87f974aace746ecac8af6ae330de16affe49cc89a5660b28be3b1c4a69f822da01042432176e64b5de6ad3a6568044954fdce8e3aa31e85611a595a4939947
 DIST multipath-tools-0.8.2.tar.gz 458879 BLAKE2B a5aae1c9b211c788b658cf53e1c966bb9dd39dbe3e81058d6c758ba11cfd77ebfbc9d70bfde5b41d00fb1d4fbf31f3d2e6d58c69179e8842b9f5b8e9edd0b755 SHA512 c809e652479a8b6b141fd69810dbba316d93368ec6cf1c57f479ccde50e3ccf0bebe1b62e9db4791135aec45a90761f9100635f0ffa4b175ce9c2d82ebcea5c9
 DIST multipath-tools-0.8.3.tar.gz 465248 BLAKE2B 21a7a18c70150b4422bdd0ae02f26f491845eb06928ab74e631df8c6b3c110d10f43f75b9f8289a7134826c923b7ba58ce54c40497c3b7e6211e53902c8a1b5f SHA512 d9fdc2763f5a1efa15ee07c5d863008c9694623935f62a0e0b56f941df4e0d0ca3f86056fefc9b5ca828b47782127e3d55f2f925b1ed957e02b675bef36f4cae
+DIST multipath-tools-0.8.4.tar.gz 480994 BLAKE2B be8368df049218e2eaa1749e7b1c7a930da15f0311ab549b1bbba9c019dcfe39f90a05fd621e0703301ef1d55c98ac8cc74231d82950d9066f19d8764421704b SHA512 720823188c053c1c50269a30e34a9d69099098495bfd607076bcfa2c079565e3f0580c91783f19d42ed82290c0db98e4e19ef620eca4ee5ec7885c49c72d2307

diff --git a/sys-fs/multipath-tools/files/multipath-tools-0.8.4-parallel_make_fix.patch b/sys-fs/multipath-tools/files/multipath-tools-0.8.4-parallel_make_fix.patch
new file mode 100644
index 00000000000..651cd04f59f
--- /dev/null
+++ b/sys-fs/multipath-tools/files/multipath-tools-0.8.4-parallel_make_fix.patch
@@ -0,0 +1,85 @@
+From 041472afebd1e621be1143f2bfb4c5650df171cc Mon Sep 17 00:00:00 2001
+From: Lars Wendler <polynomial-c@gentoo.org>
+Date: Mon, 11 May 2020 11:49:58 +0200
+Subject: [PATCH] multipath-tools: Fix parallel make issues
+
+build is broken like this (tested with -j16):
+
+  x86_64-pc-linux-gnu-gcc -Wl,-O1 -Wl,--hash-style=gnu -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -shared -lpthread -ldevmapper -ldl -L../libmultipath -lmultipath -L../libmpathcmd -lmpathcmd -Wl,-soname=libmpathpersist.so.0 -o libmpathpersist.so.0 mpath_persist.o mpath_updatepr.o mpath_pr_ioctl.o
+  building defaults.o because of defaults.c
+  ...
+  /usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -lmultipath
+  collect2: error: ld returned 1 exit status
+  make[1]: *** [Makefile:17: libmpathpersist.so.0] Error 1
+  make: *** [Makefile:29: libmpathpersist] Error 2
+  make: *** Waiting for unfinished jobs....
+
+install is broken like this:
+
+  install -m 755 libprio*.so /var/tmp/portage/sys-fs/multipath-tools-0.8.4/image/lib64/multipath
+  install -m 755 libcheckcciss_tur.so libcheckreadsector0.so libchecktur.so libcheckdirectio.so libcheckemc_clariion.so libcheckhp_sw.so libcheckrdac.so /var/tmp/portage/sys-fs/multipath-tools-0.8.4/image/lib64/multipath
+  ...
+  /usr/bin/install: target '/var/tmp/portage/sys-fs/multipath-tools-0.8.4/image/lib64/multipath' is not a directory
+  /usr/bin/install: target '/var/tmp/portage/sys-fs/multipath-tools-0.8.4/image/lib64/multipath' is not a directory
+  make[1]: *** [Makefile:28: install] Error 1
+  make[1]: *** [Makefile:38: install] Error 1
+---
+ Makefile                           | 3 ++-
+ libmultipath/checkers/Makefile     | 1 +
+ libmultipath/foreign/Makefile      | 1 +
+ libmultipath/prioritizers/Makefile | 1 +
+ 4 files changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index 1dee3680..a9ade94f 100644
+--- a/Makefile
++++ b/Makefile
+@@ -29,7 +29,8 @@ $(BUILDDIRS):
+ 	$(MAKE) -C $@
+ 
+ multipath multipathd mpathpersist: libmultipath
+-mpathpersist:  libmpathpersist
++libmpathpersist: libmultipath
++mpathpersist:  libmultipath libmpathpersist
+ 
+ $(BUILDDIRS.clean):
+ 	$(MAKE) -C ${@:.clean=} clean
+diff --git a/libmultipath/checkers/Makefile b/libmultipath/checkers/Makefile
+index 02caea64..f201ca4c 100644
+--- a/libmultipath/checkers/Makefile
++++ b/libmultipath/checkers/Makefile
+@@ -24,6 +24,7 @@ libcheck%.so: libsg.o %.o
+ 	$(CC) $(LDFLAGS) $(SHARED_FLAGS) -o $@ $^
+ 
+ install:
++	$(INSTALL_PROGRAM) -m 755 -d $(DESTDIR)$(libdir)
+ 	$(INSTALL_PROGRAM) -m 755 $(LIBS) $(DESTDIR)$(libdir)
+ 
+ uninstall:
+diff --git a/libmultipath/foreign/Makefile b/libmultipath/foreign/Makefile
+index fae58a0d..567deebd 100644
+--- a/libmultipath/foreign/Makefile
++++ b/libmultipath/foreign/Makefile
+@@ -14,6 +14,7 @@ libforeign-%.so: %.o
+ 	$(CC) $(LDFLAGS) $(SHARED_FLAGS) -o $@ $^
+ 
+ install:
++	$(INSTALL_PROGRAM) -m 755 -d $(DESTDIR)$(libdir)
+ 	$(INSTALL_PROGRAM) -m 755 $(LIBS) $(DESTDIR)$(libdir)
+ 
+ uninstall:
+diff --git a/libmultipath/prioritizers/Makefile b/libmultipath/prioritizers/Makefile
+index 9d0fe03c..b0b0b522 100644
+--- a/libmultipath/prioritizers/Makefile
++++ b/libmultipath/prioritizers/Makefile
+@@ -35,6 +35,7 @@ libprio%.so: %.o
+ 	$(CC) $(LDFLAGS) $(SHARED_FLAGS) -o $@ $^
+ 
+ install: $(LIBS)
++	$(INSTALL_PROGRAM) -m 755 -d $(DESTDIR)$(libdir)
+ 	$(INSTALL_PROGRAM) -m 755 libprio*.so $(DESTDIR)$(libdir)
+ 
+ uninstall:
+-- 
+2.26.2
+

diff --git a/sys-fs/multipath-tools/files/multipath-tools-0.8.4-respect-flags.patch b/sys-fs/multipath-tools/files/multipath-tools-0.8.4-respect-flags.patch
new file mode 100644
index 00000000000..5e5258405b4
--- /dev/null
+++ b/sys-fs/multipath-tools/files/multipath-tools-0.8.4-respect-flags.patch
@@ -0,0 +1,19 @@
+--- multipath-tools-0.8.4-d491591/Makefile.inc
++++ multipath-tools-0.8.4-d491591/Makefile.inc
+@@ -99,12 +99,13 @@
+ 		  -Werror=cast-qual $(ERROR_DISCARDED_QUALIFIERS) \
+ 		  $(STACKPROT) --param=ssp-buffer-size=4
+ CPPFLAGS	:= -Wp,-D_FORTIFY_SOURCE=2 
+-CFLAGS		:= $(OPTFLAGS) -DBIN_DIR=\"$(bindir)\" -DLIB_STRING=\"${LIB}\" -DRUN_DIR=\"${RUN}\" \
+-		   -MMD -MP $(CFLAGS)
++CFLAGS		?= $(OPTFLAGS)
++CFLAGS		+= -DBIN_DIR=\"$(bindir)\" -DLIB_STRING=\"${LIB}\" -DRUN_DIR=\"${RUN}\" \
++		   -MMD -MP
+ BIN_CFLAGS	= -fPIE -DPIE
+ LIB_CFLAGS	= -fPIC
+ SHARED_FLAGS	= -shared
+-LDFLAGS		= -Wl,-z,relro -Wl,-z,now
++LDFLAGS		+= -Wl,-z,relro -Wl,-z,now
+ BIN_LDFLAGS	= -pie
+ 
+ # Check whether a function with name $1 has been declared in header file $2.

diff --git a/sys-fs/multipath-tools/multipath-tools-0.8.4.ebuild b/sys-fs/multipath-tools/multipath-tools-0.8.4.ebuild
new file mode 100644
index 00000000000..ab4f6f9cd3c
--- /dev/null
+++ b/sys-fs/multipath-tools/multipath-tools-0.8.4.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+inherit linux-info systemd toolchain-funcs udev vcs-snapshot toolchain-funcs
+
+DESCRIPTION="Device mapper target autoconfig"
+HOMEPAGE="http://christophe.varoqui.free.fr/"
+SRC_URI="https://git.opensvc.com/?p=multipath-tools/.git;a=snapshot;h=${PV};sf=tgz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~x86"
+IUSE="systemd rbd"
+
+BDEPEND="virtual/pkgconfig"
+
+RDEPEND="
+	dev-libs/json-c:=
+	dev-libs/libaio
+	dev-libs/userspace-rcu:=
+	>=sys-fs/lvm2-2.02.45
+	>=virtual/libudev-232-r3
+	sys-libs/readline:0=
+	rbd? ( sys-cluster/ceph )
+	systemd? ( sys-apps/systemd )
+"
+
+DEPEND="${RDEPEND}"
+
+CONFIG_CHECK="~DM_MULTIPATH"
+
+RESTRICT="test"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-0.8.4-respect-flags.patch
+	"${FILESDIR}"/${PN}-0.8.3-no-gziped-docs.patch
+	"${FILESDIR}"/${PN}-0.8.3-json-c-0.14.patch
+	"${FILESDIR}"/${PN}-0.8.4-parallel_make_fix.patch
+)
+
+get_systemd_pv() {
+	use systemd && \
+		$(tc-getPKG_CONFIG) --modversion systemd
+}
+
+src_prepare() {
+	default
+
+	# The upstream lacks any way to configure the build at present
+	# and ceph is a huge dependency, so we're using sed to make it
+	# optional until the upstream has a proper configure system
+	if ! use rbd ; then
+		sed \
+			-e "s/libcheckrbd.so/# libcheckrbd.so/" \
+			-e "s/-lrados//" \
+			-i libmultipath/checkers/Makefile \
+			|| die
+	fi
+}
+
+src_compile() {
+	# LIBDM_API_FLUSH involves grepping files in /usr/include,
+	# so force the test to go the way we want #411337.
+	emake \
+		CC="$(tc-getCC)" \
+		LIBDM_API_FLUSH=1 SYSTEMD="$(get_systemd_pv)"
+}
+
+src_install() {
+	dodir /sbin /usr/share/man/man{3,5,8}
+	emake \
+		DESTDIR="${D}" \
+		RUN=run \
+		SYSTEMD=$(get_systemd_pv) \
+		unitdir="$(systemd_get_systemunitdir)" \
+		libudevdir='${prefix}'/"$(get_udevdir)" \
+		pkgconfdir='${prefix}'/usr/'${LIB}'/pkgconfig \
+		install
+
+	newinitd "${FILESDIR}"/multipathd-r1.rc multipathd
+	newinitd "${FILESDIR}"/multipath.rc multipath
+
+	einstalldocs
+}
+
+pkg_postinst() {
+	if [[ -z ${REPLACING_VERSIONS} ]]; then
+		elog "If you need multipath on your system, you must"
+		elog "add 'multipath' into your boot runlevel!"
+	fi
+}


             reply	other threads:[~2020-05-11 11:53 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-11 11:53 Lars Wendler [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-03-17  6:00 [gentoo-commits] repo/gentoo:master commit in: sys-fs/multipath-tools/files/, sys-fs/multipath-tools/ Sam James
2024-02-22 19:57 Patrick McLean
2023-11-30  3:49 Sam James
2023-03-23 15:54 David Seifert
2022-12-26  8:35 Sam James
2022-07-02 13:16 David Seifert
2020-05-03 19:18 Thomas Deutschmann
2020-05-02  7:29 Thomas Deutschmann
2018-03-20 13:36 Lars Wendler
2017-11-23 20:48 Thomas Deutschmann
2017-08-02  6:35 Lars Wendler
2016-09-12 21:32 Mike Gilbert
2016-08-08 20:26 Robin H. Johnson
2016-08-05 18:43 Robin H. Johnson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1589197992.eb22b954c177b5c1e2b6ed5c7cdd02f40f40d757.polynomial-c@gentoo \
    --to=polynomial-c@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox