Merge pull request #268 from dedeckeh/pr_nat46_upstep
[lede-routing/.git] / mrd6 / Makefile
1 #
2 # Copyright (C) 2006-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
8 include $(TOPDIR)/rules.mk
9
10 PKG_NAME:=mrd6
11 PKG_SOURCE_VERSION:=c805eb33255dbc0b6647d463c6c67d1c9d3105a0
12 PKG_VERSION:=2013-11-30-$(PKG_SOURCE_VERSION)
13 PKG_RELEASE:=1
14
15 PKG_SOURCE_PROTO:=git
16 PKG_SOURCE_URL:=git://github.com/hugosantos/mrd6.git
17 PKG_MAINTAINER:=Steven Barth <cyrus@openwrt.org>
18 PKG_LICENSE:=GPL-2.0+
19
20 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
21 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
22
23 PKG_BUILD_PARALLEL:=1
24 PKG_INSTALL:=1
25
26 include $(INCLUDE_DIR)/package.mk
27
28 define Package/mrd6
29   SECTION:=net
30   CATEGORY:=Network
31   TITLE:=IPv6 multicast routing daemon
32   URL:=http://fivebits.net/proj/mrd6
33   DEPENDS:=@IPV6 +libstdcpp
34 endef
35
36 define Package/mrd6/description
37  Multicast is becoming a major component in next generation networks, used 
38  in several scenarios, from video broadcasting to multimedia conferencing. 
39  In order to be implemented, new technology needs supporting hardware and 
40  software across a set of devices and systems. MRD6 is an implementation of 
41  a modular IPv6 Multicast Routing Framework for the Linux operating system 
42  and provides MLDv2 (as well as MLDv1), PIM-SM and MBGP support.
43 endef
44
45 MRD6_MAKEFLAGS:= \
46         $(TARGET_CONFIGURE_OPTS) \
47         OPTIMIZE=yes \
48         SPACE_OPTIMIZE=yes \
49         FULL_STATIC=no \
50         CFLAGS="$(TARGET_CFLAGS) $(TARGET_CPPFLAGS) -DNO_INET6_OPTION -fno-builtin -fno-rtti" \
51         LDFLAGS="$(TARGET_LDFLAGS) -ldl -lm" \
52         MODULE_CXX="\$$$$(CC) -shared \$$$$(CXXFLAGS) \$$$$(LDFLAGS)" \
53         DESTDIR="$(PKG_INSTALL_DIR)" \
54         PREFIX="/usr"
55
56 define Build/Compile
57         +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR)/src $(MRD6_MAKEFLAGS) all
58 endef
59
60 define Build/Install
61         $(MAKE) -C $(PKG_BUILD_DIR)/src $(MRD6_MAKEFLAGS) install
62 endef
63
64 define Package/mrd6/conffiles
65 /etc/mrd6.conf
66 endef
67
68 define Package/mrd6/install
69         $(INSTALL_DIR) $(1)/etc/init.d
70         $(INSTALL_CONF) ./files/mrd6.conf $(1)/etc
71         $(INSTALL_BIN) ./files/mrd6.init $(1)/etc/init.d/mrd6
72         $(INSTALL_DIR) $(1)/usr/sbin
73         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/mrd $(1)/usr/sbin/mrd6
74         $(INSTALL_DIR) $(1)/usr/bin
75         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/mrd6sh $(1)/usr/bin/mrd6sh
76         $(INSTALL_DIR) $(1)/usr/lib/mrd6
77         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/mrd6/bgp.so $(1)/usr/lib/mrd6/bgp.so
78 endef
79
80 $(eval $(call BuildPackage,mrd6))