Signed-off-by: Ladislav Michl <la...@linux-mips.org> --- Changes: -v2: address mol's comments
rules/smcroute.in | 39 +++++++++++++++++++++ rules/smcroute.make | 84 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 123 insertions(+) create mode 100644 rules/smcroute.in create mode 100644 rules/smcroute.make diff --git a/rules/smcroute.in b/rules/smcroute.in new file mode 100644 index 000000000..e9fa8f9d2 --- /dev/null +++ b/rules/smcroute.in @@ -0,0 +1,39 @@ +## SECTION=networking + +menuconfig SMCROUTE + tristate + prompt "smcroute " + select SYSTEMD if SMCROUTE_SYSTEMD_UNIT + select LIBCAP if SMCROUTE_LIBCAP + help + SMCRoute is a daemon and command line tool to manipulate + the multicast routing table in the UNIX kernel. + SMCRoute can be used as an alternative to dynamic multicast + routing daemons like mrouted or pimd when (only) static + multicast routes should be maintained and/or no proper + IGMP signalling exists. + +if SMCROUTE + +config SMCROUTE_CONFIG + bool + default y + prompt "install smcroute.conf" + +config SMCROUTE_SYSTEMD_UNIT + bool + default y + depends on INITMETHOD_SYSTEMD + prompt "install systemd unit files for smcroute" + +config SMCROUTE_CLIENT + bool + prompt "install smcroutectl" + help + Enable IPC API and install smcroutectl. + +config SMCROUTE_LIBCAP + bool + prompt "use libcap to manipulate capabilities" + +endif diff --git a/rules/smcroute.make b/rules/smcroute.make new file mode 100644 index 000000000..a3be8bd00 --- /dev/null +++ b/rules/smcroute.make @@ -0,0 +1,84 @@ +# -*-makefile-*- +# +# Copyright (C) 2018 by Ladislav Michl <la...@linux-mips.org> +# +# See CREDITS for details about who has contributed to this project. +# +# For further information about the PTXdist project and license conditions +# see the README file. +# + +# +# We provide this package +# +PACKAGES-$(PTXCONF_SMCROUTE) += smcroute + +# +# Paths and names +# +SMCROUTE_VERSION := 2.4.0 +SMCROUTE_MD5 := 6b4cd5ceb0476c0fbe5c1da093234f13 +SMCROUTE := smcroute-$(SMCROUTE_VERSION) +SMCROUTE_SUFFIX := tar.xz +SMCROUTE_URL := \ + https://github.com/troglobit/smcroute/releases/download/$(SMCROUTE_VERSION)/$(SMCROUTE).$(SMCROUTE_SUFFIX) +SMCROUTE_SOURCE := $(SRCDIR)/$(SMCROUTE).$(SMCROUTE_SUFFIX) +SMCROUTE_DIR := $(BUILDDIR)/$(SMCROUTE) +SMCROUTE_LICENSE := GPL-2.0-or-later + +# ---------------------------------------------------------------------------- +# Prepare +# ---------------------------------------------------------------------------- + +SMCROUTE_CONF_TOOL := autoconf +SMCROUTE_CONF_OPT := \ + $(CROSS_AUTOCONF_USR) \ + --enable-mrdisc \ + $(GLOBAL_IPV6_OPTION) \ + --$(call ptx/endis,PTXCONF_SMCROUTE_CLIENT)-client \ + --$(call ptx/endis,PTXCONF_SMCROUTE_CONFIG)-config \ + --$(call ptx/wwo,PTXCONF_SMCROUTE_LIBCAP)-libcap \ + --with-systemd=/usr/lib/systemd/system + +# ---------------------------------------------------------------------------- +# Install +# ---------------------------------------------------------------------------- + +$(STATEDIR)/smcroute.install: + @$(call targetinfo) + @$(call world/install, SMCROUTE) + +ifdef PTXCONF_SMCROUTE_CONFIG + @install -vD -m 644 "$(SMCROUTE_DIR)/smcroute.conf" \ + "$(SMCROUTE_PKGDIR)/etc" +endif + @$(call touch) + +# ---------------------------------------------------------------------------- +# Target-Install +# ---------------------------------------------------------------------------- + +$(STATEDIR)/smcroute.targetinstall: + @$(call targetinfo) + + @$(call install_init, smcroute) + @$(call install_fixup, smcroute,PRIORITY,optional) + @$(call install_fixup, smcroute,SECTION,base) + @$(call install_fixup, smcroute,AUTHOR,"Ladislav Michl <la...@linux-mips.org>") + @$(call install_fixup, smcroute,DESCRIPTION,missing) + +ifdef PTXCONF_SMCROUTE_CONFIG + @$(call install_alternative, smcroute, 0, 0, 0644, /etc/smcroute.conf) +endif +ifdef PTXCONF_SMCROUTE_SYSTEMD_UNIT + @$(call install_alternative, smcroute, 0, 0, 0644, \ + /usr/lib/systemd/system/smcroute.service) +endif +ifdef PTXCONF_SMCROUTE_CLIENT + @$(call install_copy, smcroute, 0, 0, 0755, -, /usr/sbin/smcroutectl) +endif + @$(call install_copy, smcroute, 0, 0, 0755, -, /usr/sbin/smcrouted) + + @$(call install_finish, smcroute) + + @$(call touch) -- 2.17.0 _______________________________________________ ptxdist mailing list ptxdist@pengutronix.de