--- /dev/null
+#!/bin/sh
+
+
+irqbalance=$(which irqbalance || type -p irqbalance)
+if [ -z ${irqbalance} ]; then
+ echo "irqbalance not found."
+ exit 1
+fi
+
+case $1 in
+ start)
+ ${irqbalance}
+ ;;
+ stop)
+ trap "" INT
+ kill -INT $(pidof irqbalance)
+ ;;
+ restart)
+ $0 stop
+ $0 start
+ ;;
+ *)
+ echo "[$BASENAME] Usage: $0 {start|restart|stop}"
+ ;;
+esac
$(REMOVE)/vsftpd-$(VSFTPD_VER)
$(TOUCH)
+#
+# irqbalance
+#
+$(D)/irqbalance: $(ARCHIVE)/irqbalance-$(IRQBALANCE_VER).tar.gz | $(TARGETPREFIX)
+ $(REMOVE)/irqbalance-$(IRQBALANCE_VER)
+ $(START_BUILD)
+ $(UNTAR)/irqbalance-$(IRQBALANCE_VER).tar.gz
+ pushd $(BUILD_TMP)/irqbalance-$(IRQBALANCE_VER) && \
+ autoreconf -fi && \
+ $(CONFIGURE) \
+ --prefix= \
+ --mandir=/.remove \
+ --without-irqbalance-ui; \
+ $(MAKE) && \
+ $(MAKE) install DESTDIR=$(TARGETPREFIX)
+ install -m 755 $(PATCHES)/irqbalance/irqbalance.init $(TARGETPREFIX)/etc/init.d/irqbalance
+ pushd $(TARGETPREFIX)/etc/init.d
+ ln -sf irqbalance $(TARGETPREFIX)/etc/init.d/S25irqbalance
+ ln -sf irqbalance $(TARGETPREFIX)/etc/init.d/K25irqbalance
+ $(REMOVE)/irqbalance-$(IRQBALANCE_VER)
+ $(TOUCH)
+
+#
+# minidlna
+#
$(D)/minidlna: $(D)/zlib $(D)/sqlite $(D)/libexif $(D)/libjpeg $(D)/libid3tag $(D)/libogg $(D)/libvorbis $(D)/flac $(D)/ffmpeg $(ARCHIVE)/minidlna-$(MINIDLNA_VER).tar.gz | $(TARGETPREFIX)
$(START_BUILD)
$(UNTAR)/minidlna-$(MINIDLNA_VER).tar.gz
pushd $(BUILD_TMP)/udpxy-$(UDPXY_VER); \
$(call apply_patches, $(addprefix udpxy/, $(UDPXY_PATCH))); \
pushd $(BUILD_TMP)/udpxy-$(UDPXY_VER)/chipmunk && \
- $(MAKE) NO_UDPXREC=yes PREFIX= CC=$(TARGET)-gcc CFLAGS=-Wno-error install DESTDIR=$(TARGETPREFIX);
+ $(MAKE) \
+ MANPAGE_DIR=$(BUILD_TMP)/.remove \
+ NO_UDPXREC=yes \
+ PREFIX= \
+ CC=$(TARGET)-gcc \
+ CFLAGS=-Wno-error install DESTDIR=$(TARGETPREFIX);
install -m 755 $(PATCHES)/udpxy/udpxy.init $(TARGETPREFIX)/etc/init.d/udpxy
pushd $(TARGETPREFIX)/etc/init.d
ln -sf udpxy $(TARGETPREFIX)/etc/init.d/S75udpxy
$(ARCHIVE)/inadyn-mt.v.$(INADYN_VER).tar.gz:
$(WGET) https://sourceforge.net/projects/inadyn-mt/files/inadyn-mt/inadyn-mt.v.$(INADYN_VER)/$(notdir $@)
+$(ARCHIVE)/irqbalance-$(IRQBALANCE_VER).tar.gz:
+ $(WGET) https://github.com/Irqbalance/irqbalance/archive/v$(IRQBALANCE_VER).tar.gz -O $(@)
+
$(ARCHIVE)/flac-$(FLAC_VER).tar.xz:
$(WGET) https://ftp.osuosl.org/pub/xiph/releases/flac/flac-$(FLAC_VER).tar.xz
HOSTCCFLAGS="$(TARGET_CFLAGS) -DHAVE_CONFIG_H -I../ncurses -DNDEBUG -D_GNU_SOURCE -I../include" && \
$(MAKE) install.libs DESTDIR=$(TARGETPREFIX)
rm -rf $(HOSTPREFIX)/bin/ncurses*
- rm -rf $(TARGETLIB)/libform* $(TARGETLIB)/libmenu* $(TARGETLIB)/libpanel*
- rm -rf $(PKG_CONFIG_PATH)/form.pc $(PKG_CONFIG_PATH)/menu.pc $(PKG_CONFIG_PATH)/panel.pc
+ rm -rf $(addprefix $(TARGETLIB)/,libform* libmenu* libpanel*)
+ rm -rf $(addprefix $(PKG_CONFIG_PATH)/,form.pc menu.pc panel.pc)
mv $(TARGETPREFIX)/bin/ncurses6-config $(HOSTPREFIX)/bin
$(REWRITE_PKGCONF) $(HOSTPREFIX)/bin/ncurses6-config
$(REWRITE_PKGCONF) $(PKG_CONFIG_PATH)/ncurses.pc
N_CONFIG_OPTS += --enable-pip
endif
ifeq ($(BOXSERIES), $(filter $(BOXSERIES), h7 hd51 bre2ze4k))
+ NEUTRINO_DEPS += $(D)/irqbalance
N_CONFIG_OPTS += #--enable-dynamicdemux
endif
ifeq ($(PLATFORM), $(filter $(PLATFORM), apollo kronos))
# inadyn-mt - dynamic DNS client, Multi-platform inadyn, inadyn-advanced DDNS client fork.
INADYN_VER=02.28.10
+# Irqbalance is a daemon to help balance the cpu load generated by interrupts across all of a systems cpus.
+# Irqbalance identifies the highest volume interrupt sources, and isolates each of them to a single unique cpu,
+# so that load is spread as much as possible over an entire processor set, while minimizing cache miss rates for irq handlers.
+IRQBALANCE_VER = 1.9.0
+
# libjpeg-turbo; a derivative of libjpeg for x86 and x86-64 processors which uses SIMD instructions (MMX, SSE2, etc.) to accelerate baseline JPEG compression and decompression
JPEG_TURBO2_VER = 2.1.2