F: board/pine64/rock64
F: configs/rock64_defconfig
F: configs/socrates_cyclone5_defconfig
+F: package/netifrc/
F: package/openrc/
F: package/skeleton-init-openrc/
source "package/mender-grubenv/Config.in"
source "package/monit/Config.in"
source "package/ncdu/Config.in"
+ source "package/netifrc/Config.in"
source "package/numactl/Config.in"
source "package/nut/Config.in"
source "package/openrc/Config.in"
--- /dev/null
+config BR2_PACKAGE_NETIFRC
+ bool "netifrc"
+ depends on BR2_PACKAGE_OPENRC
+ help
+ netifrc is a collection of modules created to configure and
+ manage network interfaces via individual, per-interface
+ scripts.
+
+ https://wiki.gentoo.org/wiki/Netifrc
+
+comment "netifrc needs openrc as init system"
+ depends on !BR2_PACKAGE_OPENRC
--- /dev/null
+# Calculated manually
+sha256 004907e0c3db2d106d6a51d604d79f971f1013fa7642054ad7efe5076e52f7b3 netifrc-0.6.1.tar.gz
+sha256 da376c9e2244f2a7220767ea4dd88cf423ff5b548e7c2f96b0f3b9dac727748a LICENSE
--- /dev/null
+################################################################################
+#
+# netifrc
+#
+################################################################################
+
+NETIFRC_VERSION = 0.6.1
+NETIFRC_SITE = $(call github,gentoo,netifrc,$(NETIFRC_VERSION))
+NETIFRC_LICENSE = BSD-2-Clause
+NETIFRC_LICENSE_FILES = LICENSE
+
+NETIFRC_DEPENDENCIES = openrc
+
+# set LIBNAME so netifrc puts files in proper directories and sets proper
+# paths in installed files. Since in buildroot /lib64 and /lib32 always
+# points to /lib, it's safe to hardcode it to "lib"
+NETIFRC_MAKE_OPTS = \
+ LIBNAME=lib \
+ UDEVDIR=/lib/udev \
+ LIBEXECDIR=/usr/libexec/netifrc
+
+define NETIFRC_BUILD_CMDS
+ $(MAKE) $(NETIFRC_MAKE_OPTS) -C $(@D)
+endef
+
+ifeq ($(BR2_PACKAGE_HAS_UDEV),)
+define NETIFRC_REMOVE_UDEV
+ $(RM) $(TARGET_DIR)/lib/udev/net.sh
+ $(RM) $(TARGET_DIR)/lib/udev/rules.d/90-network.rules
+ rmdir --ignore-fail-on-non-empty $(TARGET_DIR)/lib/udev/rules.d
+ rmdir --ignore-fail-on-non-empty $(TARGET_DIR)/lib/udev
+endef
+endif # BR2_PACKAGE_HAS_UDEV
+
+define NETIFRC_NET_CFG
+ config_lo="127.0.0.1/8"
+endef
+
+define NETIFRC_INSTALL_TARGET_CMDS
+ $(MAKE) $(NETIFRC_MAKE_OPTS) DESTDIR=$(TARGET_DIR) -C $(@D) install
+ $(NETIFRC_REMOVE_UDEV)
+ $(call PRINTF,$(NETIFRC_NET_CFG)) > $(TARGET_DIR)/etc/conf.d/net
+ ln -sf /etc/init.d/net.lo $(TARGET_DIR)/etc/runlevels/default/net.lo
+endef
+
+$(eval $(generic-package))
$(MAKE) $(OPENRC_MAKE_OPTS) DESTDIR=$(TARGET_DIR) -C $(@D) install
endef
+ifeq ($(BR2_PACKAGE_NETIFRC),y)
+# netifrc replaces network, staticroute and loopback services which are
+# installed by openrc
+define OPENRC_NO_NET
+ $(RM) $(TARGET_DIR)/etc/runlevels/boot/{network,staticroute,loopback}
+ $(RM) $(TARGET_DIR)/etc/init.d/{network,staticroute,loopback}
+ $(RM) $(TARGET_DIR)/etc/conf.d/{network,staticroute,loopback}
+endef
+OPENRC_POST_TARGET_INSTALL_HOOKS += OPENRC_NO_NET
+endif
+
define OPENRC_REMOVE_UNNEEDED
$(RM) -r $(TARGET_DIR)/usr/share/openrc
endef