aboutsummaryrefslogtreecommitdiff
path: root/rtr-origin
diff options
context:
space:
mode:
Diffstat (limited to 'rtr-origin')
-rw-r--r--rtr-origin/Makefile.in23
-rw-r--r--rtr-origin/rules.darwin.mk5
-rw-r--r--rtr-origin/rules.freebsd.mk33
-rw-r--r--rtr-origin/rules.linux.mk21
-rw-r--r--rtr-origin/rules.unknown.mk4
5 files changed, 82 insertions, 4 deletions
diff --git a/rtr-origin/Makefile.in b/rtr-origin/Makefile.in
index 39bd1994..ef15ac4c 100644
--- a/rtr-origin/Makefile.in
+++ b/rtr-origin/Makefile.in
@@ -4,8 +4,9 @@ BASE = rtr-origin
SRC = ${BASE}.py
BIN = ${BASE}
-INSTALL = @INSTALL@ -m 555
+INSTALL = @INSTALL@
PYTHON = @PYTHON@
+AWK = @AWK@
prefix = @prefix@
exec_prefix = @exec_prefix@
@@ -22,14 +23,22 @@ libdir = @libdir@
abs_top_srcdir = @abs_top_srcdir@
abs_top_builddir = @abs_top_builddir@
+RTR_ORIGIN_INSTALL_TARGETS = @RCYNIC_INSTALL_TARGETS@
+
+RPKI_RTR_PORT = 43779
+
all: ${BIN}
clean:
rm -f ${BIN}
-install: all
- if test -d ${DESTDIR}${bindir} ; then :; else ${INSTALL} -d ${DESTDIR}${bindir}; fi
- ${INSTALL} ${BIN} ${DESTDIR}${bindir}/${BIN}
+install: all ${RTR_ORIGIN_INSTALL_TARGETS}
+
+install-always:
+ if test -d ${DESTDIR}${bindir} ; then :; else ${INSTALL} -m 555 -d ${DESTDIR}${bindir}; fi
+ ${INSTALL} -m 555 ${BIN} ${DESTDIR}${bindir}/${BIN}
+
+install-postconf: install-listener
deinstall uninstall:
rm -f ${DESTDIR}${bindir}/${BIN}
@@ -45,3 +54,9 @@ ${BIN} : ${SRC}
test:
@true
+
+.FORCE:
+
+# Platform-specific rules below here.
+
+@RTR_ORIGIN_MAKE_RULES@
diff --git a/rtr-origin/rules.darwin.mk b/rtr-origin/rules.darwin.mk
new file mode 100644
index 00000000..570b704a
--- /dev/null
+++ b/rtr-origin/rules.darwin.mk
@@ -0,0 +1,5 @@
+# $Id$
+
+install-listener:
+ @echo "No rule for $@ on this platform (yet), you'll have to do that yourself if it matters."
+
diff --git a/rtr-origin/rules.freebsd.mk b/rtr-origin/rules.freebsd.mk
new file mode 100644
index 00000000..5db4cb72
--- /dev/null
+++ b/rtr-origin/rules.freebsd.mk
@@ -0,0 +1,33 @@
+# $Id$
+
+install-listener: .FORCE
+ @if /usr/bin/egrep -q '^rpki-rtr' /etc/services ; \
+ then \
+ echo "You already have a /etc/services entry for rpki-rtr, so I will use it."; \
+ elif echo >>/etc/services "rpki-rtr ${RPKI_RTR_PORT}/tcp #RFC 6810" ; \
+ then \
+ echo "Added rpki-rtr to /etc/services."; \
+ else \
+ echo "Adding rpki-rtr to /etc/services failed, please fix this, then try again."; \
+ exit 1; \
+ fi
+ @if /usr/bin/egrep -q "rpki-rtr[ ]+stream[ ]+tcp[ ]" /etc/inetd.conf; \
+ then \
+ echo "You already have an inetd.conf entry for rpki-rtr on TCPv4, so I will use it."; \
+ elif echo >>/etc/inetd.conf "rpki-rtr stream tcp nowait nobody /usr/local/bin/rtr-origin rtr-origin --server /var/rcynic/rpki-rtr"; \
+ then \
+ echo "Added rpki-rtr for TCPv4 to /etc/inetd.conf."; \
+ else \
+ echo "Adding rpki-rtr for TCPv4 to /etc/inetd.conf failed, please fix this, then try again."; \
+ exit 1; \
+ fi
+ @if /usr/bin/egrep -q "rpki-rtr[ ]+stream[ ]+tcp6[ ]" /etc/inetd.conf; \
+ then \
+ echo "You already have an inetd.conf entry for rpki-rtr on TCPv6, so I will use it."; \
+ elif echo >>/etc/inetd.conf "rpki-rtr stream tcp6 nowait nobody /usr/local/bin/rtr-origin rtr-origin --server /var/rcynic/rpki-rtr"; \
+ then \
+ echo "Added rpki-rtr for TCPv6 to /etc/inetd.conf."; \
+ else \
+ echo "Adding rpki-rtr for TCPv6 to /etc/inetd.conf failed, please fix this, then try again."; \
+ exit 1; \
+ fi
diff --git a/rtr-origin/rules.linux.mk b/rtr-origin/rules.linux.mk
new file mode 100644
index 00000000..e6840f47
--- /dev/null
+++ b/rtr-origin/rules.linux.mk
@@ -0,0 +1,21 @@
+# $Id$
+
+# Only need to make listener if not already present
+
+install-listener: ${DESTDIR}/etc/xinetd.d/rpki-rtr
+
+${DESTDIR}/etc/xinetd.d/rpki-rtr:
+ @${AWK} 'BEGIN { \
+ print "service rpki-rtr"; \
+ print "{"; \
+ print " socket_type = stream"; \
+ print " protocol = tcp"; \
+ print " port = ${RPKI_RTR_PORT}"; \
+ print " wait = no"; \
+ print " user = nobody"; \
+ print " server = /usr/bin/rtr-origin"; \
+ print " server_args = --server /var/rpki-rtr"; \
+ print "}"; \
+ }' >xinetd.rpki-rtr
+ ${INSTALL} -m 644 xinetd.rpki-rtr $@
+ rm xinetd.rpki-rtr
diff --git a/rtr-origin/rules.unknown.mk b/rtr-origin/rules.unknown.mk
new file mode 100644
index 00000000..58c412a3
--- /dev/null
+++ b/rtr-origin/rules.unknown.mk
@@ -0,0 +1,4 @@
+# $Id$
+
+install-listener:
+ @echo "Don't know how to make $@ on this platform"; exit 1