diff options
author | Sam James <sam@gentoo.org> | 2021-07-12 07:39:13 +0100 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2021-07-12 07:39:13 +0100 |
commit | 9a01e5f5c63a9eb7b7e64497d19dca8cce093eed (patch) | |
tree | 60bd799097bea1dc1b1cb816d62b00878ce878a0 /sys-fs/multipath-tools | |
parent | dev-perl/Net-DBus: amd64 stable wrt bug #801613 (diff) | |
download | gentoo-9a01e5f5c63a9eb7b7e64497d19dca8cce093eed.tar.gz gentoo-9a01e5f5c63a9eb7b7e64497d19dca8cce093eed.tar.bz2 gentoo-9a01e5f5c63a9eb7b7e64497d19dca8cce093eed.zip |
sys-fs/multipath-tools: assorted (mostly build system) fixes
* Explicitly set LIB to ${EPREFIX}/$(get_libdir) to avoid guessing.
* No longer set SYSTEMD in emake (upstream now use pkgconfig for this)
* Respect PKG_CONFIG (now respects the 'PKGCONFIG' variable upstream)
* Unrestrict tests (add missing cmocka dependency first). Passing here.
* Don't compress man pages
Bug: https://bugs.gentoo.org/801121
Closes: https://bugs.gentoo.org/780660
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'sys-fs/multipath-tools')
-rw-r--r-- | sys-fs/multipath-tools/files/multipath-tools-0.8.6-no-compress-man-pages.patch | 226 | ||||
-rw-r--r-- | sys-fs/multipath-tools/multipath-tools-0.8.6-r1.ebuild | 88 |
2 files changed, 314 insertions, 0 deletions
diff --git a/sys-fs/multipath-tools/files/multipath-tools-0.8.6-no-compress-man-pages.patch b/sys-fs/multipath-tools/files/multipath-tools-0.8.6-no-compress-man-pages.patch new file mode 100644 index 000000000000..d8521436d955 --- /dev/null +++ b/sys-fs/multipath-tools/files/multipath-tools-0.8.6-no-compress-man-pages.patch @@ -0,0 +1,226 @@ +From 80cca1a75f24ee239ace5577d49ccfec511480ca Mon Sep 17 00:00:00 2001 +From: Sam James <sam@gentoo.org> +Date: Mon, 12 Jul 2021 06:04:04 +0100 +Subject: [PATCH] Don't compress man pages + +--- + kpartx/Makefile | 5 ++--- + libdmmp/Makefile | 13 ++++--------- + libmpathpersist/Makefile | 14 +++++--------- + mpathpersist/Makefile | 5 ++--- + multipath/Makefile | 10 ++++------ + multipathd/Makefile | 5 ++--- + 6 files changed, 19 insertions(+), 33 deletions(-) + +diff --git a/kpartx/Makefile b/kpartx/Makefile +index 2906a98..cd351a4 100644 +--- a/kpartx/Makefile ++++ b/kpartx/Makefile +@@ -21,7 +21,6 @@ all: $(EXEC) + + $(EXEC): $(OBJS) + $(CC) $(CFLAGS) $(OBJS) -o $(EXEC) $(LDFLAGS) $(LIBDEPS) +- $(GZIP) $(EXEC).8 > $(EXEC).8.gz + + install: $(EXEC) $(EXEC).8 + $(INSTALL_PROGRAM) -d $(DESTDIR)$(bindir) +@@ -33,11 +32,11 @@ install: $(EXEC) $(EXEC).8 + $(INSTALL_PROGRAM) -m 644 kpartx.rules $(DESTDIR)$(libudevdir)/rules.d/66-kpartx.rules + $(INSTALL_PROGRAM) -m 644 del-part-nodes.rules $(DESTDIR)$(libudevdir)/rules.d/68-del-part-nodes.rules + $(INSTALL_PROGRAM) -d $(DESTDIR)$(man8dir) +- $(INSTALL_PROGRAM) -m 644 $(EXEC).8.gz $(DESTDIR)$(man8dir) ++ $(INSTALL_PROGRAM) -m 644 $(EXEC).8 $(DESTDIR)$(man8dir) + + uninstall: + $(RM) $(DESTDIR)$(bindir)/$(EXEC) +- $(RM) $(DESTDIR)$(man8dir)/$(EXEC).8.gz ++ $(RM) $(DESTDIR)$(man8dir)/$(EXEC).8 + $(RM) $(DESTDIR)$(libudevdir)/kpartx_id + $(RM) $(DESTDIR)$(libudevdir)/rules.d/11-dm-parts.rules + $(RM) $(DESTDIR)$(libudevdir)/rules.d/66-kpartx.rules +diff --git a/libdmmp/Makefile b/libdmmp/Makefile +index 764a0bc..a859786 100644 +--- a/libdmmp/Makefile ++++ b/libdmmp/Makefile +@@ -21,13 +21,13 @@ CFLAGS += $(LIB_CFLAGS) -fvisibility=hidden -I$(libdmmpdir) -I$(mpathcmddir) \ + LIBDEPS += $(shell $(PKGCONFIG) --libs json-c) -L$(mpathcmddir) -lmpathcmd -lpthread + + all: $(LIBS) doc +-.PHONY: doc doc.gz clean install uninstall check speed_test dep_clean ++.PHONY: doc clean install uninstall check speed_test dep_clean + + $(LIBS): $(OBJS) + $(CC) $(LDFLAGS) $(SHARED_FLAGS) -Wl,-soname=$@ -o $@ $(OBJS) $(LIBDEPS) + $(LN) $@ $(DEVLIB) + +-install: doc.gz ++install: doc + mkdir -p $(DESTDIR)$(usrlibdir) + $(INSTALL_PROGRAM) -m 755 $(LIBS) $(DESTDIR)$(usrlibdir)/$(LIBS) + $(INSTALL_PROGRAM) -m 644 -D \ +@@ -41,7 +41,7 @@ install: doc.gz + $(DESTDIR)$(pkgconfdir)/$(PKGFILE) + perl -i -pe 's|__INCLUDEDIR__|$(includedir)|g' \ + $(DESTDIR)$(pkgconfdir)/$(PKGFILE) +- $(INSTALL_PROGRAM) -m 644 -t $(DESTDIR)$(man3dir) docs/man/*.3.gz ++ $(INSTALL_PROGRAM) -m 644 -t $(DESTDIR)$(man3dir) docs/man/*.3 + + uninstall: + $(RM) $(DESTDIR)$(usrlibdir)/$(LIBS) +@@ -55,7 +55,7 @@ uninstall: + + clean: dep_clean + $(RM) core *.a *.o *.gz *.so *.so.* +- $(RM) docs/man/*.gz ++ $(RM) docs/man/* + $(MAKE) -C test clean + + include $(wildcard $(OBJS:.o=.d)) +@@ -66,13 +66,8 @@ check: all + speed_test: all + $(MAKE) -C test speed_test + +-doc.gz: doc $(patsubst %,%.gz,$(wildcard docs/man/*.3)) +- + doc: docs/man/dmmp_strerror.3 + +-docs/man/%.3.gz: docs/man/%.3 +- gzip -c $< >$@ +- + docs/man/dmmp_strerror.3: $(HEADERS) + TEMPFILE=$(shell mktemp); \ + cat $^ | perl docs/doc-preclean.pl >$$TEMPFILE; \ +diff --git a/libmpathpersist/Makefile b/libmpathpersist/Makefile +index 57103e5..37c765a 100644 +--- a/libmpathpersist/Makefile ++++ b/libmpathpersist/Makefile +@@ -12,7 +12,7 @@ LIBDEPS += -lmultipath -lmpathcmd -ldevmapper -lpthread -ldl + + OBJS = mpath_persist.o mpath_updatepr.o mpath_pr_ioctl.o + +-all: $(DEVLIB) man ++all: $(DEVLIB) + + $(LIBS): $(OBJS) $(VERSION_SCRIPT) + $(CC) $(LDFLAGS) $(SHARED_FLAGS) -Wl,-soname=$@ \ +@@ -21,10 +21,6 @@ $(LIBS): $(OBJS) $(VERSION_SCRIPT) + $(DEVLIB): $(LIBS) + $(LN) $(LIBS) $@ + +-man: +- $(GZIP) mpath_persistent_reserve_in.3 > mpath_persistent_reserve_in.3.gz +- $(GZIP) mpath_persistent_reserve_out.3 > mpath_persistent_reserve_out.3.gz +- + install: all + $(INSTALL_PROGRAM) -d $(DESTDIR)$(syslibdir) + $(INSTALL_PROGRAM) -m 755 $(LIBS) $(DESTDIR)$(syslibdir)/$(LIBS) +@@ -32,14 +28,14 @@ install: all + $(INSTALL_PROGRAM) -m 755 -d $(DESTDIR)$(man3dir) + $(INSTALL_PROGRAM) -m 755 -d $(DESTDIR)$(includedir) + $(LN) $(LIBS) $(DESTDIR)$(syslibdir)/$(DEVLIB) +- $(INSTALL_PROGRAM) -m 644 mpath_persistent_reserve_in.3.gz $(DESTDIR)$(man3dir) +- $(INSTALL_PROGRAM) -m 644 mpath_persistent_reserve_out.3.gz $(DESTDIR)$(man3dir) ++ $(INSTALL_PROGRAM) -m 644 mpath_persistent_reserve_in.3 $(DESTDIR)$(man3dir) ++ $(INSTALL_PROGRAM) -m 644 mpath_persistent_reserve_out.3 $(DESTDIR)$(man3dir) + $(INSTALL_PROGRAM) -m 644 mpath_persist.h $(DESTDIR)$(includedir) + + uninstall: + $(RM) $(DESTDIR)$(syslibdir)/$(LIBS) +- $(RM) $(DESTDIR)$(man3dir)/mpath_persistent_reserve_in.3.gz +- $(RM) $(DESTDIR)$(man3dir)/mpath_persistent_reserve_out.3.gz ++ $(RM) $(DESTDIR)$(man3dir)/mpath_persistent_reserve_in.3 ++ $(RM) $(DESTDIR)$(man3dir)/mpath_persistent_reserve_out.3 + $(RM) $(DESTDIR)$(includedir)/mpath_persist.h + $(RM) $(DESTDIR)$(syslibdir)/$(DEVLIB) + +diff --git a/mpathpersist/Makefile b/mpathpersist/Makefile +index 5126801..0aba3cb 100644 +--- a/mpathpersist/Makefile ++++ b/mpathpersist/Makefile +@@ -14,13 +14,12 @@ all: $(EXEC) + + $(EXEC): $(OBJS) + $(CC) $(OBJS) -o $(EXEC) $(LDFLAGS) $(CFLAGS) $(LIBDEPS) +- $(GZIP) $(EXEC).8 > $(EXEC).8.gz + + install: + $(INSTALL_PROGRAM) -d $(DESTDIR)$(bindir) + $(INSTALL_PROGRAM) -m 755 $(EXEC) $(DESTDIR)$(bindir)/ + $(INSTALL_PROGRAM) -d $(DESTDIR)$(man8dir) +- $(INSTALL_PROGRAM) -m 644 $(EXEC).8.gz $(DESTDIR)$(man8dir) ++ $(INSTALL_PROGRAM) -m 644 $(EXEC).8 $(DESTDIR)$(man8dir) + + clean: dep_clean + $(RM) core *.o $(EXEC) *.gz +@@ -29,7 +28,7 @@ include $(wildcard $(OBJS:.o=.d)) + + uninstall: + $(RM) $(DESTDIR)$(bindir)/$(EXEC) +- $(RM) $(DESTDIR)$(man8dir)/$(EXEC).8.gz ++ $(RM) $(DESTDIR)$(man8dir)/$(EXEC).8 + + dep_clean: + $(RM) $(OBJS:.o=.d) +diff --git a/multipath/Makefile b/multipath/Makefile +index 0828a8f..55b6f7b 100644 +--- a/multipath/Makefile ++++ b/multipath/Makefile +@@ -16,8 +16,6 @@ all: $(EXEC) + + $(EXEC): $(OBJS) $(multipathdir)/libmultipath.so $(mpathcmddir)/libmpathcmd.so + $(CC) $(CFLAGS) $(OBJS) -o $(EXEC) $(LDFLAGS) $(LIBDEPS) +- $(GZIP) $(EXEC).8 > $(EXEC).8.gz +- $(GZIP) $(EXEC).conf.5 > $(EXEC).conf.5.gz + + install: + $(INSTALL_PROGRAM) -d $(DESTDIR)$(bindir) +@@ -26,16 +24,16 @@ install: + $(INSTALL_PROGRAM) -m 644 11-dm-mpath.rules $(DESTDIR)$(udevrulesdir) + $(INSTALL_PROGRAM) -m 644 $(EXEC).rules $(DESTDIR)$(libudevdir)/rules.d/56-multipath.rules + $(INSTALL_PROGRAM) -d $(DESTDIR)$(man8dir) +- $(INSTALL_PROGRAM) -m 644 $(EXEC).8.gz $(DESTDIR)$(man8dir) ++ $(INSTALL_PROGRAM) -m 644 $(EXEC).8 $(DESTDIR)$(man8dir) + $(INSTALL_PROGRAM) -d $(DESTDIR)$(man5dir) +- $(INSTALL_PROGRAM) -m 644 $(EXEC).conf.5.gz $(DESTDIR)$(man5dir) ++ $(INSTALL_PROGRAM) -m 644 $(EXEC).conf.5 $(DESTDIR)$(man5dir) + + uninstall: + $(RM) $(DESTDIR)$(bindir)/$(EXEC) + $(RM) $(DESTDIR)$(udevrulesdir)/11-dm-mpath.rules + $(RM) $(DESTDIR)$(libudevdir)/rules.d/56-multipath.rules +- $(RM) $(DESTDIR)$(man8dir)/$(EXEC).8.gz +- $(RM) $(DESTDIR)$(man5dir)/$(EXEC).conf.5.gz ++ $(RM) $(DESTDIR)$(man8dir)/$(EXEC).8 ++ $(RM) $(DESTDIR)$(man5dir)/$(EXEC).conf.5 + + clean: dep_clean + $(RM) core *.o $(EXEC) *.gz +diff --git a/multipathd/Makefile b/multipathd/Makefile +index d053c1e..cf3339f 100644 +--- a/multipathd/Makefile ++++ b/multipathd/Makefile +@@ -38,7 +38,6 @@ all : $(EXEC) + + $(EXEC): $(OBJS) $(multipathdir)/libmultipath.so $(mpathcmddir)/libmpathcmd.so + $(CC) $(CFLAGS) $(OBJS) $(LDFLAGS) -o $(EXEC) $(LIBDEPS) +- $(GZIP) $(EXEC).8 > $(EXEC).8.gz + + cli_handlers.o: cli_handlers.c + $(CC) $(CFLAGS) -Wno-unused-parameter -c -o $@ $< +@@ -52,11 +51,11 @@ ifdef SYSTEMD + $(INSTALL_PROGRAM) -m 644 $(EXEC).socket $(DESTDIR)$(unitdir) + endif + $(INSTALL_PROGRAM) -d $(DESTDIR)$(man8dir) +- $(INSTALL_PROGRAM) -m 644 $(EXEC).8.gz $(DESTDIR)$(man8dir) ++ $(INSTALL_PROGRAM) -m 644 $(EXEC).8 $(DESTDIR)$(man8dir) + + uninstall: + $(RM) $(DESTDIR)$(bindir)/$(EXEC) +- $(RM) $(DESTDIR)$(man8dir)/$(EXEC).8.gz ++ $(RM) $(DESTDIR)$(man8dir)/$(EXEC).8 + $(RM) $(DESTDIR)$(unitdir)/$(EXEC).service + $(RM) $(DESTDIR)$(unitdir)/$(EXEC).socket + +-- +2.32.0 + diff --git a/sys-fs/multipath-tools/multipath-tools-0.8.6-r1.ebuild b/sys-fs/multipath-tools/multipath-tools-0.8.6-r1.ebuild new file mode 100644 index 000000000000..8dff4dda6bf3 --- /dev/null +++ b/sys-fs/multipath-tools/multipath-tools-0.8.6-r1.ebuild @@ -0,0 +1,88 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +inherit linux-info systemd toolchain-funcs udev + +DESCRIPTION="Device mapper target autoconfig" +HOMEPAGE="http://christophe.varoqui.free.fr/" +SRC_URI="https://github.com/opensvc/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~x86" +IUSE="systemd rbd test" +RESTRICT="!test? ( test )" + +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} + test? ( dev-util/cmocka )" +BDEPEND="virtual/pkgconfig" + +CONFIG_CHECK="~DM_MULTIPATH" + +PATCHES=( + "${FILESDIR}"/${PN}-0.8.5-respect-flags.patch + "${FILESDIR}"/${PN}-0.8.6-no-compress-man-pages.patch +) + +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)" \ + LIB="${EPREFIX}/$(get_libdir)" \ + LIBDM_API_FLUSH=1 \ + PKGCONFIG="$(tc-getPKG_CONFIG)" +} + +src_install() { + dodir /sbin /usr/share/man/man{3,5,8} + emake \ + DESTDIR="${D}" \ + LIB="${EPREFIX}/$(get_libdir)" \ + RUN=run \ + 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 + + find "${ED}" -type f -name "*.la" -delete || die +} + +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 +} |