ifupdown-scripts.mk 1.8 KB

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