MAKEDEV.local revision 1.13.6.1 1 #!/bin/sh -
2 # $NetBSD: MAKEDEV.local,v 1.13.6.1 2008/06/02 13:21:19 mjf 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 #
16 # THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
17 # ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
18 # TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
19 # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
20 # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
21 # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
22 # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
23 # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
24 # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
25 # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
26 # POSSIBILITY OF SUCH DAMAGE.
27 #
28 ###########################################################################
29 #
30 # MAKEDEV.local can be customised to create site-specific device nodes.
31 # By default it does nothing, except parse and accept the same command
32 # line options as MAKEDEV.
33 #
34 # "MAKEDEV all" or "MAKEDEV local" will invoke "MAKEDEV.local all";
35 # MAKEDEV.local may also be invoked directly with other args.
36
37 PATH=/sbin:/usr/sbin:/bin:/usr/bin:/rescue
38
39 # makedev_local special [...]
40 # the main loop
41 #
42 makedev_local()
43 {
44
45 for i
46 do
47
48 case $i in
49
50 all)
51 # Customise this. For example:
52 #makedev_local foo
53 ;;
54
55 # Add more cases here. You can call functions defined in MAKEDEV.
56 # For example:
57 #foo)
58 # mkdev foo c 0 0 600
59 # mkdev foo1 c 0 1 600
60 # ;;
61
62 *)
63 warn "$i: unknown device"
64 ;;
65
66 esac
67 done
68
69 }
70
71 #
72 # MAIN: Figure out where MAKEDEV is; load MAKEDEV as a function library;
73 # then call makedev_main to do all the real work.
74 #
75 case "$0" in
76 */*) MAKEDEV="${0%/*}/MAKEDEV" ;;
77 *) MAKEDEV="./MAKEDEV" ;;
78 esac
79 [ -f "${MAKEDEV}" ] || MAKEDEV="/dev/MAKEDEV"
80
81 MAKEDEV_AS_LIBRARY=1 . "${MAKEDEV}" || exit 1
82
83 makedev_main makedev_local ${1+"$@"}
84