summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarc Schiffbauer <mschiff@gentoo.org>2020-11-12 18:08:46 +0100
committerMarc Schiffbauer <mschiff@gentoo.org>2020-11-12 18:09:20 +0100
commit9bbe57c855191d1f906a6ef7a0f881817cbdd6cc (patch)
treef2efe0075ab9c209dcfa5176c222a49ddc8c08fb /sys-cluster/corosync/corosync-3.1.0.ebuild
parentnet-irc/znc: Stabilize 1.8.2 amd64, #753395 (diff)
downloadgentoo-9bbe57c855191d1f906a6ef7a0f881817cbdd6cc.tar.gz
gentoo-9bbe57c855191d1f906a6ef7a0f881817cbdd6cc.tar.bz2
gentoo-9bbe57c855191d1f906a6ef7a0f881817cbdd6cc.zip
sys-cluster/corosync: bump version, add new features
Package-Manager: Portage-3.0.8, Repoman-3.0.2 Signed-off-by: Marc Schiffbauer <mschiff@gentoo.org>
Diffstat (limited to 'sys-cluster/corosync/corosync-3.1.0.ebuild')
-rw-r--r--sys-cluster/corosync/corosync-3.1.0.ebuild97
1 files changed, 97 insertions, 0 deletions
diff --git a/sys-cluster/corosync/corosync-3.1.0.ebuild b/sys-cluster/corosync/corosync-3.1.0.ebuild
new file mode 100644
index 00000000000..0c6e68cf61c
--- /dev/null
+++ b/sys-cluster/corosync/corosync-3.1.0.ebuild
@@ -0,0 +1,97 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit linux-info autotools
+
+DESCRIPTION="OSI Certified implementation of a complete cluster engine"
+HOMEPAGE="http://www.corosync.org/"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2 public-domain"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
+IUSE="augeas dbus doc snmp systemd watchdog xml"
+
+RDEPEND="dev-libs/nss
+ >=sys-cluster/libqb-2.0.0:=
+ sys-cluster/kronosnet:=
+ augeas? ( app-admin/augeas )
+ dbus? ( sys-apps/dbus )
+ snmp? ( net-analyzer/net-snmp )
+ systemd? ( sys-apps/systemd:= )
+ watchdog? ( sys-kernel/linux-headers )
+ "
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig
+ doc? ( sys-apps/groff )"
+
+DOCS=( README.recovery AUTHORS )
+
+pkg_setup() {
+ if use watchdog; then
+ # verify that CONFIG_WATCHDOG is enabled in the kernel or
+ # warn otherwise
+ linux-info_pkg_setup
+ elog "Checking for suitable kernel configuration options..."
+ if linux_config_exists; then
+ if ! linux_chkconfig_present WATCHDOG; then
+ ewarn "CONFIG_WATCHDOG: is not set when it should be."
+ elog "Please check to make sure these options are set correctly."
+ fi
+ else
+ ewarn "Could not check, if CONFIG_WATCHDOG is enabled in your kernel."
+ elog "Please check to make sure these options are set correctly."
+ fi
+ fi
+}
+
+src_prepare() {
+ default
+
+ sed -i 's/$SEC_FLAGS $OPT_CFLAGS $GDB_FLAGS/$OS_CFLAGS/' configure.ac || die 'sed failed'
+
+ if ! use doc; then
+ sed -i 's/BUILD_HTML_DOCS, test/BUILD_HTML_DOCS, false/' configure.ac || die 'sed failed'
+ fi
+
+ eautoreconf
+}
+
+src_configure() {
+ # appends lib to localstatedir automatically
+ # FIXME: install just shared libs --disable-static does not work
+ econf_opts=(
+ --disable-static \
+ --localstatedir=/var \
+ $(use_enable augeas) \
+ $(use_enable dbus) \
+ $(use_enable snmp) \
+ $(use_enable systemd) \
+ $(use_enable watchdog) \
+ $(use_enable xml xmlconf)
+ )
+ use doc && econf_opts+=( --enable-doc )
+ econf "${econf_opts[@]}"
+}
+
+src_install() {
+ default
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}.logrotate ${PN}
+
+ keepdir /var/lib/corosync /var/log/cluster
+
+ find "${D}" -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ if [[ ${REPLACING_VERSIONS} ]]; then
+ elog "Default token timeout was changed from 1 seconds to 3 seconds."
+ elog "If you need to keep the old timeout, add 'token: 1000' to the"
+ elog "totem {} section of your corosync.conf"
+ fi
+}