crunch.conf revision 127350
175899Sjoe#
275899Sjoe# $FreeBSD: head/release/picobsd/bridge/crunch.conf 127350 2004-03-24 07:30:54Z luigi $
375899Sjoe#
475899Sjoe# configuration file for "bridge" floppy.
575899Sjoe# Depending on your needs, almost surely you will need to
675899Sjoe# modify your configuration to add/remove/change programs used in
775899Sjoe# the floppy image. Remember that some programs also require
875899Sjoe# matching kernel options to enable device drivers etc.
975899Sjoe#
1075899Sjoe# Next to most of the programs i have tried to indicate the approximate
1175899Sjoe# space consumed, but beware that these values change from release
1275899Sjoe# to release, and might depend on the presence of other programs which
1375899Sjoe# share the same libraries.
1475899Sjoe#
1575899Sjoe# NOTE: the string "/usr/src" will be automatically replaced with the
1675899Sjoe# correct value set in 'build' script - you should change it there
1775899Sjoe
1875899Sjoe# Default build options. Basically tell the Makefiles which understand
1975899Sjoe# that to use the most compact possible version of the code.
2075899Sjoe#
2175899Sjoebuildopts -DNOPAM -DRELEASE_CRUNCH -DNONETGRAPH -DNOIPSEC -DNOINET6
2275899Sjoe
2375899Sjoe# directories where to look for sources of various binaries.
24102344Sluigi# @__CWD__@ is a magic keyword in the picobsd's (Makefile.conf)
25102344Sluigi# which is replaced with the picobsd directory.
26102344Sluigisrcdirs @__CWD__@/src
27102344Sluigi
2884312Sluigi# Some programs are especially written for PicoBSD and reside here
2984312Sluigi# Make this first in the list so we can override standard programs
3084312Sluigi# with the picobsd-specific ones.
3184312Sluigisrcdirs /usr/src/release/picobsd/tinyware
32102344Sluigi
33102344Sluigi#
34102344Sluigi# standard locations
35102344Sluigi#
3675899Sjoesrcdirs /usr/src/bin
3775899Sjoesrcdirs /usr/src/sbin/i386
3875899Sjoesrcdirs /usr/src/sbin
3975899Sjoesrcdirs /usr/src/usr.bin
4075899Sjoesrcdirs /usr/src/gnu/usr.bin
4175899Sjoesrcdirs /usr/src/usr.sbin
4275899Sjoesrcdirs /usr/src/libexec
4375899Sjoe#
4475899Sjoe# And there are others (mostly ports) which reside in their specific
4575899Sjoe# directories. For them, we use the "special" commands to tell
4675899Sjoe# crunchgen where to look for sources, objects, which Makefile
4775899Sjoe# variables contain the list of sources and objects, and so on.
4875899Sjoe
4975899Sjoe# init is almost always necessary.
5075899Sjoeprogs init # 4KB.
5175899Sjoe# fsck is almost always necessary, unless you have everything on the
5275899Sjoe# image and use 'tar' or something similar to read/write raw blocks
5375899Sjoe# from the floppy.
5475899Sjoeprogs fsck # 24KB.
5575899Sjoe# ifconfig is needed if you want to configure interfaces...
5675899Sjoeprogs ifconfig # 4KB.
5775899Sjoe#
5875899Sjoe# You will also need a shell and a bunch of utilities.
5975899Sjoe# The standard shell is not that large, but you need many
6075899Sjoe# external programs. In fact most of them do not take much space
6175899Sjoe# as they merely issue a system call, and print the result; the
6275899Sjoe# libraries are already needed anyways, so they end up using almost
6375899Sjoe# no additional memory.
6475899Sjoe# There are a few exceptions such as 'less', which in 4.x is
6575899Sjoe# rather large.
6675899Sjoeprogs sh # 36KB.
6775899Sjoeln sh -sh
6875899Sjoeprogs echo # 0KB.
6975899Sjoeprogs pwd
7075899Sjoeprogs mkdir rmdir
7175899Sjoeprogs chmod chown
7275899Sjoeprogs mv ln # 0KB.
7375899Sjoeprogs mount
7475899Sjoeprogs minigzip # 0KB.
7575899Sjoeln minigzip gzip
7675899Sjoeprogs cp # 0KB.
7775899Sjoeprogs rm
7875899Sjoeprogs ls
7975899Sjoeprogs kill
8075899Sjoeprogs df # 0KB.
8175899Sjoeprogs ps # 4KB.
8275899Sjoeprogs ns # 4KB.
8375899Sjoeln ns netstat
8475899Sjoeprogs vm # 0KB.
8575899Sjoeprogs cat # 0KB.
8675899Sjoeprogs test # 0KB.
8775899Sjoeln test [
8875899Sjoeprogs hostname # 0KB.
8975899Sjoeprogs login # 4KB.
9075899Sjoeprogs getty # 4KB.
9175899Sjoeprogs stty # 4KB.
9275899Sjoeprogs w # 0KB.
9375899Sjoeprogs msg # 0KB.
9475899Sjoeln msg dmesg
9575899Sjoeprogs reboot # 0KB.
9675899Sjoe#progs less # 36KB
9775899Sjoe#ln less more
9883086Sluigi#progs more # 12KB
9990661Sluigispecial more srcdir /usr/ports/misc/44bsd-more/work
10075899Sjoe
10175899Sjoeprogs sysctl
10275899Sjoeprogs swapon # 0KB.
10375899Sjoeprogs pwd_mkdb # 0KB.
10475899Sjoeprogs umount
10575899Sjoeprogs mount_std
10675899Sjoeprogs du # 0KB.
10775899Sjoeprogs tail # 0KB.
10875899Sjoeprogs tee # 0KB.
10975899Sjoeprogs passwd # 0KB.
11075899Sjoe
11175899Sjoeprogs route # 8KB
11277579Sru# progs mount_msdosfs
11375899Sjoe# progs comcontrol
11475899Sjoe#
11575899Sjoe# If you want to run natd, remember the alias library
11675899Sjoe#progs natd # 20KB
11775899Sjoe#libs -lalias	# natd
11875899Sjoe#
11975899Sjoe# ppp is rather large. Note that as of Jan.01, RELEASE_CRUNCH
12075899Sjoe# makes ppp not use libalias, so you cannot have aliasing.
12175899Sjoe#progs ppp # 112KB
12275899Sjoe
12375899Sjoe# You need an editor. ee is relatively small, though there are
12475899Sjoe# smaller ones. vi is much larger.
12575899Sjoe# The editor also usually need a curses library.
12675899Sjoeprogs ee # 32KB.
12775899Sjoelibs -lncurses
12875899Sjoe# progs vi # ??
12975899Sjoe# libs -lcurses # for vi
13075899Sjoe
13178544Sluigi#progs tcpdump # 100KB.
13275899Sjoespecial tcpdump srcdir /usr/src/usr.sbin/tcpdump/tcpdump
13375899Sjoe
13475899Sjoeprogs arp # 0KB.
13575899Sjoe
13675899Sjoeprogs disklabel # 4KB.
13775899Sjoeprogs fdisk # 4KB.
13875899Sjoeprogs vnconfig # 0KB.
13975899Sjoe
14091938Sluigi#progs grep # 16KB.
14175899Sjoeprogs date # 4KB.
14283086Sluigi#progs mount_nfs # 0KB.
14375899Sjoeln mount_nfs nfs
14475899Sjoeprogs ping # 4KB.
14575899Sjoe#progs routed # 32KB.
14675899Sjoeprogs ipfw # 12KB.
14775899Sjoeprogs traceroute # 0KB.
14875899Sjoe# progs mount_cd9660 # 4KB.
14975899Sjoe# ln mount_cd9660 cd9660
15075899Sjoe# progs newfs # 12KB.
15175899Sjoe#ln newfs mount_mfs
15275899Sjoeln chown chgrp
15377579Sru# ln mount_msdosfs msdos
15475899Sjoeln mount_std procfs
15575899Sjoeln mount_std mount_procfs
15675899Sjoe
15775899Sjoe# If you need to access the box remotely, and maybe copy files
15875899Sjoe# from/to it, you can use telnet, rsh or ssh.
15975899Sjoe# inetd is only needed for telnet and rshd
16090661Sluigi#progs inetd # 12KB.
16190661Sluigi#progs telnet # 20KB.
16290661Sluigi#progs telnetd # 12KB.
16375899Sjoe#progs ftp # 28KB.
16475899Sjoe#progs tar # 32KB.
16575899Sjoe
16675899Sjoe# Check the ssh license! If you want to use this,
16775899Sjoe# go to /usr/ports/security/ssh-picobsd, do a make extract configure
168102344Sluigi# You also need to install /usr/ports/math/libgmp-freebsd
169116688Sluigi#progs sshd	# includes ssh and scp
17075899Sjoespecial sshd objvar SSHD_OBJS
17175899Sjoespecial sshd srcdir /usr/ports/picobsd/ssh-picobsd/work/ssh-1.2.27
17275899Sjoespecial sshd objdir /usr/ports/picobsd/ssh-picobsd/work/ssh-1.2.27
17384171Sluigiln sshd ssh
17484171Sluigiln sshd ssh1
17584171Sluigiln sshd scp
176116688Sluigi#libs /usr/local/lib/libgmp.a
17775899Sjoe
178127350Sluigilibs -ll       # used by sh
179127350Sluigilibs -lufs     # used by mount
18075899Sjoe### ee uses ncurses instead of curses
181102344Sluigilibs -ledit -lutil -lmd -lcrypt -lmp -lm -lkvm
18275899Sjoelibs -lmytinfo -lipx -lz -lpcap -lwrap
18395047Srulibs -ltermcap -lgnuregex # -lcurses
184