makedev-2.3.1.orig/0040775000175000017500000000000007006673456013013 5ustar bdalebdalemakedev-2.3.1.orig/MAKEDEV.man0100664000175000017500000002200006727600262014545 0ustar bdalebdale.\" $Id: MAKEDEV.man,v 2.2 1995/05/21 17:55:30 alfie Exp $ .TH MAKEDEV 8 "14th August 1994" Linux "Linux Programmer's Manual" .SH NAME MAKEDEV \- create devices .SH SYNOPSIS .B "cd dev; ./MAKEDEV -V" .br .B "cd dev; ./MAKEDEV [ -n ] [ -v ] update" .br .BI "cd dev; ./MAKEDEV [ -n ] [ -v ] [ -d ]" " device ..." .SH DESCRIPTION .B MAKEDEV is a script that will create the devices in \fC/dev\fP used to interface with drivers in the kernel. .PP Note that programs giving the error ``ENOENT: No such file or directory'' normally means that the device file is missing, whereas ``ENODEV: No such device'' normally means the kernel does not have the driver configured or loaded. .SH OPTIONS .TP .B \-V Print out version (actually RCS version information) and exit. .TP .B \-n Do not actually update the devices, just print the actions that would be performed. .TP .B \-d Delete the devices. The main use for this flag is by .B MAKEDEV itself. .TP .B \-v Be verbose. Print out the actions as they are performed. This is the same output as produced by .BR \-n . .SH CUSTOMISATION Since there is currently no standardisation in what names are used for system users and groups, it is possible that you may need to modify .B MAKEDEV to reflect your site's settings. Near the top of the file is a mapping from device type to user, group and permissions (e.g. all CD-ROM devices are set from the \fC$cdrom\fP variable). If you wish to change the defaults, this is the section to edit. .SH DEVICES .TP .B General Options .TP .B update This only works on kernels which have \fC/proc/interrupts\fP (introduced during 1.1.x). This file is scanned to see what devices are currently configured into the kernel, and this is compared with the previous settings stored in the file called \fCDEVICES\fP. Devices which are new since then or have a different major number are created, and those which are no longer configured are deleted. .TP .B generic Create a generic subset of devices. This is the standard devices, plus floppy drives, various hard drives, pseudo-terminals, console devices, basic serial devices, busmice, and printer ports. .TP .B std Standard devices. These are: .B mem \- acess to physical memory; .B kmem \- access to kernel virtual memory; .B null \- null device (infinite sink); .B port \- access to I/O ports; .B zero \- null byte source (infinite source); .B core \- symlink to /proc/kcore (for kernel debugging); .B full \- always returns ENOSPACE on write; .B ram \- ramdisk; .B tty \- to access the controlling tty of a process. .TP .B local This simply runs .BR MAKEDEV.local . This is a script that can create any local devices. .TP .B Virtual Terminals .TP .I console This creates the devices associated with the console. This is the virtual terminals .RI tty x , where .I x can be from 0 though 63. The device tty0 is the currently active vt, and is also known as \fCconsole\fP. For each vt, there are two devices .RI vcs x and .RI vcsa x , which are used to generate screen-dumps of the vt (the .BI vcs x is just the text, and .BI vcsa x includes the attributes). .TP .B Serial Devices .TP .I ttyS{0..63} Serial ports and corresponding dialout device. For device .BI ttyS x , there is also the device .BI cua x which is used to dial out with. This can avoid the need for cooperative locks in simple situations. .TP .I cyclades Dial-in and dial-out devices for the cyclades intelligent I/O serial card. The dial in device is .BI ttyC x and the corresponding dial-out device is .BI cub x By default devices for 7 lines are created, but this can be changed to 15 by removing the comment. .TP .B Pseudo Terminals .TP .I pty[p-s] Each possible argument will create a bank of 16 master and slave pairs. The current kernel (1.2) is limited to 64 such pairs. The master pseudo-terminals are .BR pty[p-s][0-9a-f] , and the slaves are .BR tty[p-s][0-9a-f] . .TP .B Parallel Ports .TP .I lp Standard parallel ports. The devices are created .BR lp0 , .BR lp1 , and .BR lp2 . These correspond to ports at 0x3bc, 0x378 and 0x278. Hence, on some machines, the first printer port may actually be .BR lp1 . .TP .I par Alternative to .IR lp . Ports are named .BI par x instead of .BI lp x . .TP .B Bus Mice .TP .I busmice The various bus mice devices. This creates the following devices: .B logimouse (Logitech bus mouse), .B psmouse (PS/2-style mouse), .B msmouse (Microsoft Inport bus mouse) and .B atimouse (ATI XL bus mouse) and .B jmouse (J-mouse). .TP .B Joystick Devices .TP .I js Joystick. Creates .B js0 and .BR js1 . .TP .B Disk Devices .TP .I fd[0-7] Floppy disk devices. The device .BI fd x is the device which autodetects the format, and the additional devices are fixed format (whose size is indicated in the name). The other devices are named as .BI fd xLn . The single letter .I L identifies the type of floppy disk (d = 5.25" DD, h = 5.25" HD, D = 3.5" DD, H = 3.5" HD, E = 3.5" ED). The number .I n represents the capacity of that format in K. Thus the standard formats are .BI fd x d360 , .BI fd x h1200 , .BI fd x D720 , .BI fd x H1440 , and .RI fd x E2880 . .IP For more information see Alain Knaff's fdutils package. .IP Devices .BI fd0 * through .BI fd3 * are floppy disks on the first controller, and devices .BI fd4 * through .BI fd7 * are floppy disks on the second controller. .TP .I hd[a-d] AT hard disks. The device .BI hd x provides access to the whole disk, with the partitions being .BI hd x [0-20]. The four primary partitions are .BI hd x 1 through .BI hd x 4, with the logical partitions being numbered from .BI hd x 5 though .BI hd x 20. (A primary partition can be made into an extended partition, which can hold 4 logical partitions). By default, only the devices for 4 logical partitions are made. The others can be made by uncommenting them. .IP Drives hda and hdb are the two on the first controller. If using the new IDE driver (rather than the old HD driver), then hdc and hdd are the two drives on the secondary controller. These devices can also be used to acess IDE CDROMs if using the new IDE driver. .TP .I xd[a-d] XT hard disks. Partitions are the same as IDE disks. .TP .I sd[a-h] SCSI hard disks. The partitions are similar to the IDE disks, but there is a limit of 11 logical partitions .RI (sd x 5 through .RI sd x 15). This is to allow there to be 8 SCSI disks. .TP .I loop Loopback disk devices. These allow you to use a regular file as a block device. This means that images of filesystems can be mounted, and used as normal. This creates 8 devices loop0 through loop7. .TP .B Tape Devices .TP .I st[0-7] SCSI tapes. This creates the rewinding tape device .BI st x and the non-rewinding tape device .BI nst x . .TP .I qic QIC-80 tapes. The devices created are .BR rmt8 , .BR rmt16 , .BR tape-d , and .BR tape-reset . .TP .I ftape Floppy driver tapes (QIC-117). There are 4 methods of access depending on the floppy tape drive. For each of access methods 0, 1, 2 and 3, the devices .BI rft x (rewinding) and .BI nrft x (non-rewinding) are created. For compatability, devices .B ftape and .B nftape are symlinks to .B rft0 and .B nrft0 respectively. .TP .B CDROM Devices .TP .I scd[0-7] SCSI CD players. .TP .I sonycd Sony CDU-31A CD player. .TP .I mcd Mitsumi CD player. .TP .I cdu535 Sony CDU-535 CD player. .TP .I lmscd LMS/Philips CD player. .TP .I sbpcd{,1,2,3} Sound Blaster CD player. The kernel is capable of supporting 16 CDROMs, each of which is accessed as .BR sbpcd[0-9a-f] . These are assigned in groups of 4 to each controller. .B sbpcd is a symlink to .BR sbpcd0 . .\" .TP .\" .I idecd .\" NEC CDR-260 (note: this will probably be obsoleted by the new IDE driver). .TP .B Scanner .TP .I logiscan Logitech ScanMan32 & ScanMan 256. .TP .I m105scan Mustek M105 Handscanner. .TP .I ac4096 A4Tek Color Handscanner. .TP .B Audio .TP .I audio This creates the audio devices used by the sound driver. These include .BR mixer , .BR sequencer , .BR dsp , and .BR audio . .TP .I pcaudio Devices for the PC Speaker sound driver. These are .BR pcmixer . .BR pxsp , and .BR pcaudio . .TP .B Miscellaneous .TP .I sg Generic SCSI devices. The devices created are .B sg0 through .BR sg7 . These allow arbitary commands to be sent to any SCSI device. This allows for querying information about the device, or controlling SCSI devices that are not one of disk, tape or CDROM (e.g. scanner, writeable CDROM). .TP .I fd To allow an arbitary program to be fed input from file descriptor .IR x , use .BI /dev/fd/ x as the file name. This also creates BR /dev/stdin , BR /dev/stdout , and BR /dev/stderr . (Note, these are just symlinks into /proc/self/fd). .TP .I ibcs2 Devices (and symlinks) needed by the IBCS2 emulation. .TP .I apm Devices for power management. .TP .I dcf Driver for DCF-77 radio clock. .TP .I helloworld Kernel modules demonstration device. See the modules source. .TP .B "Network Devices" Linux used to have devices in /dev for controlling network devices, but that is no longer the case. To see what network devices are known by the kernel, look at /proc/net/dev. .SH "SEE ALSO" Linux Allocated Devices, maintained by H.\ Peter Anvin, . .SH AUTHOR Nick Holloway, &2; exit 1 ;; *) break ;; esac done if [ "$opt_V" ] then echo "$RCSID" exit 0 fi opts="${opt_n:+-n} ${opt_v:+-v} ${opt_d:+-d}" #---#---#---#---#---#---#---#---#---#---#---#---#---#---#---#---#---#---#---# makedev () { # usage: makedev name [bcu] major minor owner group mode if [ "$opt_v" ] then if [ "$opt_d" ] then echo "delete $1" else echo "create $1 $2 $3 $4 $5:$6 $7" fi fi if [ ! "$opt_n" ] then if [ "$opt_d" ] then rm -f $1 else rm -f $1- mknod $1- $2 $3 $4 && chown $5:$6 $1- && chmod $7 $1- && mv $1- $1 fi fi } symlink () { # usage: symlink name target if [ "$opt_v" ] then if [ "$opt_d" ] then echo "delete $1" else echo "create $1 -> $2" fi fi [ ! "$opt_n" ] && rm -f $1 && [ ! "$opt_d" ] && ln -s $2 $1 } #---#---#---#---#---#---#---#---#---#---#---#---#---#---#---#---#---#---#---# # For bash and ksh, we can use faster builtin routines to do manipulation, # otherwise (ash) fall back to slower method using `expr'. # The extra level of indirection using `eval' is necessary a) for ksh, and # b) to get past ash. if [ "$RANDOM" != "$RANDOM" ] then math () { eval echo "\$(($*))" } index () { # index string c eval "I=\${1%$2*}" eval echo "\${#I}" } suffix () { eval echo "\${1#$2}" } strip () { eval echo "\${1% $2 *} \${1#* $2 }" } else math () { expr "$@" } index () { # index string c expr $1 : ".*$2" - 1 } suffix () { expr "$1" : "$2\(.*\)" } strip () { echo "[$1][$2]" >&2 echo "`expr \"$1\" : \"\(.*\) $2 \"` `expr \"$1\" : \".* $2 \(.*\)\"`" } fi #---#---#---#---#---#---#---#---#---#---#---#---#---#---#---#---#---#---#---# devices= if [ ! -f $procfs/devices ] then echo "$0: warning: can't read $procfs/devices" >&2 else exec 3<$procfs/devices while read major device <&3 do case "$major" in Character|Block|'') ;; *) eval "major_$device=$major" devices="$devices $device" ;; esac done exec 3<&- fi Major () { device=$2 if [ "$opt_d" ] then echo -1 # don't care else eval echo \${major_$1:-\${device:?\"unknown major number for $1\"}} fi } cvt () { while [ $# -ne 0 ] do case "$1" in mem|tty|ttyp|cua|cub) ;; hd) (for d in a b c d e f g h ; do echo -n hd$d " " done) ; echo ;; ide0) echo hda hdb ;; ide1) echo hdc hdd ;; ide2) echo hde hdf ;; ide3) echo hdg hdh ;; sd) echo sda sdb ;; sr) echo scd0 ;; st) echo st0 ;; xd) echo xda xdb ;; fd) echo fd0 fd1 ;; lp) echo lp ;; mt) echo ftape ;; loop) echo loop ;; md) echo md ;; ibcs2) echo ibcs2 ;; tpqic02) echo qic ;; sound) echo audio ;; logiscan) echo logiscan ;; ac4096) echo ac4096 ;; hw) echo helloworld ;; sbpcd | sbpcd[123]) echo $1 ;; Joystick) echo js ;; apm_bios) echo apm ;; dcf) echo dcf ;; aztcd) echo aztcd ;; pcmcia) ;; # taken care of by its own driver ttyC) echo cyclades ;; vcs) ;; *) echo "$0: don't know what \"$1\" is" >&2 ;; esac shift done } for arg do case $arg in generic) $0 $opts std $0 $opts fd $0 $opts fd0 fd1 $0 $opts hda hdb $0 $opts xda xdb $0 $opts sda sdb $0 $opts pty $0 $opts console $0 $opts ttyS0 ttyS1 ttyS2 ttyS3 $0 $opts busmice $0 $opts lp $0 $opts par ;; local) $0.local $opts ;; std) makedev mem c 1 1 $kmem makedev kmem c 1 2 $kmem makedev null c 1 3 $public makedev port c 1 4 $kmem makedev zero c 1 5 $public symlink core $procfs/kcore makedev full c 1 7 $public $0 ram makedev tty c 5 0 $tty ;; ram) for i in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ; do makedev ram$i b 1 $i $disk done ln -sf ram1 ram ;; console) major=`Major vcs` # not fatal # console makedev tty0 c 4 0 $cons symlink console tty0 [ "$major" ] && makedev vcs0 c $major 0 $vcs [ "$major" ] && makedev vcsa c $major 128 $vcs # individual vts line=1 while [ $line -le $MAXVT -a $line -le 63 ] do makedev tty$line c 4 $line $tty [ "$major" ] && makedev vcs$line c $major $line $vcs [ "$major" ] && makedev vcsa$line c $major `math $line + 128` $vcs line=`math $line + 1` done ;; tty[1-9]|tty[1-5][0-9]|tty[6][0-3]) line=`suffix $arg tty` makedev tty$line c 4 $line $tty ;; ttyS[0-9]|ttyS[1-5][0-9]|ttyS[6][0-3]) line=`suffix $arg ttyS` minor=`math 64 + $line` makedev ttyS$line c 4 $minor $tty makedev cua$line c 5 $minor $dialout ;; pty[a-ep-z]) bank=`suffix $arg pty` base=`index pqrstuvwxyzabcde $bank` base=`math $base \* 16` for i in 0 1 2 3 4 5 6 7 8 9 a b c d e f do j=`index 0123456789abcdef $i` makedev pty$bank$i c 2 `math $base + $j` $tty makedev tty$bank$i c 3 `math $base + $j` $tty done ;; pty) ptysufs="" for i in p q r s t u v w x y z a b c d e do ptysufs="$ptysufs pty$i" done $0 $opts $ptysufs ;; cyclades) major1=`Major ttyC` || continue major2=`Major cub` || continue for i in 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 \ 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 do makedev ttyC$i c $major1 $i $tty makedev cub$i c $major2 $i $dialout done ;; lp) major=`Major lp` || continue makedev ${arg}0 c $major 0 $printer makedev ${arg}1 c $major 1 $printer makedev ${arg}2 c $major 2 $printer ;; par) major=`Major lp` || continue makedev ${arg}0 c $major 0 $printer makedev ${arg}1 c $major 1 $printer makedev ${arg}2 c $major 2 $printer ;; busmice) major=`Major mouse 10` || continue makedev logimouse c $major 0 $mouse makedev psmouse c $major 1 $mouse makedev msmouse c $major 2 $mouse makedev atimouse c $major 3 $mouse makedev jmouse c $major 4 $mouse ;; js) major=`Major Joystick` || continue makedev js0 c $major 0 $mouse makedev js1 c $major 1 $mouse ;; fd[0-7]) major=`Major fd 2` || continue base=`suffix $arg fd` if [ $base -ge 4 ] then base=`math $base + 124` fi makedev ${arg} b $major $base $floppy makedev ${arg}d360 b $major `math $base + 4` $floppy makedev ${arg}h1200 b $major `math $base + 8` $floppy makedev ${arg}D360 b $major `math $base + 12` $floppy makedev ${arg}D720 b $major `math $base + 16` $floppy makedev ${arg}h360 b $major `math $base + 20` $floppy makedev ${arg}h720 b $major `math $base + 24` $floppy makedev ${arg}H1440 b $major `math $base + 28` $floppy makedev ${arg}E2880 b $major `math $base + 32` $floppy makedev ${arg}CompaQ b $major `math $base + 36` $floppy symlink ${arg}H360 ${arg}D360 symlink ${arg}H720 ${arg}D720 makedev ${arg}h1440 b $major `math $base + 40` $floppy makedev ${arg}H1680 b $major `math $base + 44` $floppy makedev ${arg}h410 b $major `math $base + 48` $floppy makedev ${arg}H820 b $major `math $base + 52` $floppy makedev ${arg}h1476 b $major `math $base + 56` $floppy makedev ${arg}H1722 b $major `math $base + 60` $floppy makedev ${arg}h420 b $major `math $base + 64` $floppy makedev ${arg}H830 b $major `math $base + 68` $floppy makedev ${arg}h1494 b $major `math $base + 72` $floppy makedev ${arg}H1743 b $major `math $base + 76` $floppy makedev ${arg}h880 b $major `math $base + 80` $floppy makedev ${arg}D1040 b $major `math $base + 84` $floppy makedev ${arg}D1120 b $major `math $base + 88` $floppy makedev ${arg}h1600 b $major `math $base + 92` $floppy makedev ${arg}H1760 b $major `math $base + 96` $floppy makedev ${arg}H1920 b $major `math $base + 100` $floppy makedev ${arg}E3200 b $major `math $base + 104` $floppy makedev ${arg}E3520 b $major `math $base + 108` $floppy makedev ${arg}E3840 b $major `math $base + 112` $floppy makedev ${arg}H1840 b $major `math $base + 116` $floppy makedev ${arg}D800 b $major `math $base + 120` $floppy makedev ${arg}H1600 b $major `math $base + 124` $floppy ;; hd[a-b]) major=`Major ide0` || major=`Major hd 3` || continue unit=`suffix $arg hd` base=`index ab $unit` base=`math $base \* 64` makedev hd$unit b $major $base $disk for part in 1 2 3 4 5 6 7 8 # 9 10 11 12 13 14 15 16 17 18 19 20 do makedev hd$unit$part b $major `math $base + $part` $disk done ;; hd[c-d]) major=`Major ide1 22` || continue unit=`suffix $arg hd` base=`index cd $unit` base=`math $base \* 64` makedev hd$unit b $major $base $disk for part in 1 2 3 4 5 6 7 8 # 9 10 11 12 13 14 15 16 17 18 19 20 do makedev hd$unit$part b $major `expr $base + $part` $disk done ;; hd[e-f]) major=`Major ide2 33` || continue unit=`suffix $arg hd` base=`index ef $unit` base=`math $base \* 64` makedev hd$unit b $major $base $disk for part in 1 2 3 4 5 6 7 8 # 9 10 11 12 13 14 15 16 17 18 19 20 do makedev hd$unit$part b $major `expr $base + $part` $disk done ;; hd[g-h]) major=`Major ide3 34` || continue unit=`suffix $arg hd` base=`index gh $unit` base=`math $base \* 64` makedev hd$unit b $major $base $disk for part in 1 2 3 4 5 6 7 8 # 9 10 11 12 13 14 15 16 17 18 19 20 do makedev hd$unit$part b $major `expr $base + $part` $disk done ;; ht) major=`Major ht0 37` || continue # Only one IDE tape drive is currently supported; ht0. makedev ht0 c $major 0 $tape makedev ht0 c $major 0 $tape makedev nht0 c $major 128 $tape ;; xd[a-d]) major=`Major xd 13` || continue unit=`suffix $arg xd` base=`index abcd $unit` base=`math $base \* 64` makedev xd$unit b $major $base $disk for part in 1 2 3 4 5 6 7 8 # 9 10 11 12 13 14 15 16 17 18 19 20 do makedev xd$unit$part b $major `expr $base + $part` $disk done ;; sd[a-h]) major=`Major sd 8` || continue unit=`suffix $arg sd` base=`index abcdefgh $unit` base=`math $base \* 16` makedev sd$unit b $major $base $disk for part in 1 2 3 4 5 6 7 8 # 9 10 11 12 13 14 15 do minor=`expr $base + $part` makedev sd$unit$part b $major $minor $disk done ;; loop) major=`Major loop` || continue for part in 0 1 2 3 4 5 6 7 do makedev loop$part b $major $part $disk done ;; md) major=`Major md` || continue for part in 0 1 2 3 do makedev md$part b $major $part $disk done ;; st[0-7]) major=`Major st 9` unit=`suffix $arg st` makedev st$unit c $major $unit $tape makedev nst$unit c $major `math 128 + $unit` $tape ;; qic) major=`Major tpqic02 12` makedev rmt8 c $major 6 $tape makedev rmt16 c $major 8 $tape makedev tape-d c $major 136 $tape makedev tape-reset c $major 255 $tape ;; ftape) major=`Major mt 27` || continue for unit in 0 1 2 3 do makedev rft$unit c $major $unit $tape makedev nrft$unit c $major `math $unit + 4` $tape done symlink ftape rft0 symlink nftape nrft0 ;; scd[0-7]) major=`Major sr 11` || continue unit=`suffix $arg scd` makedev scd$unit b $major $unit $cdrom ;; sonycd) major=`Major cdu31a` || continue makedev $arg b $major 0 $cdrom ;; mcd) major=`Major mcd 23` || continue makedev $arg b $major 0 $cdrom ;; mcdx) major=`Major mcdx 20` || continue makedev $arg b $major 0 $cdrom ;; cdu535) makedev $arg b 24 0 $cdrom ;; lmscd) makedev $arg b 24 0 $cdrom ;; sbpcd|sbpcd[123]) major=`Major $arg` || continue base=`suffix ${arg}0 sbpcd` # base=`expr ${arg}0 : "sbpcd\(.\)"` for minor in 0 1 2 3 do # XXX unit=`expr substr 0123456789abcdef \( $base \* 4 + $minor + 1 \) 1` makedev sbpcd$unit b $major $minor $cdrom done [ $arg = sbpcd ] && symlink $arg ${arg}0 ;; aztcd) major=`Major $arg` || continue makedev ${arg}0 b $major 0 $cdrom ;; bpcd) makedev $arg b 41 0 $cdrom ;; logiscan) major=`Major logiscan` || continue makedev $arg c $major 0 $scanner ;; m105scan) major=`Major m105` || continue makedev $arg c $major 0 $scanner ;; ac4096) major=`Major ac4096` || continue makedev $arg c $major 0 $scanner ;; audio) major=`Major sound 14` makedev mixer c $major 0 $audio makedev sequencer c $major 1 $audio makedev midi00 c $major 2 $audio makedev dsp c $major 3 $audio makedev audio c $major 4 $audio makedev sndstat c $major 6 $audio # makedev sequencer2 c $major 8 $audio makedev mixer1 c $major 16 $audio # makedev patmgr0 c $major 17 $audio makedev midi01 c $major 18 $audio makedev dsp1 c $major 19 $audio makedev audio1 c $major 20 $audio # makedev patmgr1 c $major 33 $audio makedev midi02 c $major 34 $audio makedev midi03 c $major 50 $audio ;; pcaudio) major=`Major pcsp` || continue makedev pcmixer c $major 0 $audio makedev pcsp c $major 3 $audio makedev pcaudio c $major 4 $audio ;; sg) major=`Major sg 21` for unit in a b c d e f g h do minor=`index abcdefgh $unit` # minor=`expr abcdefgh : ".*$unit" - 1` makedev $arg$unit c $major $minor $scsi done ;; fd) # not really devices, we use the /proc filesystem symlink fd $procfs/self/fd symlink stdin fd/0 symlink stdout fd/1 symlink stderr fd/2 ;; ibcs2) major=`Major ibcs2` || continue makedev socksys c $major 0 $ibcs2 symlink nfsd socksys makedev spx c $major 1 $ibcs2 symlink X0R null ;; apm) major=`Major apm_bios` || continue makedev $arg c $major 0 $system ;; dcf) major=`Major dcf` || continue makedev $arg c $major 0 $system ;; helloworld) major=`Major hw` || continue makedev helloworld c $major 0 $public ;; update) if [ ! "$devices" ] then echo "$0: don't appear to have any devices" >&2 continue fi if [ "$opt_d" ] then echo "$0: can't delete an update" >&2 continue fi create= delete= devs="$devices" if [ -f DEVICES ] then exec 3 DEVICES ;; *) echo "$0: don't know how to make device \"$arg\"" >&2 ;; esac done exit 0 makedev-2.3.1.orig/MAKEDEV-2.3.1.lsm0100664000175000017500000000152006727600262015230 0ustar bdalebdaleBegin3 Title: MAKEDEV Version: 2.3.1 Entered-date: 24OCT1997 Description: MAKEDEV is the script that is used to create the block and character devices needed by a system. Requires /bin/sh to be a bourne/POSIX compatible shell (bash, ksh or ash) and the external commands expr, rm, mknod, chown, chmod and ln. Keywords: MAKEDEV, mknod, devices, /dev Author: Nick Holloway Maintained-by: Michael K. Johnson Primary-site: tsx-11.mit.edu /pub/linux/sources/sbin 6k MAKEDEV-2.3.tar.gz Alternate-site: sunsite.unc.edu /pub/Linux/system/admin 6k MAKEDEV-2.3.tar.gz Platform: Linux/x86. Copying-policy: FRS Freely Redistributable Software End makedev-2.3.1.orig/MAKEDEV.spec0100664000175000017500000000231606727600262014734 0ustar bdalebdaleSummary: Script to make and update /dev entries Name: MAKEDEV Version: 2.3.1 Release: 1 Copyright: none Group: Utilities/System Source: ftp://tsx-11.mit.edu/pub/linux/sources/sbin/MAKEDEV-2.3.1.tar.gz Requires: /bin/sh fileutils shadow-utils >= 970616-7 Prereq: shadow-utils # Note: pre-requires that particular version of shadow-utils, but # RPM can't handle that right now. BuildArchitectures: noarch %changelog * Fri Oct 24 1997 Michael K. Johnson - 2.3.1: use /usr/sbin/groupadd from new shadow utils * Mon Sep 29 1997 Michael K. Johnson - Updated to 2.3, as Nick agreed to me making an interim release while he figures out whether he wants to be the maintainer. * Wed Sep 03 1997 Erik Troan - made a noarch package * Tue Jul 08 1997 Erik Troan - added dependencies %description The /dev tree holds special files, each of which corresponds to a type of hardware device that Linux supports. This package contains a script which makes it easier to create and maintain the files which fill the /dev tree. %prep %setup %build %install make install %pre /usr/sbin/groupadd -g 19 -r -f floppy %files /dev/MAKEDEV /usr/man/man8/MAKEDEV.8 makedev-2.3.1.orig/Makefile0100664000175000017500000000041706727600262014444 0ustar bdalebdale# $Id: Makefile,v 2.2 1995/05/21 17:45:18 alfie Exp $ DEVDIR = $(ROOT)/dev MANDIR = $(ROOT)/usr/man MANEXT = 8 default: @echo Nothing to make. install: install -m 755 MAKEDEV $(DEVDIR) install -m 644 MAKEDEV.man $(MANDIR)/man$(MANEXT)/MAKEDEV.$(MANEXT) clean: makedev-2.3.1.orig/README0100664000175000017500000000221206727600262013657 0ustar bdalebdale$Id: README,v 2.3 1997/09/29 19:03:21 johnsonm Exp $ This release is an interim release by Michael K. Johnson If it breaks, don't bother Nick, bother me. Here is the original comment taken from the MAKEDEV script. One day, I'll do this properly. =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= This is my attempt at a MAKEDEV script. IMHO it cleans up many areas. It can be used to determine the necessary info for a device without actually creating it using the '-n' flag. It makes less individual devices and tends to make classes of devices (eg "MAKEDEV hda" will create "hda" and the 8 partitions; "MAKEDEV ptyp" will create the ptyp[0-f] master and ttyp[0-f] slave devices). If you are aware of any glaring omissions or errors, please let me know. Also, if you are a developer who wants your devices supported by MAKEDEV, let me know. Thanks go to many people. Ian Jackson for the original help and encouragement, to Matthias Urlichs for plugging "MAKEDEV update", and to the many others that have bought errors and omissions to my attention. Nick Holloway