Home | History | Annotate | Line # | Download | only in man8
      1 #!/bin/sh
      2 #
      3 #       $NetBSD: MAKEDEV2manpage.sh,v 1.5 2005/12/28 03:54:07 dbj Exp $
      4 #
      5 # Copyright (c) 2002
      6 #       Dieter Baron <dillo (at] NetBSD.org>.  All rights reserved.
      7 #
      8 # Redistribution and use in source and binary forms, with or without
      9 # modification, are permitted provided that the following conditions
     10 # are met:
     11 # 1. Redistributions of source code must retain the above copyright
     12 #    notice, this list of conditions and the following disclaimer.
     13 # 2. Redistributions in binary form must reproduce the above copyright
     14 #    notice, this list of conditions and the following disclaimer in the
     15 #    documentation and/or other materials provided with the distribution.
     16 # 3. Neither the name of the University nor the names of its contributors
     17 #    may be used to endorse or promote products derived from this software
     18 #    without specific prior written permission.
     19 #
     20 # THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
     21 # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
     22 # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
     23 # ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
     24 # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
     25 # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
     26 # OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
     27 # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
     28 # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
     29 # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
     30 # SUCH DAMAGE.
     31 #
     32 #
     33 ###########################################################################
     34 #
     35 # Convert src/etc/etc.${ARCH}/MAKEDEV and
     36 # src/share/man/man8/MAKEDEV.8.template to
     37 # src/share/man/man8/man8.${ARCH}/MAKEDEV.8, replacing
     38 #  - @@@SPECIAL@@@ with all targets in the first section (all, std, ...)
     39 #  - @@@DEVICES@@@ with the remaining targets
     40 #  - @@@DATE@@@ with the date from the previous version, if found
     41 #  - @@@ARCH@@@ with the architecture name
     42 # using src/share/man/man8/MAKEDEV2manpage.awk
     43 #
     44 
     45 AWK=${AWK:-awk}
     46 DIFF=${DIFF:-diff}
     47 
     48 manpage="MAKEDEV.8";
     49 tmpfile="${manpage}.$$";
     50 
     51 ${AWK} -f MAKEDEV2manpage.awk MAKEDEV.8.template \
     52 	> ${tmpfile} || { rm ${tmpfile}; exit 1; }
     53 if ${DIFF} -I'^\.Dd ' -I'^\.\\" $NetBSD' -q ${manpage} ${tmpfile} \
     54 	>/dev/null
     55 then
     56 	result='unchanged';
     57 	rm ${tmpfile};
     58 else
     59 	result='updated';
     60 	if [ `wc -l < ${tmpfile}` -ne `wc -l < ${manpage}` ]; then
     61 		LC_ALL=C LC_CTYPE=C date=`date +"%B %e, %Y"`
     62 	else
     63 		date=`sed -n 's/^\.Dd //p' ${manpage}`
     64 	fi
     65 	sed "s/@@@DATE@@@/$date/" ${tmpfile} > ${tmpfile}.2
     66 	rm ${tmpfile}
     67 	mv ${tmpfile}.2 ${manpage}
     68 fi
     69 echo "$manpage: ${result}"
     70