1*83ee113eSDavid van Moolenbroek#! /bin/sh 2*83ee113eSDavid van Moolenbroek# 3*83ee113eSDavid van Moolenbroek# $NetBSD: dhcp2netbsd,v 1.2 2013/03/27 00:38:41 christos Exp $ 4*83ee113eSDavid van Moolenbroek# 5*83ee113eSDavid van Moolenbroek# Copyright (c) 2003, 2011 The NetBSD Foundation, Inc. 6*83ee113eSDavid van Moolenbroek# All rights reserved. 7*83ee113eSDavid van Moolenbroek# 8*83ee113eSDavid van Moolenbroek# Redistribution and use in source and binary forms, with or without 9*83ee113eSDavid van Moolenbroek# modification, are permitted provided that the following conditions 10*83ee113eSDavid van Moolenbroek# are met: 11*83ee113eSDavid van Moolenbroek# 1. Redistributions of source code must retain the above copyright 12*83ee113eSDavid van Moolenbroek# notice, this list of conditions and the following disclaimer. 13*83ee113eSDavid van Moolenbroek# 2. Redistributions in binary form must reproduce the above copyright 14*83ee113eSDavid van Moolenbroek# notice, this list of conditions and the following disclaimer in the 15*83ee113eSDavid van Moolenbroek# documentation and/or other materials provided with the distribution. 16*83ee113eSDavid van Moolenbroek# 17*83ee113eSDavid van Moolenbroek# THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 18*83ee113eSDavid van Moolenbroek# ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 19*83ee113eSDavid van Moolenbroek# TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 20*83ee113eSDavid van Moolenbroek# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 21*83ee113eSDavid van Moolenbroek# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 22*83ee113eSDavid van Moolenbroek# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 23*83ee113eSDavid van Moolenbroek# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 24*83ee113eSDavid van Moolenbroek# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 25*83ee113eSDavid van Moolenbroek# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 26*83ee113eSDavid van Moolenbroek# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 27*83ee113eSDavid van Moolenbroek# POSSIBILITY OF SUCH DAMAGE. 28*83ee113eSDavid van Moolenbroek# 29*83ee113eSDavid van Moolenbroek# dhcp2netbsd: convert a dhcp source tree into a 30*83ee113eSDavid van Moolenbroek# format suitable for import. Works on current dir. 31*83ee113eSDavid van Moolenbroek# You can run this only once if you want it to work. 32*83ee113eSDavid van Moolenbroek# 33*83ee113eSDavid van Moolenbroek# based on file2netbsd 34*83ee113eSDavid van Moolenbroek# 35*83ee113eSDavid van MoolenbroekPROG="$(basename "$0")" 36*83ee113eSDavid van Moolenbroek 37*83ee113eSDavid van Moolenbroekif [ -z "$1" ] 38*83ee113eSDavid van Moolenbroekthen 39*83ee113eSDavid van Moolenbroek echo "Usage: $PROG <directory>" 1>&2 40*83ee113eSDavid van Moolenbroek exit 1 41*83ee113eSDavid van Moolenbroekfi 42*83ee113eSDavid van MoolenbroekFILE="$1" 43*83ee113eSDavid van Moolenbroek 44*83ee113eSDavid van Moolenbroek### Wipe out stuff we don't want 45*83ee113eSDavid van Moolenbroekrm -fr bind 46*83ee113eSDavid van Moolenbroek 47*83ee113eSDavid van Moolenbroek### Remove the $'s around RCS tags 48*83ee113eSDavid van Moolenbroekcleantags "$FILE" 49*83ee113eSDavid van Moolenbroek 50*83ee113eSDavid van Moolenbroek### Add NetBSD RCS Id 51*83ee113eSDavid van Moolenbroekfind "$FILE" -type f -name '*.[chly]' -print | while read c; do 52*83ee113eSDavid van Moolenbroek sed -e '1{/$NetBSD/!{i\ 53*83ee113eSDavid van Moolenbroek/* \$NetBSD\$ */\ 54*83ee113eSDavid van Moolenbroek 55*83ee113eSDavid van Moolenbroek};}' $c > /tmp/dhcp1$$ 56*83ee113eSDavid van Moolenbroekmv /tmp/dhcp1$$ $c && echo did source mods for $c 57*83ee113eSDavid van Moolenbroekdone 58*83ee113eSDavid van Moolenbroek 59*83ee113eSDavid van Moolenbroekfind "$FILE" -type f -name '*.[cly]' -print | while read c; do 60*83ee113eSDavid van Moolenbroeksed -e \ 61*83ee113eSDavid van Moolenbroek'/:\/\/www.isc.org/,/^ \*\// { 62*83ee113eSDavid van Moolenbroek /^ \*\//a\ 63*83ee113eSDavid van Moolenbroek\ 64*83ee113eSDavid van Moolenbroek#include <sys/cdefs.h>\ 65*83ee113eSDavid van Moolenbroek__RCSID("\$NetBSD\$"); 66*83ee113eSDavid van Moolenbroek}' $c > /tmp/dhcp1$$ 67*83ee113eSDavid van Moolenbroekmv /tmp/dhcp1$$ $c && echo did source mods for $c 68*83ee113eSDavid van Moolenbroekdone 69*83ee113eSDavid van Moolenbroek 70*83ee113eSDavid van Moolenbroek for f in dst/dst_api.c dst/dst_support.c dst/hmac_link.c dst/prandom.c \ 71*83ee113eSDavid van Moolenbroek omapip/inet_addr.c omapip/iscprint.c server/dhcpv6.c \ 72*83ee113eSDavid van Moolenbroek server/dhcpleasequery.c server/ldap.c server/mdb6.c; do 73*83ee113eSDavid van Moolenbroek c=$FILE/$f 74*83ee113eSDavid van Moolenbroek sed -E -e \ 75*83ee113eSDavid van Moolenbroek'/\* TH(E|IS) SOFTWARE/,/^ \*\// { 76*83ee113eSDavid van Moolenbroek /^ \*\//a\ 77*83ee113eSDavid van Moolenbroek\ 78*83ee113eSDavid van Moolenbroek#include <sys/cdefs.h>\ 79*83ee113eSDavid van Moolenbroek__RCSID("\$NetBSD\$");\ 80*83ee113eSDavid van Moolenbroek 81*83ee113eSDavid van Moolenbroek}' $c > /tmp/dhcp1$$ 82*83ee113eSDavid van Moolenbroek mv /tmp/dhcp1$$ $c && echo did source mods for $c 83*83ee113eSDavid van Moolenbroekdone 84*83ee113eSDavid van Moolenbroek 85*83ee113eSDavid van Moolenbroek 86*83ee113eSDavid van Moolenbroek 87*83ee113eSDavid van Moolenbroek#### Add RCS tags to man pages 88*83ee113eSDavid van Moolenbroekfind "$FILE" -type f -name '*.[0-9]' -print | while read m; do 89*83ee113eSDavid van Moolenbroek sed -e '1{/$NetBSD/!i\ 90*83ee113eSDavid van Moolenbroek.\\" \$NetBSD\$\ 91*83ee113eSDavid van Moolenbroek.\\" 92*83ee113eSDavid van Moolenbroek 93*83ee113eSDavid van Moolenbroek}' $m > /tmp/dhcp2$$ 94*83ee113eSDavid van Moolenbroekmv /tmp/dhcp2$$ $m && echo did manpage mods for $m 95*83ee113eSDavid van Moolenbroekdone 96*83ee113eSDavid van Moolenbroek 97*83ee113eSDavid van Moolenbroekecho done 98*83ee113eSDavid van Moolenbroek 99*83ee113eSDavid van Moolenbroekecho You can import now. Use the following command: 100*83ee113eSDavid van Moolenbroekecho cvs -d cvs.netbsd.org:/cvsroot import src/external/bsd/dhcp/dist ISC DHCPX_Y_Z 101*83ee113eSDavid van Moolenbroek 102*83ee113eSDavid van Moolenbroekexit 0 103