Hi, Brad Smith wrote on Sun, Sep 15, 2013 at 03:38:06PM -0400: > On 15/09/13 3:18 PM, Brian Callahan wrote: >> On 09/14/13 00:02, Kyle Isom wrote:
>>> Update to 1.7. Tested working on amd64 and macppc. >> I don't think this needs USE_GROFF=Yes anymore; otherwise ok by me if >> someone wants to double check that. Indeed, USE_GROFF isn't needed for this one. > USE_GROFF can be removed. mandoc points out two errors in the man > page but the page looks the same whether utilizing mandoc or > pre-formatting it with groff. This made me curious, it sounded like something, somewhere, was seriously broken. A mandoc(1) ERROR - as opposed to a WARNING - is intended as a hint that the output is likely to be seriously affected, often unusable. So, two ERRORs, but the output is fine, you say? That made me have a look. It turns out the manual page itself contains badly broken syntax, so badly that important content gets completely lost during formatting. In two places, the upstream author put the full stop of a sentence in the first column, so roff mishandles it as a macro indicator and basically loses the complete line. That's one of the unusual cases where patching the *manual* makes sense, even in the port, because it is required to let users see the full text of the manual. See below for an improved version of the port. Sorry that i can't provide testing or an OK for the port as a whole, it wouldn't be meaningful because i know too little about terminal emulators. Please feed the patch to the manual page upstream, too, together with my explanation what the problem is. Note that mandoc(1) somehow starts being *too* good. It manages to misformat the broken manual in *exactly* the same way as groff. If both formatters would only misformat the buggy code differently, it would have been more probable that anybody of you (Kyle, Brian, or Brad) would have noticed the actual problem... :-) I'm appending - first a diff showing what my patch to picocom.8 fixes - and than the improved port. Yours, Ingo ----- 8< ----- schnipp ----- >8 ----- 8< ----- schnapp ----- >8 ----- --- picocom.orig.0 Sun Sep 15 22:37:46 2013 +++ picocom.fixed.0 Sun Sep 15 22:37:59 2013 @@ -145,7 +145,9 @@ The standard error of the external program will be connected to the terminal which---while the program is running---will revert to canonical mode. Pressing 'C-c' while the external program is running - will prematurely terminate it, and return control to picocom + will prematurely terminate it, and return control to picocom. Pressing + 'C-c' at any other time, has no special effect; the character is + normally passed to the serial port. INPUT, OUTPUT, AND ECHO MAPPING Using the "--imap", "--omap", and "--emap" options you can make picocom @@ -239,10 +241,11 @@ --noreset | -r If given, picocom will not *reset* the serial port when exiting. It will just close the filedes and do nothing more. This is useful, for - example, for leaving modems connected when exiting picocom picocom - using the "Quit" command (instead of "Exit"), which never resets the - serial port. If "--noreset" is given then "Quit" and "Exit" behave - essentially the same. + example, for leaving modems connected when exiting picocom. + Regardless whether the "--noreset" option is given the user can exit + picocom using the "Quit" command (instead of "Exit"), which never + resets the serial port. If "--noreset" is given then "Quit" and + "Exit" behave essentially the same. --nolock | -l If given, picocom will *not* attempt to lock the serial port before ----- 8< ----- schnipp ----- >8 ----- 8< ----- schnapp ----- >8 ----- Index: Makefile =================================================================== RCS file: /cvs/ports/comms/picocom/Makefile,v retrieving revision 1.4 diff -u -p -r1.4 Makefile --- Makefile 7 Aug 2013 21:31:20 -0000 1.4 +++ Makefile 15 Sep 2013 21:30:11 -0000 @@ -3,8 +3,7 @@ # COMMENT = minimal dumb-terminal emulation program -DISTNAME = picocom-1.6 -REVISION = 0 +DISTNAME = picocom-1.7 CATEGORIES = comms MASTER_SITES = https://picocom.googlecode.com/files/ @@ -19,11 +18,9 @@ NO_TEST = Yes MAKE_FLAGS = CC="${CC}" CFLAGS="${CFLAGS}" MAKE_ENV = LDFLAGS="${LDFLAGS}" -USE_GROFF = Yes do-install: ${INSTALL_DATA} ${WRKSRC}/picocom.8 ${PREFIX}/man/man8/picocom.8 ${INSTALL_PROGRAM} ${WRKDIST}/picocom ${PREFIX}/bin/picocom - .include <bsd.port.mk> Index: distinfo =================================================================== RCS file: /cvs/ports/comms/picocom/distinfo,v retrieving revision 1.1.1.1 diff -u -p -r1.1.1.1 distinfo --- distinfo 8 Jul 2012 18:19:18 -0000 1.1.1.1 +++ distinfo 15 Sep 2013 21:30:11 -0000 @@ -1,5 +1,2 @@ -MD5 (picocom-1.6.tar.gz) = Qmw9MLgsvICw2v3M1gIMbA== -RMD160 (picocom-1.6.tar.gz) = rII9gEWriuBbGembGzdWth0OWH4= -SHA1 (picocom-1.6.tar.gz) = 8ELhX6dqszScdKcAYqohC1J+a9w= -SHA256 (picocom-1.6.tar.gz) = 31d0By3oBf8GxrFCDbzJMrGwDpGbSeIqe+FLytWgs6E= -SIZE (picocom-1.6.tar.gz) = 46704 +SHA256 (picocom-1.7.tar.gz) = 0PMcj3ohWnaSLTDIGlK5ojSMieAqhJNVFwArO8LBEp4= +SIZE (picocom-1.7.tar.gz) = 42857 Index: patches/patch-Makefile =================================================================== RCS file: /cvs/ports/comms/picocom/patches/patch-Makefile,v retrieving revision 1.1.1.1 diff -u -p -r1.1.1.1 patch-Makefile --- patches/patch-Makefile 8 Jul 2012 18:19:18 -0000 1.1.1.1 +++ patches/patch-Makefile 15 Sep 2013 21:30:11 -0000 @@ -1,26 +1,23 @@ -$OpenBSD: patch-Makefile,v 1.1.1.1 2012/07/08 18:19:18 lteo Exp $ ---- Makefile.orig Sat May 29 00:39:52 2010 -+++ Makefile Sun Jul 8 15:45:36 2012 -@@ -1,17 +1,13 @@ -- -+OBJS := picocom.o term.o - VERSION=1.6 +--- Makefile.orig Fri Sep 13 19:18:11 2013 ++++ Makefile Fri Sep 13 19:22:09 2013 +@@ -5,16 +5,17 @@ UUCP_LOCK_DIR=/var/lock # CC = gcc --CPPFLAGS=-DVERSION_STR=\"$(VERSION)\" -DUUCP_LOCK_DIR=\"/var/lock\" \ + CPPFLAGS=-DVERSION_STR=\"$(VERSION)\" \ +- -DUUCP_LOCK_DIR=\"$(UUCP_LOCK_DIR)\" \ - -DHIGH_BAUD --CFLAGS = -Wall -g -+CPPFLAGS=-DVERSION_STR=\"$(VERSION)\" -DUUCP_LOCK_DIR=\"/var/spool/lock\" ++ -DUUCP_LOCK_DIR=\"$(UUCP_LOCK_DIR)\" + CFLAGS = -Wall -g --# LD = gcc --LDFLAGS = -g --LDLIBS = -+all : picocom + # LD = gcc + LDFLAGS = -g + LDLIBS = --picocom : picocom.o term.o ++all: picocom ++ + picocom : picocom.o term.o -# $(LD) $(LDFLAGS) -o $@ $+ $(LDLIBS) -+picocom : $(OBJS) -+ $(CC) $(LDFLAGS) -o picocom $(OBJS) ++ $(CC) $(LDFLAGS) -o $@ picocom.o term.o $(LDLIBS) picocom.o : picocom.c term.h term.o : term.c term.h Index: patches/patch-picocom_8 =================================================================== RCS file: patches/patch-picocom_8 diff -N patches/patch-picocom_8 --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-picocom_8 15 Sep 2013 21:30:11 -0000 @@ -0,0 +1,25 @@ +$OpenBSD$ +--- picocom.8.orig Tue Feb 21 09:53:42 2012 ++++ picocom.8 Sun Sep 15 22:34:20 2013 +@@ -123,8 +123,8 @@ picocom --send-cmd "sz -vv" --receive-cmd "rz -vv" + .br + .sp 0.6v + During the picocom session, if you key the "send" or "receive" commands (e.g. by pressing C-a, C-s, or C-a, C-r) you will be prompted for a filename. At this prompt you can enter one or more file-names, and any additional arguments to the transmission or reception program. After that, picocom will start the the external program as specified by the "--send-cmd", or "--receive-cmd" option, and with any filenames and additional arguments you may have supplied. The standard input and output of the external program will be connected to the serial port. The standard error of the external program will be connected to the terminal which---while the program is running---will revert to canonical mode. Pressing 'C-c' while the external program is running will prematurely terminate it, and return control to +-.B picocom +-. Pressing 'C-c' at any other time, has no special effect; the character is normally passed to the serial port. ++.BR picocom . ++Pressing 'C-c' at any other time, has no special effect; the character is normally passed to the serial port. + .br + .sp 0.6v + .SH INPUT, OUTPUT, AND ECHO MAPPING +@@ -227,8 +227,8 @@ to already-connected modems, or already configured por + If given, + .B picocom + will not *reset* the serial port when exiting. It will just close the filedes and do nothing more. This is useful, for example, for leaving modems connected when exiting +-.B picocom +-. Regardless whether the "--noreset" option is given the user can exit ++.BR picocom . ++Regardless whether the "--noreset" option is given the user can exit + .B picocom + using the "Quit" command (instead of "Exit"), which never resets the serial port. If "--noreset" is given then "Quit" and "Exit" behave essentially the same. + .TP 3