list revision 1.3 1 #
2 # $NetBSD: list,v 1.3 2002/04/26 03:38:19 lukem Exp $
3 #
4 # ramdisk/list - packing list for the ramdisk.
5 #
6 # The ramdisk root has to stay small enough so the kernel
7 # can be loaded in less than one megabyte of ram, including
8 # uninitialized data (bss). Otherwise it will not work on
9 # the Sun2/50. This is not too hard, because the ONLY
10 # tools needed in this root are those that one might use
11 # to initialize the disk label and copy a miniroot image
12 # into the swap partition. Everything else is done after
13 # the machine is rebooted from the miniroot.
14 #
15 # Note that the "ln" directives below are not really about
16 # filesystem links, but rather the ability of the resulting
17 # crunched binary to select the right program when argv[0]
18 # matches the names on right of the "ln prog" directive.
19 # For example, the shell can be run with argv[0]="-sh"
20 # (login shell convention) but no such file will exist.
21 # Similarly, one may want to run "init" as "oinit"...
22 #
23 # Notes about what is included (or not) and why:
24 #
25 # Include mknod incase I forgot some device nodes...
26 # Support copying miniroot from NFS, TFTP, or CDROM.
27 # Need mount_ffs, mount_ufs to remount the ramdisk.
28 #
29 # Might use cat to look at files (it's small anyway).
30 # Need for copying miniroot from tape: dd, mt
31 # Keep to allow minor fixes: ln, mkdir, mv
32 # Small and handy: cat, echo, pwd, sync
33 #
34 # Note: ssh has no "if", so "test" is useless. Also,
35 # left out: cp, chmod, rm. The ramdisk does not really
36 # need them, and they pull in fts_* from libc.
37 #
38 # Might use these to get the miniroot: rsh, tftp
39 #
40 # Assume gunzip can run elsewhere, i.e.:
41 # rsh gzcat sun2.miniroot.gz
42 # No need to extract archives either...
43 #
44
45 SRCDIRS bin sbin usr.bin distrib/utils
46
47 # From /usr/src/distrib/utils:
48 PROG sbin/init
49 PROG sbin/ifconfig
50 PROG sbin/edlabel
51 PROG sbin/route
52 PROG bin/dd
53 PROG bin/ls
54 PROG bin/rsh
55 PROG bin/ssh bin/sh bin/-sh
56 # PROG bin/tftp
57
58 # From /usr/src/sbin:
59 PROG sbin/reboot sbin/halt
60 PROG sbin/mknod
61 PROG sbin/mount
62 PROG sbin/mount_cd9660
63 PROG sbin/mount_ffs
64 PROG sbin/mount_nfs
65 PROG sbin/umount
66
67 # From /usr/src/bin:
68 PROG bin/cat
69 # PROG bin/chmod
70 # PROG bin/cp
71 PROG bin/echo
72 PROG bin/ln
73 PROG bin/mkdir
74 PROG bin/mt
75 PROG bin/mv
76 PROG bin/pwd
77 # PROG bin/rm
78 PROG bin/sync
79 PROG bin/zcat
80 PROG bin/rcmd
81
82 LIBS libhack.o -lrmt -lutil -lz
83
84 # These are built with special flags to save a little space.
85 SPECIAL ls srcdir distrib/utils/tls
86 SPECIAL ssh srcdir distrib/utils/ssh
87 SPECIAL ifconfig srcdir distrib/utils/x_ifconfig
88 SPECIAL mount srcdir distrib/utils/x_mount
89 SPECIAL route srcdir distrib/utils/x_route
90 SPECIAL umount srcdir distrib/utils/x_umount
91
92 # various files that we need in /etc for the install
93 COPY ${CURDIR}/disktab etc/disktab
94 COPY ${CURDIR}/fstab etc/fstab
95 COPY ${CURDIR}/passwd etc/passwd
96 COPY ${CURDIR}/protocols etc/protocols
97 COPY ${CURDIR}/services etc/services
98 COPY ${CURDIR}/sshrc .sshrc
99 COPY ${CURDIR}/welcome .welcome
100
101 COPY ${_SRC_TOP_}/etc/netconfig etc/netconfig
102
103 # Fake /usr
104 SYMLINK . usr
105
106 # Shell lacks pipe support, so use this.
107 CMD mkfifo dev/pipe
108