summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-apps/irqbalance')
-rw-r--r--sys-apps/irqbalance/Manifest6
-rw-r--r--sys-apps/irqbalance/files/irqbalance-0.56-build.patch16
-rw-r--r--sys-apps/irqbalance/files/irqbalance.164
-rw-r--r--sys-apps/irqbalance/files/irqbalance.confd15
-rw-r--r--sys-apps/irqbalance/files/irqbalance.confd-119
-rw-r--r--sys-apps/irqbalance/files/irqbalance.init-0.55-r221
-rw-r--r--sys-apps/irqbalance/files/irqbalance.init.212
-rw-r--r--sys-apps/irqbalance/files/irqbalance.init.328
-rw-r--r--sys-apps/irqbalance/files/irqbalance.service11
-rw-r--r--sys-apps/irqbalance/irqbalance-0.56.ebuild39
-rw-r--r--sys-apps/irqbalance/irqbalance-1.0.4.ebuild35
-rw-r--r--sys-apps/irqbalance/irqbalance-1.0.5-r1.ebuild40
-rw-r--r--sys-apps/irqbalance/irqbalance-1.0.6.ebuild40
-rw-r--r--sys-apps/irqbalance/irqbalance-1.0.7-r1.ebuild49
-rw-r--r--sys-apps/irqbalance/irqbalance-1.0.7.ebuild44
-rw-r--r--sys-apps/irqbalance/irqbalance-1.0.9.ebuild49
-rw-r--r--sys-apps/irqbalance/metadata.xml12
17 files changed, 500 insertions, 0 deletions
diff --git a/sys-apps/irqbalance/Manifest b/sys-apps/irqbalance/Manifest
new file mode 100644
index 000000000000..2713c27bb9d6
--- /dev/null
+++ b/sys-apps/irqbalance/Manifest
@@ -0,0 +1,6 @@
+DIST irqbalance-0.56.tbz2 28089 SHA256 516e1bdc5469f0f350e2e9ad2925b221faa4497a608c8d4e28a997938451c5fc SHA512 52575520abeaa4268cfc1bb2c5044cb43704e1981dcdbf3e124fced436222b5a5a9d57ec8082e2a4139bfb5be177aefc11809c6865a2b085f46babeeb541daa2 WHIRLPOOL b0d73af7a80a09635ecab2984bf473d27056a8e6cb562708fa5f19428ad07f8c69362d99ea21e7a2a8522d474d65d41358764682fa3e6e481b10baf465525875
+DIST irqbalance-1.0.4.tar.bz2 286985 SHA256 15725edf4a6f20258620cbd05ebf02d0c25aadd5ffa4871ef8507c9215021c43 SHA512 f61d7cd0690a80cfa2ff249a75db675179d4a945bc784b3af8293200a642b6ac0e0564b8c7b8fc0a63363caf8ebab2a7b50b6699cb53587fafd5b50cf73c0f11 WHIRLPOOL ab1a7717cd1c08ce17ac831d75f934aa0d48653f8c194cf683694c498532a90086de18ee3cc0ee7ad09e4cce442173c94dd98e919b8f169e716eb6ead5f593c6
+DIST irqbalance-1.0.5.tar.gz 350213 SHA256 1123e75224b9c0b63ac85892e920bc4a9c76211278ea3d5d4bcbbde44815685c SHA512 333587c16221532be6a353d628b5f8cc557f7917fb423cfac0092f9a5000cc82b042d37b9c3160f5d37d931e8e50a313278e8e30f2dc65f7db60fdf95664bc06 WHIRLPOOL 7fd5e93c0549011c593dbcad9fd9fe94706ac78d4e394a098b0eb63f6de33225f2358aaf84863c662fb392463dfa97777587753df69c041033dee06f91844aa8
+DIST irqbalance-1.0.6.tar.gz 352325 SHA256 95ac79992e6de501f613c781b0fc8aa17a4aaf6a3d865bb6e15ac6a46c6ab1fd SHA512 be14f89c0f137a0cb9c572bc7fb2360941751e4676b147a9d4a44aeb6242577b7dfaa4aa4810ded05244da59fc6d24f22ab88740a8751685a3177b010259a6f0 WHIRLPOOL dcc51bec29eb78a0e9e777a7c5d254ff338390e44dfc4019edb2a1f1eb85f6eafd9bdd7fdc60903b1f94f70194cc1ab1d61cac68da429a009d1f26bee7d357ef
+DIST irqbalance-1.0.7.tar.gz 41209 SHA256 8c3916780d254b74fb1c7ec22876d63ac01f1b32776d9204a604b73c8f591d2a SHA512 388f982fe620d8df850e6e298a194a5ba1393f29f1b25897bfa79e34f3acb32e762b86e31154e7af614d5d84a38a61b85ff07c0dd2032e1eb6b0e30ea9010612 WHIRLPOOL fdbaa8817aae91bc1960115aa457e4dc92b36f62ba7680e9aac35459072d73f2e30015c616c86ce451ac6cd335406ac2423328232768c893e17e17537c3c951e
+DIST irqbalance-1.0.9.tar.gz 44661 SHA256 f1b8115948bb9f0bc36b9d7143ee8be751a294bc189d311408e753acc37169c3 SHA512 ef3ce9eeec11ec86291e2e3cd701e782ee1fb4ba256e2ea5ea0ea04b373f97ff2eae0a44919127c4dbd7fd805e9e3df3a5e62a3528e4d1c9bbab4db39186b5c5 WHIRLPOOL 7bed3d8dd868b4ad697b997143a59b9101815d0bfc08d1d594248c1fcfeaec22045fbe779605583a89aa7d2c8a54e079317bf8a6e4ef8135fc887e2d1518e706
diff --git a/sys-apps/irqbalance/files/irqbalance-0.56-build.patch b/sys-apps/irqbalance/files/irqbalance-0.56-build.patch
new file mode 100644
index 000000000000..b7202a4701f1
--- /dev/null
+++ b/sys-apps/irqbalance/files/irqbalance-0.56-build.patch
@@ -0,0 +1,16 @@
+http://code.google.com/p/irqbalance/issues/detail?id=8
+http://code.google.com/p/irqbalance/issues/detail?id=13
+
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -25,7 +25,9 @@
+
+ INCLUDES = -I${top_srcdir}
+ LIBS = $(CAPNG_LDADD) $(GLIB_LIBS)
+-AM_CFLAGS = -g -Os -W -Wall -Wshadow -Wformat -Wundef $(GLIB_CFLAGS) -D_GNU_SOURCE
++AM_CFLAGS = -W -Wall -Wshadow -Wformat -Wundef
++AM_CPPFLAGS = $(GLIB_CFLAGS) -D_GNU_SOURCE
++dist_man_MANS = irqbalance.1
+ noinst_HEADERS = bitmap.h constants.h cpumask.h irqbalance.h non-atomic.h \
+ types.h
+ sbin_PROGRAMS = irqbalance
diff --git a/sys-apps/irqbalance/files/irqbalance.1 b/sys-apps/irqbalance/files/irqbalance.1
new file mode 100644
index 000000000000..c26c709a01d0
--- /dev/null
+++ b/sys-apps/irqbalance/files/irqbalance.1
@@ -0,0 +1,64 @@
+.\"Generated by db2man.xsl. Don't modify this, modify the source.
+.de Sh \" Subsection
+.br
+.if t .Sp
+.ne 5
+.PP
+\fB\\$1\fR
+.PP
+..
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Ip \" List item
+.br
+.ie \\n(.$>=3 .ne \\$3
+.el .ne 3
+.IP "\\$1" \\$2
+..
+.TH "IRQBALANCE" 1 "Dec 2006" "Linux" "irqbalance"
+.SH NAME
+irqbalance \- distribute hardware interrupts across processors on a multiprocessor system
+.SH "SYNOPSIS"
+
+.nf
+\fBirqbalance\fR
+.fi
+
+.SH "DESCRIPTION"
+
+.PP
+The purpose of \fBirqbalance\fR is distribute hardware interrupts across processors on a multiprocessor system in order to increase performance\&.
+
+.SH "OPTIONS"
+
+.TP
+.B --oneshot
+Causes irqbalance to be run once, after which the daemon exits
+.TP
+
+.B --debug
+Causes irqbalance to run in the foreground and extra debug information to be printed
+
+.SH "ENVIRONMENT VARIABLES"
+.TP
+.B IRQBALANCE_ONESHOT
+Same as --oneshot
+
+.TP
+.B IRQBALANCE_DEBUG
+Same as --debug
+
+.TP
+.B IRQBALANCE_BANNED_CPUS
+Provides a mask of cpus which irqbalance should ignore and never assign interrupts to
+
+.TP
+.B IRQBALANCE_BANNED_INTERRUPTS
+A list of space delimited IRQ numbers that irqbalance should not touch
+
+.SH "Homepage"
+http://www.irqbalance.org
+
+
diff --git a/sys-apps/irqbalance/files/irqbalance.confd b/sys-apps/irqbalance/files/irqbalance.confd
new file mode 100644
index 000000000000..152dd7988652
--- /dev/null
+++ b/sys-apps/irqbalance/files/irqbalance.confd
@@ -0,0 +1,15 @@
+# /etc/conf.d/irqbalance: config file for /etc/init.d/irqbalance
+# These are envvars used by irqbalance itself. For more info,
+# please see the irqbalance manpage.
+
+# Run irqbalance once and then exit
+#IRQBALANCE_ONESHOT="0"
+
+# Include debug messages in output
+#IRQBALANCE_DEBUG="0"
+
+# List of cpus to not include in balancing
+#IRQBALANCE_BANNED_CPUS=""
+
+# List of interrupts to not include in balancing
+#IRQBALANCE_BANNED_INTERRUPTS=""
diff --git a/sys-apps/irqbalance/files/irqbalance.confd-1 b/sys-apps/irqbalance/files/irqbalance.confd-1
new file mode 100644
index 000000000000..2761cfcd3596
--- /dev/null
+++ b/sys-apps/irqbalance/files/irqbalance.confd-1
@@ -0,0 +1,19 @@
+# /etc/conf.d/irqbalance: config file for /etc/init.d/irqbalance
+
+# Additional options to pass to irqbalance itself.
+IRQBALANCE_OPTS=""
+
+# These are envvars used by irqbalance itself, so make sure the "export"
+# is retained. For more info, please see the irqbalance manpage.
+
+# Run irqbalance once and then exit
+#export IRQBALANCE_ONESHOT="0"
+
+# Include debug messages in output
+#export IRQBALANCE_DEBUG="0"
+
+# List of cpus to not include in balancing
+#export IRQBALANCE_BANNED_CPUS=""
+
+# List of interrupts to not include in balancing
+#export IRQBALANCE_BANNED_INTERRUPTS=""
diff --git a/sys-apps/irqbalance/files/irqbalance.init-0.55-r2 b/sys-apps/irqbalance/files/irqbalance.init-0.55-r2
new file mode 100644
index 000000000000..476ba7c755ab
--- /dev/null
+++ b/sys-apps/irqbalance/files/irqbalance.init-0.55-r2
@@ -0,0 +1,21 @@
+#!/sbin/runscript
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License, v2 or later
+# $Id$
+
+depend() {
+ need localmount
+ after bootmisc
+}
+
+start() {
+ ebegin "Starting irqbalance"
+ start-stop-daemon --start --exec /sbin/irqbalance
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping irqbalance"
+ start-stop-daemon --stop --exec /sbin/irqbalance
+ eend $?
+}
diff --git a/sys-apps/irqbalance/files/irqbalance.init.2 b/sys-apps/irqbalance/files/irqbalance.init.2
new file mode 100644
index 000000000000..909800a9b3d9
--- /dev/null
+++ b/sys-apps/irqbalance/files/irqbalance.init.2
@@ -0,0 +1,12 @@
+#!/sbin/runscript
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License, v2 or later
+# $Id$
+
+depend() {
+ need localmount
+ after bootmisc
+}
+
+command="/usr/sbin/irqbalance"
+command_args="${IRQBALANCE_OPTS}"
diff --git a/sys-apps/irqbalance/files/irqbalance.init.3 b/sys-apps/irqbalance/files/irqbalance.init.3
new file mode 100644
index 000000000000..84cdb83af267
--- /dev/null
+++ b/sys-apps/irqbalance/files/irqbalance.init.3
@@ -0,0 +1,28 @@
+#!/sbin/runscript
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License, v2 or later
+# $Id$
+
+depend() {
+ need localmount
+ after bootmisc
+}
+
+command="/usr/sbin/irqbalance"
+command_args="${IRQBALANCE_OPTS}"
+
+check_sysfs() {
+ if grep -q MSI /proc/interrupts 2>/dev/null && \
+ test -z "$(find /sys/devices -type d -name msi_irqs 2>/dev/null)"; then
+ eerror "MSI interrupts found in /proc/interrupts but none found in sysfs."
+ eerror "You need to update your kernel."
+ return 1
+ fi
+}
+
+start() {
+ check_sysfs || return 1
+ ebegin "Starting irqbalance"
+ start-stop-daemon --exec ${command} --start -- ${IRQBALANCE_OPTS}
+ eend $?
+}
diff --git a/sys-apps/irqbalance/files/irqbalance.service b/sys-apps/irqbalance/files/irqbalance.service
new file mode 100644
index 000000000000..b7b589f2294c
--- /dev/null
+++ b/sys-apps/irqbalance/files/irqbalance.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=CPU Interrupt Balancer
+
+[Service]
+ExecStart=/usr/sbin/irqbalance --debug
+# --debug implies a lot of cruft
+# but it's the only way to get foregrounding
+StandardOutput=null
+
+[Install]
+WantedBy=multi-user.target
diff --git a/sys-apps/irqbalance/irqbalance-0.56.ebuild b/sys-apps/irqbalance/irqbalance-0.56.ebuild
new file mode 100644
index 000000000000..68aaa82855b9
--- /dev/null
+++ b/sys-apps/irqbalance/irqbalance-0.56.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+
+inherit eutils autotools
+
+DESCRIPTION="Distribute hardware interrupts across processors on a multiprocessor system"
+HOMEPAGE="http://www.irqbalance.org/"
+SRC_URI="https://github.com/Irqbalance/irqbalancefiles/${P}.tbz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE="caps"
+
+RDEPEND="dev-libs/glib:2
+ caps? ( sys-libs/libcap-ng )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-build.patch
+ mv cap-ng.m4 acinclude.m4 || die
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --sbindir=/sbin \
+ $(use_with caps libcap-ng)
+}
+
+src_install() {
+ emake install DESTDIR="${D}" || die
+ newinitd "${FILESDIR}"/irqbalance.init-0.55-r2 irqbalance || die
+ newconfd "${FILESDIR}"/irqbalance.confd irqbalance
+}
diff --git a/sys-apps/irqbalance/irqbalance-1.0.4.ebuild b/sys-apps/irqbalance/irqbalance-1.0.4.ebuild
new file mode 100644
index 000000000000..5671214309e9
--- /dev/null
+++ b/sys-apps/irqbalance/irqbalance-1.0.4.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit systemd
+
+DESCRIPTION="Distribute hardware interrupts across processors on a multiprocessor system"
+HOMEPAGE="https://github.com/Irqbalance/irqbalance"
+SRC_URI="https://github.com/Irqbalance/irqbalancefiles/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE="caps numa"
+
+RDEPEND="dev-libs/glib:2
+ caps? ( sys-libs/libcap-ng )
+ numa? ( sys-process/numactl )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_configure() {
+ econf \
+ $(use_with caps libcap-ng) \
+ $(use_enable numa)
+}
+
+src_install() {
+ default
+ newinitd "${FILESDIR}"/irqbalance.init.2 irqbalance
+ newconfd "${FILESDIR}"/irqbalance.confd-1 irqbalance
+ systemd_dounit "${FILESDIR}"/irqbalance.service
+}
diff --git a/sys-apps/irqbalance/irqbalance-1.0.5-r1.ebuild b/sys-apps/irqbalance/irqbalance-1.0.5-r1.ebuild
new file mode 100644
index 000000000000..02afb7473881
--- /dev/null
+++ b/sys-apps/irqbalance/irqbalance-1.0.5-r1.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit systemd linux-info
+
+DESCRIPTION="Distribute hardware interrupts across processors on a multiprocessor system"
+HOMEPAGE="https://github.com/Irqbalance/irqbalance"
+SRC_URI="https://github.com/Irqbalance/irqbalancefiles/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE="caps +numa"
+
+RDEPEND="dev-libs/glib:2
+ caps? ( sys-libs/libcap-ng )
+ numa? ( sys-process/numactl )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+pkg_setup() {
+ CONFIG_CHECK="~PCI_MSI"
+ linux-info_pkg_setup
+}
+
+src_configure() {
+ econf \
+ $(use_with caps libcap-ng) \
+ $(use_enable numa)
+}
+
+src_install() {
+ default
+ newinitd "${FILESDIR}"/irqbalance.init.3 irqbalance
+ newconfd "${FILESDIR}"/irqbalance.confd-1 irqbalance
+ systemd_dounit "${FILESDIR}"/irqbalance.service
+}
diff --git a/sys-apps/irqbalance/irqbalance-1.0.6.ebuild b/sys-apps/irqbalance/irqbalance-1.0.6.ebuild
new file mode 100644
index 000000000000..02afb7473881
--- /dev/null
+++ b/sys-apps/irqbalance/irqbalance-1.0.6.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit systemd linux-info
+
+DESCRIPTION="Distribute hardware interrupts across processors on a multiprocessor system"
+HOMEPAGE="https://github.com/Irqbalance/irqbalance"
+SRC_URI="https://github.com/Irqbalance/irqbalancefiles/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE="caps +numa"
+
+RDEPEND="dev-libs/glib:2
+ caps? ( sys-libs/libcap-ng )
+ numa? ( sys-process/numactl )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+pkg_setup() {
+ CONFIG_CHECK="~PCI_MSI"
+ linux-info_pkg_setup
+}
+
+src_configure() {
+ econf \
+ $(use_with caps libcap-ng) \
+ $(use_enable numa)
+}
+
+src_install() {
+ default
+ newinitd "${FILESDIR}"/irqbalance.init.3 irqbalance
+ newconfd "${FILESDIR}"/irqbalance.confd-1 irqbalance
+ systemd_dounit "${FILESDIR}"/irqbalance.service
+}
diff --git a/sys-apps/irqbalance/irqbalance-1.0.7-r1.ebuild b/sys-apps/irqbalance/irqbalance-1.0.7-r1.ebuild
new file mode 100644
index 000000000000..5efa212aaf3b
--- /dev/null
+++ b/sys-apps/irqbalance/irqbalance-1.0.7-r1.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+AUTOTOOLS_AUTORECONF=true
+
+inherit autotools-utils systemd linux-info
+
+DESCRIPTION="Distribute hardware interrupts across processors on a multiprocessor system"
+HOMEPAGE="https://github.com/Irqbalance/irqbalance"
+SRC_URI="https://github.com/Irqbalance/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="caps +numa selinux"
+
+CDEPEND="dev-libs/glib:2
+ caps? ( sys-libs/libcap-ng )
+ numa? ( sys-process/numactl )
+"
+DEPEND="${CDEPEND}
+ virtual/pkgconfig
+"
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-irqbalance )
+"
+
+pkg_setup() {
+ CONFIG_CHECK="~PCI_MSI"
+ linux-info_pkg_setup
+}
+
+src_configure() {
+ local myeconfargs=(
+ $(use_with caps libcap-ng)
+ $(use_enable numa)
+ )
+ autotools-utils_src_configure
+}
+
+src_install() {
+ autotools-utils_src_install
+ newinitd "${FILESDIR}"/irqbalance.init.3 irqbalance
+ newconfd "${FILESDIR}"/irqbalance.confd-1 irqbalance
+ systemd_dounit "${FILESDIR}"/irqbalance.service
+}
diff --git a/sys-apps/irqbalance/irqbalance-1.0.7.ebuild b/sys-apps/irqbalance/irqbalance-1.0.7.ebuild
new file mode 100644
index 000000000000..f815943eb6aa
--- /dev/null
+++ b/sys-apps/irqbalance/irqbalance-1.0.7.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+AUTOTOOLS_AUTORECONF=true
+
+inherit autotools-utils systemd linux-info
+
+DESCRIPTION="Distribute hardware interrupts across processors on a multiprocessor system"
+HOMEPAGE="https://github.com/Irqbalance/irqbalance"
+SRC_URI="https://github.com/Irqbalance/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="caps +numa"
+
+RDEPEND="dev-libs/glib:2
+ caps? ( sys-libs/libcap-ng )
+ numa? ( sys-process/numactl )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+pkg_setup() {
+ CONFIG_CHECK="~PCI_MSI"
+ linux-info_pkg_setup
+}
+
+src_configure() {
+ local myeconfargs=(
+ $(use_with caps libcap-ng)
+ $(use_enable numa)
+ )
+ autotools-utils_src_configure
+}
+
+src_install() {
+ autotools-utils_src_install
+ newinitd "${FILESDIR}"/irqbalance.init.3 irqbalance
+ newconfd "${FILESDIR}"/irqbalance.confd-1 irqbalance
+ systemd_dounit "${FILESDIR}"/irqbalance.service
+}
diff --git a/sys-apps/irqbalance/irqbalance-1.0.9.ebuild b/sys-apps/irqbalance/irqbalance-1.0.9.ebuild
new file mode 100644
index 000000000000..148cef01811b
--- /dev/null
+++ b/sys-apps/irqbalance/irqbalance-1.0.9.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+AUTOTOOLS_AUTORECONF=true
+
+inherit autotools-utils systemd linux-info
+
+DESCRIPTION="Distribute hardware interrupts across processors on a multiprocessor system"
+HOMEPAGE="https://github.com/Irqbalance/irqbalance"
+SRC_URI="https://github.com/Irqbalance/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="caps +numa selinux"
+
+CDEPEND="dev-libs/glib:2
+ caps? ( sys-libs/libcap-ng )
+ numa? ( sys-process/numactl )
+"
+DEPEND="${CDEPEND}
+ virtual/pkgconfig
+"
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-irqbalance )
+"
+
+pkg_setup() {
+ CONFIG_CHECK="~PCI_MSI"
+ linux-info_pkg_setup
+}
+
+src_configure() {
+ local myeconfargs=(
+ $(use_with caps libcap-ng)
+ $(use_enable numa)
+ )
+ autotools-utils_src_configure
+}
+
+src_install() {
+ autotools-utils_src_install
+ newinitd "${FILESDIR}"/irqbalance.init.3 irqbalance
+ newconfd "${FILESDIR}"/irqbalance.confd-1 irqbalance
+ systemd_dounit "${FILESDIR}"/irqbalance.service
+}
diff --git a/sys-apps/irqbalance/metadata.xml b/sys-apps/irqbalance/metadata.xml
new file mode 100644
index 000000000000..9a4bd53c8a4d
--- /dev/null
+++ b/sys-apps/irqbalance/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>base-system</herd>
+ <use>
+ <flag name="numa">Support balancing IRQs across NUMA nodes</flag>
+ </use>
+ <upstream>
+ <remote-id type="google-code">irqbalance</remote-id>
+ <remote-id type="github">Irqbalance/irqbalance</remote-id>
+ </upstream>
+</pkgmetadata>