Deleted Added
full compact
crunch.conf (190385) crunch.conf (190421)
1#
1#
2# $FreeBSD: head/release/picobsd/bridge/crunch.conf 190385 2009-03-24 18:02:35Z luigi $
2# $FreeBSD: head/release/picobsd/bridge/crunch.conf 190421 2009-03-25 18:48:46Z luigi $
3#
3#
4# configuration file for "bridge" floppy.
5# Depending on your needs, almost surely you will need to
6# modify your configuration to add/remove/change programs used in
7# the floppy image. Remember that some programs also require
8# matching kernel options to enable device drivers etc.
4# Configuration file for "bridge" images..
9#
5#
10# Next to most of the programs i have tried to indicate the approximate
11# space consumed, but beware that these values change from release
12# to release, and might depend on the presence of other programs which
13# share the same libraries.
6# Depending on your needs, you will almost surely need to
7# add/remove/change programs according to your needs.
8# Remember that some programs require matching kernel options to
9# enable device drivers etc.
14#
10#
15# NOTE: the string "/usr/src" will be automatically replaced with the
16# correct value set in 'build' script - you should change it there
11# To figure out how much space is used by each program, do
12#
13# size build_dir-bridge/crunch/*lo
14#
15# Remember that programs require libraries, which add up to the
16# total size. The final binary is build_dir-bridge/mfs.tree/stand/crunch
17# and you can check which libraries it uses with
18#
19# ldd build_dir-bridge/mfs.tree/stand/crunch
17
20
18# Default build options. Basically tell the Makefiles which understand
19# that to use the most compact possible version of the code.
21# crunchgen configuration to build the crunched binary, see "man crunchgen"
22# We need to specify generic build options, the places where to look
23# for sources, and the list of program and libraries we want to put
24# in the crunched binary.
20#
25#
21buildopts -DNO_PAM -DRELEASE_CRUNCH -DPPP_NO_NETGRAPH -DTRACEROUTE_NO_IPSEC -DNO_INET6
26# NOTE: the string "/usr/src" below will be automatically replaced with
27# the path set in the 'build' script.
28
29# Default build options. Basically tell the Makefiles
30# that to use the most compact possible version of the code.
31
32buildopts -DNO_PAM -DRELEASE_CRUNCH -DPPP_NO_NETGRAPH
33buildopts -DTRACEROUTE_NO_IPSEC -DNO_INET6
22buildopts -DWITHOUT_IPX
23
34buildopts -DWITHOUT_IPX
35
24# directories where to look for sources of various binaries.
36# Directories where to look for sources of various binaries.
25# @__CWD__@ is a magic keyword in the picobsd's (Makefile.conf)
37# @__CWD__@ is a magic keyword in the picobsd's (Makefile.conf)
26# which is replaced with the picobsd directory.
38# which is replaced with the directory with the picobsd configuration
39# corresponding to your image. This way you can have custom sources
40# in that directory overriding system programs.
41
27srcdirs @__CWD__@/src
28
42srcdirs @__CWD__@/src
43
29# Some programs are especially written for PicoBSD and reside here
30# Make this first in the list so we can override standard programs
31# with the picobsd-specific ones.
44# Some programs are especially written for PicoBSD and reside in
45# release/picobsd/tinyware.
46# Put this entry near the head of the list to override standard binaries.
47
32srcdirs /usr/src/release/picobsd/tinyware
33
48srcdirs /usr/src/release/picobsd/tinyware
49
34#
35# standard locations
36#
50# Other standard locations for sources.
51# If a program uses its own source directory, add
52
37srcdirs /usr/src/bin
38srcdirs /usr/src/sbin/i386
39srcdirs /usr/src/sbin
40srcdirs /usr/src/usr.bin
41srcdirs /usr/src/gnu/usr.bin
42srcdirs /usr/src/usr.sbin
43srcdirs /usr/src/libexec
53srcdirs /usr/src/bin
54srcdirs /usr/src/sbin/i386
55srcdirs /usr/src/sbin
56srcdirs /usr/src/usr.bin
57srcdirs /usr/src/gnu/usr.bin
58srcdirs /usr/src/usr.sbin
59srcdirs /usr/src/libexec
44#
45# And there are others (mostly ports) which reside in their specific
46# directories. For them, we use the "special" commands to tell
47# crunchgen where to look for sources, objects, which Makefile
48# variables contain the list of sources and objects, and so on.
49
60
50# init is almost always necessary.
61# For programs that reside in different places, the best option
62# is to use the command "special XXX srcdir YYY" where XXX is the
63# program name and YYY is the directory path.
64# "special XXX ..." can be used to specify more options, see again
65# the crunchgen manpage.
66
67#--- Basic configuraton
68# init is always necessary (unless you have a replacement, oinit)
51progs init
69progs init
70
52# fsck is almost always necessary, unless you have everything on the
53# image and use 'tar' or something similar to read/write raw blocks
54# from the floppy.
71# fsck is almost always necessary, unless you have everything on the
72# image and use 'tar' or something similar to read/write raw blocks
73# from the floppy.
74
55progs fsck
75progs fsck
56# ifconfig is needed if you want to configure interfaces...
76
77# ifconfig is needed if you want to configure interfaces.
57progs ifconfig
78progs ifconfig
58#
79
59# You will also need a shell and a bunch of utilities.
60# The standard shell is not that large, but you need many
61# external programs. In fact most of them do not take much space
80# You will also need a shell and a bunch of utilities.
81# The standard shell is not that large, but you need many
82# external programs. In fact most of them do not take much space
62# as they merely issue a system call, and print the result; the
63# libraries are already needed anyways, so they end up using almost
64# no additional memory.
65# There are a few exceptions such as 'less', which in 4.x is
66# rather large.
83# as they merely issue a system call, and print the result.
84# For a more compact version of shell and utilities, you could
85# try busybox, however most system management commands in busybox
86# will not work as they use linux-specific interfaces.
87
67progs sh
68ln sh -sh
88progs sh
89ln sh -sh
90
91# the small utilities
69progs echo
92progs echo
70progs pwd
71progs mkdir rmdir
93progs pwd mkdir rmdir
72progs chmod chown
94progs chmod chown
73progs mv ln
95ln chown chgrp
96progs mv ln cp rm ls
97progs cat tail tee
98progs test
99ln test [
100
74progs mount
75progs minigzip
76ln minigzip gzip
101progs mount
102progs minigzip
103ln minigzip gzip
77progs cp
78progs rm
79progs ls
80progs kill
81progs df
82progs ps
104progs kill
105progs df
106progs ps
83progs ns
107progs ns # this is the
84ln ns netstat
85progs vm
108ln ns netstat
109progs vm
86progs cat
87progs test
88ln test [
89progs hostname
90progs login
91progs getty
92progs stty
93progs w
94progs msg
95ln msg dmesg
96progs reboot
110progs hostname
111progs login
112progs getty
113progs stty
114progs w
115progs msg
116ln msg dmesg
117progs reboot
97progs less
98#ln less more
99#progs more
100special more srcdir /usr/ports/misc/44bsd-more/work
101
102progs sysctl
103progs swapon
104progs pwd_mkdb
105progs umount
106progs du
118
119progs sysctl
120progs swapon
121progs pwd_mkdb
122progs umount
123progs du
107progs tail
108progs tee
109progs passwd
110
111progs route
124progs passwd
125
126progs route
112# progs mount_msdosfs
113# progs comcontrol
114#
127
115# If you want to run natd, remember the alias library
116#progs natd
128# If you want to run natd, remember the alias library
129#progs natd
117#libs -lalias # natd
118#
130#libs_so -lalias # natd
131
119# ppp is rather large. Note that as of Jan.01, RELEASE_CRUNCH
120# makes ppp not use libalias, so you cannot have aliasing.
121#progs ppp
122
123# You need an editor. ee is relatively small, though there are
124# smaller ones. vi is much larger.
125# The editor also usually need a curses library.
126progs ee
132# ppp is rather large. Note that as of Jan.01, RELEASE_CRUNCH
133# makes ppp not use libalias, so you cannot have aliasing.
134#progs ppp
135
136# You need an editor. ee is relatively small, though there are
137# smaller ones. vi is much larger.
138# The editor also usually need a curses library.
139progs ee
127libs -lncurses
128# progs vi
129# libs -lcurses # for vi
130
140
131#progs tcpdump
132special tcpdump srcdir /usr/src/usr.sbin/tcpdump/tcpdump
133
134progs arp
135
141progs arp
142
136progs bsdlabel
137progs fdisk
138progs mdconfig
143# these require libgeom
144# progs bsdlabel fdisk mdconfig
139
145
146progs kldload kldunload kldstat
147progs kldxref
140#progs grep
141progs date
148#progs grep
149progs date
142#progs mount_nfs
143ln mount_nfs nfs
144progs ping
145#progs routed
146progs ipfw
147progs traceroute
150progs ping
151#progs routed
152progs ipfw
153progs traceroute
154progs mdmfs
155ln mdmfs mount_mfs
156# Various filesystem support -- remember to enable the kernel parts
157# progs mount_msdosfs
158progs mount_nfs
148# progs mount_cd9660
159# progs mount_cd9660
149# ln mount_cd9660 cd9660
150# progs newfs
160ln mount_nfs nfs
161ln mount_cd9660 cd9660
162#progs newfs
151#ln newfs mount_mfs
163#ln newfs mount_mfs
152ln chown chgrp
153# ln mount_msdosfs msdos
154
164# ln mount_msdosfs msdos
165
166# For a small ssh client/server use dropbear
155
167
156libs -ll # used by sh
157libs -lufs # used by mount
158### ee uses ncurses instead of curses
159libs -ledit -lutil -lmd -lcrypt -lmp -lm -lkvm
160# libs -lmytinfo
161libs -lz -lpcap -lwrap
162libs -ltermcap -lgnuregex # -lcurses
163libs -lgeom
164libs -lsbuf
165libs -lbsdxml # used by ifconfig
168# Now the libraries
169libs_so -lc # the C library
170libs_so -ll # used by sh (really ?)
171libs_so -lufs # used by mount
172### ee uses ncurses but as a dependency
173#libs_so -lncurses
174libs_so -lm
175libs_so -ledit -lutil
176libs_so -lcrypt
177libs_so -lkvm
178libs_so -lz
179libs_so -lbsdxml
180libs_so -lsbuf