MAKEDEV.local revision 1.13 1 #!/bin/sh -
2 # $NetBSD: MAKEDEV.local,v 1.13 2007/12/20 07:30:25 apb Exp $
3 #
4 # Copyright (c) 2007 The NetBSD Foundation, Inc.
5 # All rights reserved.
6 #
7 # Redistribution and use in source and binary forms, with or without
8 # modification, are permitted provided that the following conditions
9 # are met:
10 # 1. Redistributions of source code must retain the above copyright
11 # notice, this list of conditions and the following disclaimer.
12 # 2. Redistributions in binary form must reproduce the above copyright
13 # notice, this list of conditions and the following disclaimer in the
14 # documentation and/or other materials provided with the distribution.
15 # 3. All advertising materials mentioning features or use of this software
16 # must display the following acknowledgement:
17 # This product includes software developed by the NetBSD
18 # Foundation, Inc. and its contributors.
19 # 4. Neither the name of The NetBSD Foundation nor the names of its
20 # contributors may be used to endorse or promote products derived
21 # from this software without specific prior written permission.
22 #
23 # THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
24 # ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
25 # TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
26 # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
27 # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
28 # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
29 # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
30 # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
31 # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
32 # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
33 # POSSIBILITY OF SUCH DAMAGE.
34 #
35 ###########################################################################
36 #
37 # MAKEDEV.local can be customised to create site-specific device nodes.
38 # By default it does nothing, except parse and accept the same command
39 # line options as MAKEDEV.
40 #
41 # "MAKEDEV all" or "MAKEDEV local" will invoke "MAKEDEV.local all";
42 # MAKEDEV.local may also be invoked directly with other args.
43
44 PATH=/sbin:/usr/sbin:/bin:/usr/bin:/rescue
45
46 # makedev_local special [...]
47 # the main loop
48 #
49 makedev_local()
50 {
51
52 for i
53 do
54
55 case $i in
56
57 all)
58 # Customise this. For example:
59 #makedev_local foo
60 ;;
61
62 # Add more cases here. You can call functions defined in MAKEDEV.
63 # For example:
64 #foo)
65 # mkdev foo c 0 0 600
66 # mkdev foo1 c 0 1 600
67 # ;;
68
69 *)
70 warn "$i: unknown device"
71 ;;
72
73 esac
74 done
75
76 }
77
78 #
79 # MAIN: Figure out where MAKEDEV is; load MAKEDEV as a function library;
80 # then call makedev_main to do all the real work.
81 #
82 case "$0" in
83 */*) MAKEDEV="${0%/*}/MAKEDEV" ;;
84 *) MAKEDEV="./MAKEDEV" ;;
85 esac
86 [ -f "${MAKEDEV}" ] || MAKEDEV="/dev/MAKEDEV"
87
88 MAKEDEV_AS_LIBRARY=1 . "${MAKEDEV}" || exit 1
89
90 makedev_main makedev_local ${1+"$@"}
91