irqbalance: add package
The purpose of irqbalance is to distribute hardware interrupts across processors/cores on a multiprocessor/-core system in order to increase performance. This initial implementation of the package uses external glib2, which is a large dependency. Only the cmd-line tool is compiled and installed. Run-tested with ipq806x / R7800. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
This commit is contained in:
parent
ccf0595fc6
commit
c5913bd12d
2 changed files with 70 additions and 0 deletions
52
utils/irqbalance/Makefile
Normal file
52
utils/irqbalance/Makefile
Normal file
|
@ -0,0 +1,52 @@
|
||||||
|
# This is free software, licensed under the GNU General Public License v2.
|
||||||
|
# See /LICENSE for more information.
|
||||||
|
#
|
||||||
|
|
||||||
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
|
PKG_NAME:=irqbalance
|
||||||
|
PKG_VERSION:=1.2.0
|
||||||
|
PKG_RELEASE:=1
|
||||||
|
|
||||||
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
|
||||||
|
PKG_SOURCE_PROTO:=git
|
||||||
|
PKG_SOURCE_URL:=https://github.com/Irqbalance/irqbalance.git
|
||||||
|
PKG_SOURCE_VERSION:=0e0dd4cfe5464de2f81eaef504eab7183f1fb030
|
||||||
|
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
|
||||||
|
PKG_LICENSE:=GPLv2
|
||||||
|
|
||||||
|
PKG_MAINTAINER:=Hannu Nyman <hannu.nyman@iki.fi>
|
||||||
|
|
||||||
|
PKG_FIXUP:=autoreconf
|
||||||
|
PKG_REMOVE_FILES:=autogen.sh
|
||||||
|
|
||||||
|
PKG_BUILD_PARALLEL:=1
|
||||||
|
|
||||||
|
include $(INCLUDE_DIR)/package.mk
|
||||||
|
|
||||||
|
define Package/irqbalance
|
||||||
|
SECTION:=utils
|
||||||
|
CATEGORY:=Utilities
|
||||||
|
DEPENDS:=+glib2
|
||||||
|
TITLE:=IRQ usage balancing for multi-core systems
|
||||||
|
URL:=https://github.com/Irqbalance/irqbalance
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/irqbalance/description
|
||||||
|
The purpose of irqbalance is to distribute hardware interrupts across
|
||||||
|
processors/cores on a multiprocessor/multicore system in order to
|
||||||
|
increase performance.
|
||||||
|
endef
|
||||||
|
|
||||||
|
CONFIGURE_ARGS+= \
|
||||||
|
--disable-numa \
|
||||||
|
--with-libcap_ng=no \
|
||||||
|
--with-systemd=no \
|
||||||
|
--with-glib2=yes
|
||||||
|
|
||||||
|
define Package/irqbalance/install
|
||||||
|
$(INSTALL_DIR) $(1)/usr/sbin
|
||||||
|
$(INSTALL_BIN) $(PKG_BUILD_DIR)/irqbalance $(1)/usr/sbin/
|
||||||
|
endef
|
||||||
|
|
||||||
|
$(eval $(call BuildPackage,irqbalance))
|
18
utils/irqbalance/patches/100-disable-ui-compilation.patch
Normal file
18
utils/irqbalance/patches/100-disable-ui-compilation.patch
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
--- a/Makefile.am
|
||||||
|
+++ b/Makefile.am
|
||||||
|
@@ -29,14 +29,10 @@
|
||||||
|
AM_CPPFLAGS = -I${top_srcdir} -W -Wall -Wshadow -Wformat -Wundef -D_GNU_SOURCE
|
||||||
|
noinst_HEADERS = bitmap.h constants.h cpumask.h irqbalance.h non-atomic.h \
|
||||||
|
types.h $(UI_DIR)/helpers.h $(UI_DIR)/irqbalance-ui.h $(UI_DIR)/ui.h
|
||||||
|
-sbin_PROGRAMS = irqbalance irqbalance-ui
|
||||||
|
+sbin_PROGRAMS = irqbalance
|
||||||
|
irqbalance_SOURCES = activate.c bitmap.c classify.c cputree.c irqbalance.c \
|
||||||
|
irqlist.c numa.c placement.c procinterrupts.c
|
||||||
|
irqbalance_LDADD = $(LIBCAP_NG_LIBS) $(GLIB_LIBS)
|
||||||
|
-irqbalance_ui_SOURCES = $(UI_DIR)/helpers.c $(UI_DIR)/irqbalance-ui.c \
|
||||||
|
- $(UI_DIR)/ui.c
|
||||||
|
-irqbalance_ui_LDADD = $(GLIB_LIBS) $(CURSES_LIBS)
|
||||||
|
-dist_man_MANS = irqbalance.1
|
||||||
|
|
||||||
|
CONFIG_CLEAN_FILES = debug*.list config/*
|
||||||
|
clean-generic:
|
Loading…
Reference in a new issue