Ver código fonte

package/ifupdown-scripts: add openrc support

The "network" script allows configuring an interface by means of two
/etc/ifup.<if_name> and /etc/ifdown.<if_name> files with the commands
required to bring it up and down, respectively. So we can support the
BR2_SYSTEM_DHCP config if netifrc is not selected.

- Replace the dependency on !BR2_PACKAGE_OPENRC in Config.in by a
  dependency on !BR2_PACKAGE_NETIFRC.

- Add an IFUPDOWN_SCRIPTS_DHCP_OPENRC macro to create the ifup.<if_name>
  and ifdown.<if_name> files.

- Add an IFUPDOWN_SCRIPTS_INSTALL_INIT_OPENRC hook that includes the
  IFUPDOWN_SCRIPTS_{PREAMBLE,DHCP,DHCP_OPENRC} macros. LOCALHOST is not
  required, since "lo" is configured by the "loopback" script.

Signed-off-by: Carlos Santos <unixmania@gmail.com>
[yann.morin.1998@free.fr:
  - adapt after the preamble was spit to itw own patch
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Carlos Santos 5 anos atrás
pai
commit
57f3685bc1

+ 1 - 1
package/ifupdown-scripts/Config.in

@@ -1,7 +1,7 @@
 config BR2_PACKAGE_IFUPDOWN_SCRIPTS
 config BR2_PACKAGE_IFUPDOWN_SCRIPTS
 	bool "ifupdown scripts"
 	bool "ifupdown scripts"
 	default y if BR2_ROOTFS_SKELETON_DEFAULT
 	default y if BR2_ROOTFS_SKELETON_DEFAULT
-	depends on !BR2_PACKAGE_SYSTEMD_NETWORKD && !BR2_PACKAGE_OPENRC
+	depends on !BR2_PACKAGE_SYSTEMD_NETWORKD && !BR2_PACKAGE_NETIFRC
 	help
 	help
 	  Set of scripts used by ifupdown (either the standalone one,
 	  Set of scripts used by ifupdown (either the standalone one,
 	  or the busybox one) to bring network up, or tear it down.
 	  or the busybox one) to bring network up, or tear it down.

+ 12 - 0
package/ifupdown-scripts/ifupdown-scripts.mk

@@ -30,6 +30,12 @@ define IFUPDOWN_SCRIPTS_DHCP
 		echo "  hostname \$$(hostname)"; \
 		echo "  hostname \$$(hostname)"; \
 	) >> $(TARGET_DIR)/etc/network/interfaces
 	) >> $(TARGET_DIR)/etc/network/interfaces
 endef
 endef
+define IFUPDOWN_SCRIPTS_DHCP_OPENRC
+	echo "ifup $(IFUPDOWN_SCRIPTS_DHCP_IFACE)" \
+		> $(TARGET_DIR)/etc/ifup.$(IFUPDOWN_SCRIPTS_DHCP_IFACE)
+	echo "ifdown $(IFUPDOWN_SCRIPTS_DHCP_IFACE)" \
+		> $(TARGET_DIR)/etc/ifdown.$(IFUPDOWN_SCRIPTS_DHCP_IFACE)
+endef
 endif
 endif
 
 
 define IFUPDOWN_SCRIPTS_INSTALL_TARGET_CMDS
 define IFUPDOWN_SCRIPTS_INSTALL_TARGET_CMDS
@@ -38,6 +44,12 @@ define IFUPDOWN_SCRIPTS_INSTALL_TARGET_CMDS
 	$(call SYSTEM_RSYNC,$(IFUPDOWN_SCRIPTS_PKGDIR)/network,$(TARGET_DIR)/etc/network)
 	$(call SYSTEM_RSYNC,$(IFUPDOWN_SCRIPTS_PKGDIR)/network,$(TARGET_DIR)/etc/network)
 endef
 endef
 
 
+define IFUPDOWN_SCRIPTS_INSTALL_INIT_OPENRC
+	$(IFUPDOWN_SCRIPTS_PREAMBLE)
+	$(IFUPDOWN_SCRIPTS_DHCP)
+	$(IFUPDOWN_SCRIPTS_DHCP_OPENRC)
+endef
+
 define IFUPDOWN_SCRIPTS_INSTALL_INIT_SYSV
 define IFUPDOWN_SCRIPTS_INSTALL_INIT_SYSV
 	$(INSTALL) -D -m 0755 $(IFUPDOWN_SCRIPTS_PKGDIR)/S40network \
 	$(INSTALL) -D -m 0755 $(IFUPDOWN_SCRIPTS_PKGDIR)/S40network \
 		$(TARGET_DIR)/etc/init.d/S40network
 		$(TARGET_DIR)/etc/init.d/S40network