summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPacho Ramos <pacho@gentoo.org>2016-10-08 15:21:04 +0200
committerPacho Ramos <pacho@gentoo.org>2016-10-08 15:32:50 +0200
commit773afbea7f7ba364d1a2c7ea6b279192952223f9 (patch)
tree16c9a78fd597171840e9e85a793e22628e1ebd99 /sys-cluster
parentapp-leechcraft/lc-bittorrent: Fix compat with libtorrent-1 (#588940 by Georg ... (diff)
downloadgentoo-773afbea7f7ba364d1a2c7ea6b279192952223f9.tar.gz
gentoo-773afbea7f7ba364d1a2c7ea6b279192952223f9.tar.bz2
gentoo-773afbea7f7ba364d1a2c7ea6b279192952223f9.zip
sys-cluster/drbd: Fix block-drbd failing to start, bug #518774 by Konstantin.
Package-Manager: portage-2.3.1
Diffstat (limited to 'sys-cluster')
-rw-r--r--sys-cluster/drbd/drbd-8.4.3-r2.ebuild86
-rw-r--r--sys-cluster/drbd/files/drbd-8.4.3-block-drbd.patch20
2 files changed, 106 insertions, 0 deletions
diff --git a/sys-cluster/drbd/drbd-8.4.3-r2.ebuild b/sys-cluster/drbd/drbd-8.4.3-r2.ebuild
new file mode 100644
index 000000000000..98cb96623dd7
--- /dev/null
+++ b/sys-cluster/drbd/drbd-8.4.3-r2.ebuild
@@ -0,0 +1,86 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+inherit bash-completion-r1 versionator udev
+
+DESCRIPTION="mirror/replicate block-devices across a network-connection"
+SRC_URI="http://oss.linbit.com/drbd/$(get_version_component_range 1-2 ${PV})/${P}.tar.gz"
+HOMEPAGE="http://www.drbd.org"
+
+LICENSE="GPL-2"
+KEYWORDS="~amd64 ~x86"
+IUSE="heartbeat pacemaker +udev xen"
+SLOT="0"
+
+PATCHES=(
+ # https://bugs.gentoo.org/show_bug.cgi?id=518774
+ "${FILESDIR}"/${P}-block-drbd.patch
+)
+
+src_prepare() {
+ default
+
+ # respect LDFLAGS, #453442
+ sed -e "s/\$(CC) -o/\$(CC) \$(LDFLAGS) -o/" \
+ -e "/\$(DESTDIR)\$(localstatedir)\/lock/d" \
+ -i user{,/legacy}/Makefile.in || die
+ # respect multilib
+ sed -i -e "s:/lib/:/$(get_libdir)/:g" \
+ Makefile.in scripts/{Makefile.in,global_common.conf,drbd.conf.example} || die
+ sed -e "s:@prefix@/lib:@prefix@/$(get_libdir):" \
+ -e "s:(DESTDIR)/lib:(DESTDIR)/$(get_libdir):" \
+ -i user/{,legacy/}Makefile.in || die
+ # correct install paths (really correct this time)
+ sed -i -e "s:\$(sysconfdir)/bash_completion.d:$(get_bashcompdir):" \
+ scripts/Makefile.in || die
+ # don't participate in user survey bug 360483
+ sed -i -e '/usage-count/ s/yes/no/' scripts/drbd.conf.example || die
+ sed -i -e "s:\$(sysconfdir)/udev:$(get_udevdir):" scripts/Makefile.in || die
+}
+
+src_configure() {
+ econf \
+ --localstatedir=/var \
+ --with-utils \
+ --without-km \
+ --without-rgmanager \
+ $(use_with udev) \
+ $(use_with xen) \
+ $(use_with pacemaker) \
+ $(use_with heartbeat) \
+ --with-bashcompletion \
+ --with-distro=gentoo
+}
+
+src_compile() {
+ # only compile the tools
+ emake OPTFLAGS="${CFLAGS}" tools
+}
+
+src_install() {
+ # only install the tools
+ emake DESTDIR="${D}" install-tools
+ einstalldocs
+
+ # install our own init script
+ newinitd "${FILESDIR}"/${PN}-8.0.rc ${PN}
+
+ dodoc scripts/drbd.conf.example
+}
+
+pkg_postinst() {
+ einfo
+ einfo "Please copy and gunzip the configuration file:"
+ einfo "from /usr/share/doc/${PF}/${PN}.conf.example.bz2 to /etc/${PN}.conf"
+ einfo "and edit it to your needs. Helpful commands:"
+ einfo "man 5 drbd.conf"
+ einfo "man 8 drbdsetup"
+ einfo "man 8 drbdadm"
+ einfo "man 8 drbddisk"
+ einfo "man 8 drbdmeta"
+ einfo
+
+ einfo "Remember to enable drbd support in kernel."
+}
diff --git a/sys-cluster/drbd/files/drbd-8.4.3-block-drbd.patch b/sys-cluster/drbd/files/drbd-8.4.3-block-drbd.patch
new file mode 100644
index 000000000000..408b81362967
--- /dev/null
+++ b/sys-cluster/drbd/files/drbd-8.4.3-block-drbd.patch
@@ -0,0 +1,20 @@
+--- a/scripts/block-drbd 2014-07-30 17:19:59.000000000 -0700
++++ b/scripts/block-drbd 2014-07-31 09:54:56.000000000 -0700
+@@ -248,7 +248,7 @@
+ fi
+
+ case $t in
+- drbd)
++ drbd|phy)
+ drbd_resource=$p
+ drbd_role="$(/sbin/drbdadm role $drbd_resource)"
+ drbd_lrole="${drbd_role%%/*}"
+@@ -276,7 +276,7 @@
+
+ remove)
+ case $t in
+- drbd)
++ drbd|phy)
+ p=$(xenstore_read "$XENBUS_PATH/params")
+ drbd_resource=$p
+ drbd_role="$(/sbin/drbdadm role $drbd_resource)"