xref: /netbsd/distrib/sun2/ramdisk/list (revision 6550d01e)
1#
2#	$NetBSD: list,v 1.11 2010/03/10 23:13:09 abs 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 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
45SRCDIRS	bin sbin usr.bin distrib/utils
46
47# From /usr/src/distrib/utils:
48PROG		bin/dd
49PROG		bin/tls		bin/ls
50PROG		bin/rsh
51PROG		bin/ssh		bin/sh bin/-sh
52# PROG		bin/tftp
53PROG		sbin/edlabel
54PROG		sbin/ifconfig
55PROG		sbin/init
56PROG		sbin/route
57
58# From /usr/src/sbin:
59PROG		sbin/mknod
60PROG		sbin/mount
61PROG		sbin/mount_cd9660
62PROG		sbin/mount_ffs
63PROG		sbin/mount_nfs
64PROG		sbin/reboot	sbin/halt
65PROG		sbin/umount
66
67# From /usr/src/bin:
68PROG		bin/cat
69# PROG		bin/chmod
70# PROG		bin/cp
71PROG		bin/echo
72PROG		bin/ln
73PROG		bin/mkdir
74PROG		bin/mt
75PROG		bin/mv
76PROG		bin/pwd
77PROG		bin/rcmd
78# PROG		bin/rm
79PROG		bin/sync
80PROG		bin/zcat
81
82LIBS libhack.o -lrmt -lutil -lz -lprop
83
84# These are built with special flags to save a little space.
85SPECIAL	ifconfig	srcdir	distrib/utils/x_ifconfig
86SPECIAL	tls		srcdir	distrib/utils/tls
87SPECIAL	route		srcdir	distrib/utils/x_route
88SPECIAL	ssh		srcdir	distrib/utils/ssh
89SPECIAL	umount		srcdir	distrib/utils/x_umount
90SPECIAL	edlabel		srcdir	distrib/utils/edlabel
91
92# various files that we need in /etc for the install
93COPY	${CURDIR}/fstab			etc/fstab
94COPY	${CURDIR}/passwd		etc/passwd
95COPY	${CURDIR}/protocols		etc/protocols
96COPY	${DISTRIBDIR}/common/services	etc/services
97COPY	${CURDIR}/sshrc			.sshrc
98COPY	${CURDIR}/welcome		.welcome
99
100COPY	${NETBSDSRCDIR}/etc/netconfig	etc/netconfig
101
102# Fake /usr
103SYMLINK	.	usr
104
105# Shell lacks pipe support, so use this.
106CMD	mkfifo dev/pipe
107