1#! /bin/sh 2# 3# $NetBSD: bktr2netbsd,v 1.3 2000/10/28 14:51:08 wiz Exp $ 4# 5# Copyright (c) 2000 The NetBSD Foundation, Inc. 6# 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. All advertising materials mentioning features or use of this software 17# must display the following acknowledgement: 18# This product includes software developed by the NetBSD 19# Foundation, Inc. and its contributors. 20# 4. Neither the name of The NetBSD Foundation nor the names of its 21# contributors may be used to endorse or promote products derived 22# from this software without specific prior written permission. 23# 24# THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 25# ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 26# TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 27# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 28# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 29# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 30# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 31# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 32# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 33# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 34# POSSIBILITY OF SUCH DAMAGE. 35# 36# bktr2netbsd: convert a bktr source directory tree into a 37# netbsd bktr source tree, under sys/dev/pci/bktr 38# based on bind2netbsd by Bernd Ernesti 39 40if [ $# -ne 2 ]; then echo "bktr2netbsd src dest"; exit 1; fi 41 42r=$1 43d=$2/sys/dev/pci/bktr 44 45case "$d" in 46 /*) 47 ;; 48 *) 49 d=`/bin/pwd`/$d 50 ;; 51esac 52 53case "$r" in 54 /*) 55 ;; 56 *) 57 r=`/bin/pwd`/$r 58 ;; 59esac 60 61echo preparing directory $d 62rm -rf $d 63mkdir -p $d 64 65### Copy the files 66echo copying $r to $d 67cd $r 68pax -rw * $d 69 70echo removing unneeded files 71 72### Remove unneeded files 73cd $d 74rm -f CHANGELOG.TXT README.* bktr_i2c.[ch] bktr-devfs.patch bktr.4 75 76### Remove the $'s around RCS tags 77find $d -type f -print | xargs egrep -l '\$(Id|Created|Header|FreeBSD)' | while read f; do 78 sed -e 's/\$\(Id.*\) \$/\1/' \ 79 -e 's/\$\(Created.*\) \$/\1/' \ 80 -e 's/\$\(FreeBSD.*\) \$/\1/' \ 81 -e 's/\$\(Header.*\) \$/\1/' \ 82 < $f > /tmp/bktr1f$$ && mv /tmp/bktr1f$$ $f && \ 83 echo removed \$RCS tag from $f 84done 85 86### create bt8xx.h from ioctl_meteor.h and ioctl_bt848.h 87echo merging ioctl_meteor.h and ioctl_bt848.h to bt8xx.h 88echo "/* This file is merged from ioctl_meteor.h and ioctl_bt848.h from FreeBSD. */" > bt8xx.h 89echo "/* The copyright below only applies to the ioctl_meteor.h part of this file. */" >> bt8xx.h 90echo "" >> bt8xx.h 91echo "#ifndef _DEV_IC_BT8XX_H_" >> bt8xx.h 92echo "#define _DEV_IC_BT8XX_H_" >> bt8xx.h 93cat ioctl_meteor.h ioctl_bt848.h | grep -v _MACHINE_IOCTL_METEOR_H_ | \ 94 grep -v _MACHINE_IOCTL_BT848_H >> bt8xx.h 95echo "#endif /* _DEV_IC_BT8XX_H_ */" >> bt8xx.h 96rm ioctl_meteor.h ioctl_bt848.h 97 98### Add our NetBSD RCS Id 99find $d -name '*.[chly]' -print | while read c; do 100 sed 1q < $c | grep -q '\$NetBSD' || ( 101echo "/* \$NetBSD\$ */" >/tmp/bktr3n$$ 102echo "" >>/tmp/bktr3n$$ 103cat $c >> /tmp/bktr3n$$ 104mv /tmp/bktr3n$$ $c && echo added NetBSD RCS tag to $c 105 ) 106done 107 108echo done 109 110### move bt8xx.h to correct place 111echo moving bt8xx.h to dev/ic 112mkdir -p $d/../../ic 113mv bt8xx.h $d/../../ic 114 115### Clean up any CVS directories that might be around. 116echo "cleaning up CVS residue." 117( 118 cd $d 119 find . -type d -name "CVS" -print | xargs rm -r 120) 121echo done 122 123### Fixing file and directory permissions. 124echo "Fixing file/directory permissions." 125( 126 cd $d 127 find . -type f -print | xargs chmod u+rw,go+r 128 find . -type d -print | xargs chmod u+rwx,go+rx 129) 130echo done 131 132echo Do not forget to also import bt8xx.h in dev/ic! 133exit 0 134