2 # Copyright (C) 2014 Alvaro Fernandez Rojas <noltari@gmail.com>
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 include $(TOPDIR
)/rules.mk
13 PKG_RELEASE
=$(PKG_SOURCE_VERSION
)
16 PKG_SOURCE_URL
:=git
://github.com
/mcproxy
/mcproxy.git
17 PKG_SOURCE_SUBDIR
:=$(PKG_NAME
)-$(PKG_VERSION
)
18 PKG_SOURCE_VERSION
:=df2d117dd67a7948f86d7effc5b9ea8f372466d8
19 PKG_SOURCE
:=$(PKG_NAME
)-$(PKG_VERSION
)-$(PKG_SOURCE_VERSION
).
tar.gz
21 include $(INCLUDE_DIR
)/package.mk
23 define Package
/mcproxy
26 SUBMENU
:=Routing and Redirection
27 TITLE
:=Multicast Proxy for IGMP
/MLD
28 URL
:=http
://mcproxy.realmv6.org
/
29 DEPENDS
:=+libpthread
+libstdcpp @
(!GCC_VERSION_4_4
&&!GCC_VERSION_4_6
)
32 define Package
/mcproxy
/description
33 mcproxy is a free
& open source implementation of the IGMP
/MLD proxy
34 function
(see RFC4605
) for Linux systems. It operates on the kernel
35 tables for multicast routing and allows for multiple instantiations
,
36 as well
as dynamically changing downstream interfaces.
38 The current design was motivated by research and IETF standardization
39 activities in the MULTIMOB group
(see RFC6224 and
40 draft-ietf-multimob-pmipv6-source
) and shall serve
as a
test and
41 experimentation tool for the research community.
44 define Build
/Configure
45 $(CP
) .
/src
/Makefile
$(PKG_BUILD_DIR
)/mcproxy
/
48 TARGET_CXXFLAGS
+= -pipe
-std
=c
++11 -O2
-Wall
-W
-fPIE
49 TARGET_LFLAGS
+= -Wl
,-O1
51 TARGET_LIBS
+= -lpthread
54 $(MAKE
) -C
$(PKG_BUILD_DIR
)/mcproxy \
56 CFLAGS
="$(TARGET_CFLAGS)" \
57 CXXFLAGS
="$(TARGET_CXXFLAGS)" \
58 LFLAGS
="$(TARGET_LFLAGS)" \
59 INCPATH
="$(TARGET_INCPATH)" \
63 define Package
/mcproxy
/install
64 $(INSTALL_DIR
) $(1)/etc
$(1)/etc
/init.d
$(1)/usr
/sbin
65 $(INSTALL_CONF
) .
/files
/mcproxy.conf
$(1)/etc
/mcproxy.conf
66 $(INSTALL_BIN
) .
/files
/mcproxy.init
$(1)/etc
/init.d
/mcproxy
67 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/mcproxy
/mcproxy
$(1)/usr
/sbin
70 $(eval
$(call BuildPackage
,mcproxy
))