mkioctls revision 1.14
11.14Schristos#!/bin/sh 21.14Schristos# $NetBSD: mkioctls,v 1.14 2004/04/22 22:31:18 christos Exp $ 31.7Sjtc# 41.7Sjtc# Copyright (c) 1994 51.7Sjtc# The Regents of the University of California. All rights reserved. 61.7Sjtc# 71.7Sjtc# Redistribution and use in source and binary forms, with or without 81.7Sjtc# modification, are permitted provided that the following conditions 91.7Sjtc# are met: 101.7Sjtc# 1. Redistributions of source code must retain the above copyright 111.7Sjtc# notice, this list of conditions and the following disclaimer. 121.7Sjtc# 2. Redistributions in binary form must reproduce the above copyright 131.7Sjtc# notice, this list of conditions and the following disclaimer in the 141.7Sjtc# documentation and/or other materials provided with the distribution. 151.7Sjtc# 3. All advertising materials mentioning features or use of this software 161.7Sjtc# must display the following acknowledgement: 171.7Sjtc# This product includes software developed by the University of 181.7Sjtc# California, Berkeley and its contributors. 191.7Sjtc# 4. Neither the name of the University nor the names of its contributors 201.7Sjtc# may be used to endorse or promote products derived from this software 211.7Sjtc# without specific prior written permission. 221.7Sjtc# 231.7Sjtc# THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 241.7Sjtc# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 251.7Sjtc# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 261.7Sjtc# ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 271.7Sjtc# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 281.7Sjtc# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 291.7Sjtc# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 301.7Sjtc# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 311.7Sjtc# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 321.7Sjtc# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 331.7Sjtc# SUCH DAMAGE. 341.7Sjtc# 351.7Sjtc# @(#)mkioctls 8.2 (Berkeley) 4/28/95 361.3Smycroft# 371.14Schristosecho "#define const" # XXX: timepps lossage 381.14Schristosecho "struct ap_control { int _xxx; };" # XXX: ip_nat.h lossage 391.14Schristosecho "#define COMPAT_43" 401.14Schristosecho "struct lwp;" 411.14Schristosecho "#include <sys/types.h>" 421.14Schristosecho "#include <sys/param.h>" 431.14Schristosecho "#include <sys/disk.h>" 441.14Schristosecho "#include <sys/mount.h>" 451.14Schristosecho "#include <sys/termios.h>" 461.14Schristosecho "#include <net/if.h>" 471.14Schristosecho "#include <net/route.h>" 481.14Schristosecho "#include <net/ppp_defs.h>" 491.14Schristosecho "#include <netinet/in.h>" 501.14Schristosecho "#include <netinet/in_systm.h>" 511.14Schristosecho "#include <netinet/ip.h>" 521.14Schristosecho "#include <netinet/ip_mroute.h>" 531.14Schristosecho "#include <netinet/ip_compat.h>" 541.14Schristosecho "#include <net80211/ieee80211.h>" 551.14Schristosecho "#include <netiso/iso.h>" 561.14Schristosfor i 571.14Schristosdo 581.14Schristos echo "#include <$i>" 591.14Schristosdone | sed -e "s,${DESTDIR}/usr/include/,,g" 601.14Schristos 611.11Scgd${CC:-cc} -E -nostdinc -idirafter $DESTDIR/usr/include -dM ${1+"$@"} | awk ' 621.1ScgdBEGIN { 631.10Slukem print "" 641.10Slukem print "char *ioctlname __P((long));" 651.1Scgd print "" 661.1Scgd print "char *" 671.1Scgd print "ioctlname(val)" 681.5Smycroft print "\tlong val;" 691.1Scgd print "{" 701.1Scgd print "" 711.1Scgd} 721.1Scgd 731.13Sthorpej/^#[ ]*define[ ]*(TIO|FIO|SIO|OSIO|CIO|CRIO)[A-Z]*[ ]*_IO/ { 741.1Scgd 751.1Scgd # find where the name starts 761.1Scgd for (i = 1; i <= NF; i++) 771.1Scgd if ($i ~ /define/) 781.1Scgd break; 791.1Scgd ++i; 801.1Scgd # 811.5Smycroft printf("\tif (val == %s)\n\t\treturn (\"%s\");\n", $i, $i); 821.1Scgd 831.1Scgd} 841.1ScgdEND { 851.5Smycroft print "\n\treturn (NULL);" 861.1Scgd print "}" 871.1Scgd} 881.5Smycroft' 89