ifupdown-scripts.mk 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. ################################################################################
  2. #
  3. # ifupdown-scripts
  4. #
  5. ################################################################################
  6. define IFUPDOWN_SCRIPTS_PREAMBLE
  7. echo "# interface file auto-generated by buildroot" \
  8. > $(TARGET_DIR)/etc/network/interfaces
  9. endef
  10. define IFUPDOWN_SCRIPTS_LOCALHOST
  11. ( \
  12. echo ; \
  13. echo "auto lo"; \
  14. echo "iface lo inet loopback"; \
  15. ) >> $(TARGET_DIR)/etc/network/interfaces
  16. endef
  17. IFUPDOWN_SCRIPTS_DHCP_IFACE = $(call qstrip,$(BR2_SYSTEM_DHCP))
  18. ifneq ($(IFUPDOWN_SCRIPTS_DHCP_IFACE),)
  19. define IFUPDOWN_SCRIPTS_DHCP
  20. ( \
  21. echo ; \
  22. echo "auto $(IFUPDOWN_SCRIPTS_DHCP_IFACE)"; \
  23. echo "iface $(IFUPDOWN_SCRIPTS_DHCP_IFACE) inet dhcp"; \
  24. echo " pre-up /etc/network/nfs_check"; \
  25. echo " wait-delay 15"; \
  26. echo " hostname \$$(hostname)"; \
  27. ) >> $(TARGET_DIR)/etc/network/interfaces
  28. endef
  29. define IFUPDOWN_SCRIPTS_DHCP_OPENRC
  30. echo "ifup $(IFUPDOWN_SCRIPTS_DHCP_IFACE)" \
  31. > $(TARGET_DIR)/etc/ifup.$(IFUPDOWN_SCRIPTS_DHCP_IFACE)
  32. echo "ifdown $(IFUPDOWN_SCRIPTS_DHCP_IFACE)" \
  33. > $(TARGET_DIR)/etc/ifdown.$(IFUPDOWN_SCRIPTS_DHCP_IFACE)
  34. endef
  35. endif
  36. define IFUPDOWN_SCRIPTS_INSTALL_TARGET_CMDS
  37. $(INSTALL) -m 0755 -D $(IFUPDOWN_SCRIPTS_PKGDIR)/nfs_check \
  38. $(TARGET_DIR)/etc/network/nfs_check
  39. $(call SYSTEM_RSYNC,$(IFUPDOWN_SCRIPTS_PKGDIR)/network,$(TARGET_DIR)/etc/network)
  40. endef
  41. define IFUPDOWN_SCRIPTS_INSTALL_INIT_OPENRC
  42. $(IFUPDOWN_SCRIPTS_PREAMBLE)
  43. $(IFUPDOWN_SCRIPTS_DHCP)
  44. $(IFUPDOWN_SCRIPTS_DHCP_OPENRC)
  45. endef
  46. define IFUPDOWN_SCRIPTS_INSTALL_INIT_SYSV
  47. $(INSTALL) -D -m 0755 $(IFUPDOWN_SCRIPTS_PKGDIR)/S40network \
  48. $(TARGET_DIR)/etc/init.d/S40network
  49. $(IFUPDOWN_SCRIPTS_PREAMBLE)
  50. $(IFUPDOWN_SCRIPTS_LOCALHOST)
  51. $(IFUPDOWN_SCRIPTS_DHCP)
  52. endef
  53. # ifupdown-scripts can not be selected when systemd-networkd is
  54. # enabled, so if we are enabled with systemd, we must install our
  55. # own service file.
  56. define IFUPDOWN_SCRIPTS_INSTALL_INIT_SYSTEMD
  57. $(INSTALL) -D -m 644 $(IFUPDOWN_SCRIPTS_PKGDIR)/network.service \
  58. $(TARGET_DIR)/etc/systemd/system/network.service
  59. $(IFUPDOWN_SCRIPTS_PREAMBLE)
  60. $(IFUPDOWN_SCRIPTS_LOCALHOST)
  61. $(IFUPDOWN_SCRIPTS_DHCP)
  62. endef
  63. $(eval $(generic-package))