1*61d06d6bSBaptiste Daroussin#!/bin/sh 2*61d06d6bSBaptiste Daroussin# Copyright (c) 2013,2014,2015,2017,2018 Ingo Schwarze <schwarze@openbsd.org> 3*61d06d6bSBaptiste Daroussin# 4*61d06d6bSBaptiste Daroussin# Permission to use, copy, modify, and distribute this software for any 5*61d06d6bSBaptiste Daroussin# purpose with or without fee is hereby granted, provided that the above 6*61d06d6bSBaptiste Daroussin# copyright notice and this permission notice appear in all copies. 7*61d06d6bSBaptiste Daroussin# 8*61d06d6bSBaptiste Daroussin# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 9*61d06d6bSBaptiste Daroussin# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 10*61d06d6bSBaptiste Daroussin# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 11*61d06d6bSBaptiste Daroussin# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 12*61d06d6bSBaptiste Daroussin# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 13*61d06d6bSBaptiste Daroussin# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 14*61d06d6bSBaptiste Daroussin# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 15*61d06d6bSBaptiste Daroussin 16*61d06d6bSBaptiste Daroussinif [ `id -u` -eq 0 ]; then 17*61d06d6bSBaptiste Daroussin echo "$0: do not run me as root" 18*61d06d6bSBaptiste Daroussin exit 1 19*61d06d6bSBaptiste Daroussinfi 20*61d06d6bSBaptiste Daroussin 21*61d06d6bSBaptiste Daroussinif [ $# -eq 0 ]; then 22*61d06d6bSBaptiste Daroussin echo "usage: $0 [-h|-u] manual_source_file ..." 23*61d06d6bSBaptiste Daroussin exit 1 24*61d06d6bSBaptiste Daroussinfi 25*61d06d6bSBaptiste Daroussin 26*61d06d6bSBaptiste Daroussinif [ "X$1" = "X-h" ]; then 27*61d06d6bSBaptiste Daroussin shift 28*61d06d6bSBaptiste Daroussin export PATH="/usr/local/heirloom-doctools/bin:$PATH" 29*61d06d6bSBaptiste Daroussin EQN="neqn" 30*61d06d6bSBaptiste Daroussin ROFF="nroff" 31*61d06d6bSBaptiste Daroussin MOPT="-Ios=BSD -Tascii $MOPT" 32*61d06d6bSBaptiste Daroussin COLPIPE="col -b" 33*61d06d6bSBaptiste Daroussinelif [ "X$1" = "X-u" ]; then 34*61d06d6bSBaptiste Daroussin shift 35*61d06d6bSBaptiste Daroussin ROFF="groff -ket -ww -Tutf8 -P -c" 36*61d06d6bSBaptiste Daroussin MOPT="-Ios=OpenBSD -Wall -Tutf8 $MOPT" 37*61d06d6bSBaptiste Daroussin COLPIPE="cat" 38*61d06d6bSBaptiste Daroussinelse 39*61d06d6bSBaptiste Daroussin ROFF="groff -et -ww -mtty-char -Tascii -P -c" 40*61d06d6bSBaptiste Daroussin MOPT="-Ios=OpenBSD -Wall -Tascii $MOPT" 41*61d06d6bSBaptiste Daroussin COLPIPE="cat" 42*61d06d6bSBaptiste Daroussinfi 43*61d06d6bSBaptiste Daroussin 44*61d06d6bSBaptiste Daroussinwhile [ -n "$1" ]; do 45*61d06d6bSBaptiste Daroussin file=$1 46*61d06d6bSBaptiste Daroussin shift 47*61d06d6bSBaptiste Daroussin echo " ========== $file ========== " 48*61d06d6bSBaptiste Daroussin $ROFF -mandoc $file | $COLPIPE 2> /tmp/roff.err > /tmp/roff.out 49*61d06d6bSBaptiste Daroussin ${MANDOC:=mandoc} $MOPT $file | $COLPIPE \ 50*61d06d6bSBaptiste Daroussin 2> /tmp/mandoc.err > /tmp/mandoc.out 51*61d06d6bSBaptiste Daroussin for i in roff mandoc; do 52*61d06d6bSBaptiste Daroussin [ -s /tmp/$i.err ] && echo "$i errors:" && cat /tmp/$i.err 53*61d06d6bSBaptiste Daroussin done 54*61d06d6bSBaptiste Daroussin diff -au /tmp/roff.out /tmp/mandoc.out 2>&1 55*61d06d6bSBaptiste Daroussindone 56*61d06d6bSBaptiste Daroussin 57*61d06d6bSBaptiste Daroussinexit 0 58