Makefile 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. #
  2. # Copyright (C) 2006-2008 OpenWrt.org
  3. #
  4. # This is free software, licensed under the GNU General Public License v2.
  5. # See /LICENSE for more information.
  6. #
  7. # $Id$
  8. include $(TOPDIR)/rules.mk
  9. include $(INCLUDE_DIR)/kernel.mk
  10. PKG_NAME:=aodv-uu
  11. PKG_VERSION:=0.9.3
  12. PKG_RELEASE:=1
  13. PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
  14. PKG_SOURCE_URL:=http://core.it.uu.se/core/files/
  15. PKG_MD5SUM:=05460543054449cb4b170252a7168c65
  16. include $(INCLUDE_DIR)/package.mk
  17. define Package/aodv-uu/Default
  18. TITLE:=Ad-hoc On-demand Distance Vector Routing
  19. DEPENDS:=@BROKEN
  20. URL:=http://core.it.uu.se/core/index.php/AODV-UU
  21. endef
  22. define Package/aodv-uu/Default/description
  23. AODV is the Ad-hoc On-demand Distance Vector routing protocol
  24. implementation created at Uppsala University.
  25. endef
  26. define Package/aodv-uu
  27. $(call Package/aodv-uu/Default)
  28. SECTION:=net
  29. CATEGORY:=Network
  30. TITLE+= (daemon)
  31. endef
  32. define Package/aodv-uu/description
  33. $(call Package/aodv-uu/Default/description)
  34. This package contains the AODV userland daemon.
  35. endef
  36. define KernelPackage/aodv-uu
  37. $(call Package/aodv-uu/Default)
  38. TITLE+= (kernel module)
  39. FILES:=$(PKG_BUILD_DIR)/lnx/kaodv.$(LINUX_KMOD_SUFFIX)
  40. SUBMENU:=Network Support
  41. AUTOLOAD:=$(call AutoLoad,80,$(shell cat ./files/aodv-uu.modules))
  42. endef
  43. define KernelPackage/aodv-uu/description
  44. $(call Package/aodv-uu/Default/description)
  45. This package contains the AODV kernel module.
  46. endef
  47. ifeq ($(CONFIG_LINUX_2_6),y)
  48. define Build/Compile/linux26
  49. $(MAKE) -C $(LINUX_DIR) \
  50. ARCH="$(LINUX_KARCH)" \
  51. CROSS_COMPILE="$(TARGET_CROSS)" \
  52. PATCHLEVEL="$(LINUX_VERSION)" \
  53. KERNDIR="$(LINUX_DIR)" \
  54. SUBDIRS="$(PKG_BUILD_DIR)/lnx" \
  55. modules
  56. endef
  57. else
  58. # We assume 2.4 builds are only for brcm-2.4 yet
  59. define Build/Compile/linux24-brcm
  60. $(call Build/Compile/Default,\
  61. KERNEL_DIR="$(LINUX_DIR)" \
  62. KCC="$(TARGET_CC)" \
  63. CFLAGS="$(TARGET_CFLAGS)" \
  64. kaodv-mips \
  65. )
  66. cp $(PKG_BUILD_DIR)/lnx/kaodv-mips.$(LINUX_KMOD_SUFFIX) $(PKG_BUILD_DIR)/lnx/kaodv.$(LINUX_KMOD_SUFFIX)
  67. endef
  68. endif
  69. define Build/Compile
  70. $(call Build/Compile/linux26)
  71. $(call Build/Compile/linux24-brcm)
  72. $(call Build/Compile/Default,\
  73. KERNEL_DIR="$(LINUX_DIR)" \
  74. KCC="$(TARGET_CC)" \
  75. CFLAGS="$(TARGET_CFLAGS)" \
  76. aodvd \
  77. )
  78. endef
  79. define Package/aodv-uu/install
  80. $(INSTALL_DIR) $(1)/usr/sbin
  81. $(INSTALL_BIN) $(PKG_BUILD_DIR)/aodvd $(1)/usr/sbin
  82. endef
  83. define Package/kmod-aodv-uu/install
  84. $(INSTALL_DIR) $(1)/etc/modules.d
  85. $(INSTALL_DATA) ./files/aodv-uu.modules $(1)/etc/modules.d/80-aodv-uu
  86. $(INSTALL_DIR) $(1)/lib/modules/$(LINUX_VERSION)
  87. $(CP) $(PKG_BUILD_DIR)/lnx/kaodv.$(LINUX_KMOD_SUFFIX) $(1)/lib/modules/$(LINUX_VERSION)/
  88. endef
  89. $(eval $(call BuildPackage,aodv-uu))
  90. $(eval $(call KernelPackage,aodv-uu))