ports/179691: New port: net/mtr082

Jeremy Chadwick jdc at koitsu.org
Tue Jun 18 21:20:01 UTC 2013


>Number:         179691
>Category:       ports
>Synopsis:       New port: net/mtr082
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Tue Jun 18 21:20:00 UTC 2013
>Closed-Date:
>Last-Modified:
>Originator:     Jeremy Chadwick
>Release:        FreeBSD 9.1-STABLE amd64
>Organization:
>Environment:
System: FreeBSD icarus.home.lan 9.1-STABLE FreeBSD 9.1-STABLE #0 r251935: Tue Jun 18 06:19:37 PDT 2013 root at icarus.home.lan:/usr/obj/usr/src/sys/X7SBA_RELENG_9_amd64 amd64
>Description:
	Due to the ongoing nonsense with the net/mtr port (please see
	PR 177663), I've opted to create net/mtr082, which is mtr v0.82.
	(I have done similar things in the past with other tools, ex.
	databases/rrdtool12).

	This is "mostly" the same as r300897, with the following changes:

	- Modified COMMENT (a la r314227)
	- Added LICENSE (a la r314227)
	- Cleaned up Makefile header (a la r314227)
	- Added USES=pkgconfig (a la r316355)

	Other things of importance compared to the old 0.82 mtr port:

	- Added an entry (my own server) to MASTER_SITES in case the official
	  bitwizard FTP goes down (this has happened quite a few times) or
	  disappears altogether

	- Added CONFLICTS against mtr-0.84 (and above), as well as the
	  mtr-nox11-0.84 (and above) "metaport"

	- OPTIONS defaults are: IPV6 enabled, X11 disabled.  THIS IS
	  INTENTIONAL!  It allows for the package cluster to build a working
	  mtr 0.82 package without pulling in X.  mtr has historically been
	  a curses-based program and the majority of network administrators
	  I have talked to use the CLI version.  This means users can just
	  do "pkg_add -r mtr082" and get something that works.  Folks who
	  want the GUI can build from source, and likewise people who don't
	  want IPv6 (like me) can also build from source.

	- Removed the whole PKGNAMESUFFIX=-nox11 stuff -- we don't need
	  a metaport for this given what I described above.

	- Removed USE_GMAKE -- base system make works fine.  I have only
	  tested this on stable/9; if it breaks on stable/8 I'll be more
	  than happy to add an OSREVISION check and add USE_GMAKE there.

	- Remove post-patch section and replace with files/ patches.  This
	  makes portlint happy -- no more false complaints about $(VARIABLE)
	  being used due to REINPLACE_CMD having a $(...) string in it.

	- If there are security holes found in mtr that date all the way
	  back to 0.82, I will do the analysis and/or backport them myself.

	The following I *have not* tested:

	- Any testing on stable/8
	- Any testing on head
	- Any testing on i386
	- stable/9 with X11 enabled and IPV6 enabled
	- stable/9 with X11 enabled and IPV6 disabled
	- stable/9 with X11 disabled and IPV6 enabled
>How-To-Repeat:
	n/a
>Fix:
	Port is available here in two forms: tarball (unpacks into its own
	dir) and shar:

	http://jdc.koitsu.org/freebsd/mtr082.tar.gz
	http://jdc.koitsu.org/freebsd/mtr082.shar

	The shar is also included below.


# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	mtr082
#	mtr082/pkg-descr
#	mtr082/files
#	mtr082/files/patch-mtr.c
#	mtr082/files/patch-Makefile.in
#	mtr082/Makefile
#	mtr082/distinfo
#
echo c - mtr082
mkdir -p mtr082 > /dev/null 2>&1
echo x - mtr082/pkg-descr
sed 's/^X//' >mtr082/pkg-descr << '294f07e5654eb77c69377c1e18a025ad'
Xmtr combines the functionality of the 'traceroute' and 'ping' programs in a
Xsingle network diagnostic tool.
X
XAs mtr starts, it investigates the network connection between the host mtr runs
Xon and a user-specified destination host. After it determines the address of
Xeach network hop between the machines, it sends a sequence ICMP ECHO requests to
Xeach one to determine the quality of the link to each machine. As it does this,
Xit prints running statistics about each machine.
X
XOfficial mtr repository is at https://github.com/traviscross/mtr
X
XWWW: http://www.bitwizard.nl/mtr/
294f07e5654eb77c69377c1e18a025ad
echo c - mtr082/files
mkdir -p mtr082/files > /dev/null 2>&1
echo x - mtr082/files/patch-mtr.c
sed 's/^X//' >mtr082/files/patch-mtr.c << '9e36378f102b0c486e413093f298feed'
X--- mtr.c.orig	2011-12-02 05:11:21.000000000 -0800
X+++ mtr.c	2013-06-18 13:36:49.654605105 -0700
X@@ -29,7 +29,7 @@
X 
X #include "mtr.h"
X #include "mtr-curses.h"
X-#include "getopt.h"
X+#include <getopt.h>
X #include "display.h"
X #include "dns.h"
X #include "report.h"
9e36378f102b0c486e413093f298feed
echo x - mtr082/files/patch-Makefile.in
sed 's/^X//' >mtr082/files/patch-Makefile.in << '45566a380f888e8cdd522a0efea9f572'
X--- Makefile.in.orig	2011-12-02 05:21:30.000000000 -0800
X+++ Makefile.in	2013-06-18 13:38:31.672111000 -0700
X@@ -53,7 +53,7 @@
X PROGRAMS = $(sbin_PROGRAMS)
X am_mtr_OBJECTS = mtr.$(OBJEXT) net.$(OBJEXT) dns.$(OBJEXT) \
X 	raw.$(OBJEXT) split.$(OBJEXT) display.$(OBJEXT) \
X-	report.$(OBJEXT) getopt.$(OBJEXT) getopt1.$(OBJEXT) \
X+	report.$(OBJEXT) \
X 	select.$(OBJEXT)
X mtr_OBJECTS = $(am_mtr_OBJECTS)
X mtr_LDADD = $(LDADD)
X@@ -244,7 +244,6 @@
X               split.c split.h \
X               display.c display.h \
X               report.c report.h \
X-              getopt.c getopt1.c getopt.h \
X               select.c select.h \
X               mtr-curses.h \
X               mtr-gtk.h
X@@ -362,8 +361,6 @@
X @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/curses.Po at am__quote@
X @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/display.Po at am__quote@
X @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/dns.Po at am__quote@
X- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/getopt.Po at am__quote@
X- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/getopt1.Po at am__quote@
X @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/gtk.Po at am__quote@
X @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/mtr.Po at am__quote@
X @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/net.Po at am__quote@
45566a380f888e8cdd522a0efea9f572
echo x - mtr082/Makefile
sed 's/^X//' >mtr082/Makefile << 'fbcff0b1f22912b7f92aa24149700d98'
X# Created by: Jeremy Chadwick <jdc at koitsu.org>
X# $FreeBSD$
X
XPORTNAME=	mtr
XPORTVERSION=	0.82
XCATEGORIES=	net
XMASTER_SITES=	ftp://ftp.bitwizard.nl/mtr/ \
X		http://jdc.koitsu.org/freebsd/mtr082/
X
XMAINTAINER=	jdc at koitsu.org
XCOMMENT=	Traceroute and ping in a single network diagnostic tool
X
XLICENSE=	GPLv2
X
XLATEST_LINK=	mtr082
XCONFLICTS=	mtr-0.8[3-9]* mtr-nox11-0.8[3-9]* \
X		mtr-0.9[0-9]* mtr-nox11-0.9[0-9]* \
X		mtr-[1-9]* mtr-nox11-[1-9]*
X
XOPTIONS_DEFINE=	IPV6 X11
XOPTIONS_DEFAULT=IPV6
XX11_DESC=	Build X11-enabled mtr
X
XGNU_CONFIGURE=	yes
XUSES=		pkgconfig
X
XMAN8=		mtr.8
XPLIST_FILES=	sbin/mtr
X
X.include <bsd.port.options.mk>
X
X.if ${PORT_OPTIONS:MIPV6}
XCONFIGURE_ARGS+=--enable-ipv6
XCATEGORIES+=	ipv6
X.else
XCONFIGURE_ARGS+=--disable-ipv6
X.endif
X
X.if ${PORT_OPTIONS:MX11}
XCONFIGURE_ARGS+=--with-gtk
XUSE_GNOME=	gtk20
X.else
XCONFIGURE_ARGS+=--without-gtk
X.endif
X
Xpost-install:
X	@${ECHO_MSG} ""
X	@${ECHO_MSG} "${PREFIX}/sbin/mtr is setuid \"root\" "
X	@${ECHO_MSG} ""
X	@${ECHO_MSG} "Please read about potential security issues"
X	@${ECHO_MSG} "in file ${WRKSRC}/SECURITY (not installed)"
X	@${ECHO_MSG} ""
X
X.include <bsd.port.mk>
fbcff0b1f22912b7f92aa24149700d98
echo x - mtr082/distinfo
sed 's/^X//' >mtr082/distinfo << '15b944d23539c8c19f8734afb7804839'
XSHA256 (mtr-0.82.tar.gz) = f3b457c9623ae03565688a7ffd49d4843a5e2505ccaf3ba8d9fbd86e3ce9b6a0
XSIZE (mtr-0.82.tar.gz) = 270245
15b944d23539c8c19f8734afb7804839
exit

>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-ports-bugs mailing list