Makefile 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. #
  2. # Copyright (C) 2008-2011 OpenWrt.org
  3. #
  4. # This is free software, licensed under the GNU General Public License v2.
  5. # See /LICENSE for more information.
  6. #
  7. include $(TOPDIR)/rules.mk
  8. include $(INCLUDE_DIR)/kernel.mk
  9. PKG_NAME:=batmand
  10. PKG_SOURCE_PROTO:=git
  11. PKG_SOURCE_URL:=https://git.open-mesh.org/batmand.git
  12. PKG_REV:=b67a7087b51d7a5e90d27ac39116d1f57257c86e
  13. PKG_VERSION:=1440
  14. PKG_RELEASE:=0
  15. PKG_LICENSE:=GPL-2.0
  16. PKG_SOURCE_VERSION:=$(PKG_REV)
  17. PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
  18. PKG_SOURCE:=$(PKG_SOURCE_SUBDIR).tar.gz
  19. PKG_MIRROR_HASH:=ceb8e0e399f79b1b663594fcf9642e1efc40e696a7604daf709c77da9b6ec52f
  20. PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_SOURCE_SUBDIR)
  21. PKG_EXTRA_CFLAGS=-DDEBUG_MALLOC -DMEMORY_USAGE -DPROFILE_DATA -DREVISION_VERSION=\"\ rv$(PKG_REV)\" -D_GNU_SOURCE
  22. PKG_KMOD_BUILD_DIR:=$(PKG_BUILD_DIR)/linux/modules
  23. include $(INCLUDE_DIR)/package.mk
  24. define Package/batmand/Default
  25. URL:=https://www.open-mesh.org/
  26. MAINTAINER:=Corinna "Elektra" Aichele <onelektra@gmx.net>
  27. endef
  28. define Package/batmand
  29. $(call Package/batmand/Default)
  30. SECTION:=net
  31. CATEGORY:=Network
  32. SUBMENU:=Routing and Redirection
  33. DEPENDS:=+libpthread +kmod-tun
  34. TITLE:=B.A.T.M.A.N. layer 3 routing daemon
  35. endef
  36. define Package/batmand/description
  37. B.A.T.M.A.N. layer 3 routing daemon
  38. endef
  39. define KernelPackage/batgat
  40. $(call Package/batmand/Default)
  41. SUBMENU:=Network Support
  42. DEPENDS:=+batmand @BROKEN
  43. TITLE:=B.A.T.M.A.N. gateway module
  44. FILES:=$(PKG_KMOD_BUILD_DIR)/batgat.$(LINUX_KMOD_SUFFIX)
  45. AUTOLOAD:=$(call AutoLoad,50,batgat)
  46. endef
  47. define KernelPackage/batgat/description
  48. Kernel gateway module for B.A.T.M.A.N. for better tunnel performance
  49. endef
  50. MAKE_BATMAND_ARGS += \
  51. EXTRA_CFLAGS='$(TARGET_CFLAGS) $(PKG_EXTRA_CFLAGS)' \
  52. CCFLAGS="$(TARGET_CFLAGS)" \
  53. OFLAGS="$(TARGET_CFLAGS)" \
  54. REVISION="$(PKG_REV)" \
  55. CC="$(TARGET_CC)" \
  56. NODEBUG=1 \
  57. UNAME="Linux" \
  58. INSTALL_PREFIX="$(PKG_INSTALL_DIR)" \
  59. STRIP="/bin/true" \
  60. batmand install
  61. MAKE_BATGAT_ARGS += \
  62. CROSS_COMPILE="$(TARGET_CROSS)" \
  63. ARCH="$(LINUX_KARCH)" \
  64. PATH="$(TARGET_PATH)" \
  65. SUBDIRS="$(PKG_KMOD_BUILD_DIR)" \
  66. LINUX_VERSION="$(LINUX_VERSION)" \
  67. REVISION="$(PKG_REV)" modules
  68. define Build/Configure
  69. endef
  70. ifneq ($(DEVELOPER)$(CONFIG_PACKAGE_batmand),)
  71. BUILD_BATMAND := $(MAKE) -C $(PKG_BUILD_DIR) $(MAKE_BATMAND_ARGS)
  72. endif
  73. ifneq ($(DEVELOPER)$(CONFIG_PACKAGE_kmod-batgat),)
  74. BUILD_BATGAT := $(MAKE) -C "$(LINUX_DIR)" $(MAKE_BATGAT_ARGS)
  75. endif
  76. define Build/Compile
  77. $(BUILD_BATMAND)
  78. cp $(PKG_KMOD_BUILD_DIR)/Makefile.kbuild $(PKG_KMOD_BUILD_DIR)/Makefile
  79. $(BUILD_BATGAT)
  80. endef
  81. define Package/batmand/install
  82. $(INSTALL_DIR) $(1)/usr/sbin $(1)/etc/config $(1)/etc/init.d
  83. $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/batmand $(1)/usr/sbin/
  84. $(INSTALL_BIN) ./files/etc/init.d/batmand $(1)/etc/init.d
  85. $(INSTALL_DATA) ./files/etc/config/batmand $(1)/etc/config
  86. endef
  87. define Package/batmand/conffiles
  88. /etc/config/batmand
  89. endef
  90. $(eval $(call BuildPackage,batmand))
  91. $(eval $(call KernelPackage,batgat))