Deleted Added
full compact
crunch.conf (263140) crunch.conf (267147)
1#
1#
2# $FreeBSD: head/release/picobsd/qemu/crunch.conf 263140 2014-03-14 02:58:48Z glebius $
2# $FreeBSD: head/release/picobsd/qemu/crunch.conf 267147 2014-06-06 04:09:07Z imp $
3#
4# Configuration file for "qemu" images..
5#
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.
10#
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
20
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.
25#
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 -DWITHOUT_PAM -DRELEASE_CRUNCH -DPPP_NO_NETGRAPH
33buildopts -DTRACEROUTE_NO_IPSEC -DNO_INET6
3#
4# Configuration file for "qemu" images..
5#
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.
10#
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
20
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.
25#
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 -DWITHOUT_PAM -DRELEASE_CRUNCH -DPPP_NO_NETGRAPH
33buildopts -DTRACEROUTE_NO_IPSEC -DNO_INET6
34buildopts -DWITHOUT_KERBEROS -DWITHOUT_OPENSSL
34
35# Directories where to look for sources of various binaries.
36# @__CWD__@ is a magic keyword in the picobsd's (Makefile.conf)
37# which is replaced with the directory with the picobsd configuration
38# corresponding to your image. This way you can have custom sources
39# in that directory overriding system programs.
40
41srcdirs @__CWD__@/src
42
43# Some programs are especially written for PicoBSD and reside in
44# release/picobsd/tinyware.
45# Put this entry near the head of the list to override standard binaries.
46
47srcdirs /usr/src/release/picobsd/tinyware
48
49# Other standard locations for sources.
50# If a program uses its own source directory, add
51
52srcdirs /usr/src/bin
53srcdirs /usr/src/sbin/i386
54srcdirs /usr/src/sbin
55srcdirs /usr/src/usr.bin
56srcdirs /usr/src/gnu/usr.bin
57srcdirs /usr/src/usr.sbin
58srcdirs /usr/src/libexec
59
60# For programs that reside in different places, the best option
61# is to use the command "special XXX srcdir YYY" where XXX is the
62# program name and YYY is the directory path.
63# "special XXX ..." can be used to specify more options, see again
64# the crunchgen manpage.
65
66#--- Basic configuraton
67# init is always necessary (unless you have a replacement, oinit)
68progs init
69
70# fsck is almost always necessary, unless you have everything on the
71# image and use 'tar' or something similar to read/write raw blocks
72# from the floppy.
73
74progs fsck
75
76# ifconfig is needed if you want to configure interfaces.
77progs ifconfig
78
79# You will also need a shell and a bunch of utilities.
80# The standard shell is not that large, but you need many
81# external programs. In fact most of them do not take much space
82# as they merely issue a system call, and print the result.
83# For a more compact version of shell and utilities, you could
84# try busybox, however most system management commands in busybox
85# will not work as they use linux-specific interfaces.
86
87progs sh
88ln sh -sh
89
90# the small utilities
91progs echo
92progs pwd mkdir rmdir
93progs chmod chown
94ln chown chgrp
95progs mv ln cp rm ls
96progs cat tail tee
97progs test
98ln test [
99
100progs less
101ln less more
102progs mount
103progs minigzip
104ln minigzip gzip
105progs kill
106progs df
107progs ps
108progs ns # this is the picobsd version
109ln ns netstat
110progs vm
111progs hostname
112progs login
113progs getty
114progs stty
115progs w
116progs msg
117ln msg dmesg
118progs reboot
119
120progs sysctl
121progs swapon
122progs pwd_mkdb
123progs umount
124progs du
125progs passwd
126
127progs route
128
129# If you want to run natd, remember the alias library
130progs natd
131libs_so -lalias # natd
132progs tcpdump
133special tcpdump srcdir /usr/src/usr.sbin/tcpdump/tcpdump
134libs_so -lpcap # used by tcpdump
135libs_so -lcrypto # used by tcpdump with inet6
136
137# ppp is rather large. Note that as of Jan.01, RELEASE_CRUNCH
138# makes ppp not use libalias, so you cannot have aliasing.
139#progs ppp
140
141# You need an editor. ee is relatively small, though there are
142# smaller ones. vi is much larger.
143# The editor also usually need a curses library.
144progs ee
145
146progs arp
147
148# these require libgeom
149# progs bsdlabel fdisk mdconfig
150
151progs kldload kldunload kldstat
152progs kldxref
153progs grep
154libs_so -lgnuregex -lbz2
155# dhclient-script requires 'sed'
156progs dhclient
157progs sed
158progs date
159progs time
160progs ping
161progs ping6
162progs tar
163
164#progs routed
165progs ipfw
166progs traceroute
167progs mdmfs
168ln mdmfs mount_mfs
169# Various filesystem support -- remember to enable the kernel parts
170# progs mount_msdosfs
171progs mount_nfs
172# progs mount_cd9660
173ln mount_nfs nfs
174ln mount_cd9660 cd9660
175#progs newfs
176#ln newfs mount_mfs
177# ln mount_msdosfs msdos
178
179# For a small ssh client/server use dropbear
180progs jail jexec jls # why not...
181
182
183# Now the libraries
184libs_so -lc # the C library
185libs_so -ll # used by sh (really ?)
186libs_so -lufs # used by mount
187### ee uses ncurses but as a dependency
188#libs_so -lncurses
189libs_so -lm
190libs_so -ledit -lutil
191libs_so -lcrypt
192libs_so -lkvm
193libs_so -lz
194libs_so -lbsdxml
195libs_so -lsbuf
196libs_so -ljail # used by ifconfig
197libs_so -lipsec -lmd # used with ipv6
198libs_so -larchive -lbz2
199libs_so -llzma # added after 207840
35
36# Directories where to look for sources of various binaries.
37# @__CWD__@ is a magic keyword in the picobsd's (Makefile.conf)
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
42srcdirs @__CWD__@/src
43
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
48srcdirs /usr/src/release/picobsd/tinyware
49
50# Other standard locations for sources.
51# If a program uses its own source directory, add
52
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
60
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)
69progs init
70
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
75progs fsck
76
77# ifconfig is needed if you want to configure interfaces.
78progs ifconfig
79
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
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
88progs sh
89ln sh -sh
90
91# the small utilities
92progs echo
93progs pwd mkdir rmdir
94progs chmod chown
95ln chown chgrp
96progs mv ln cp rm ls
97progs cat tail tee
98progs test
99ln test [
100
101progs less
102ln less more
103progs mount
104progs minigzip
105ln minigzip gzip
106progs kill
107progs df
108progs ps
109progs ns # this is the picobsd version
110ln ns netstat
111progs vm
112progs hostname
113progs login
114progs getty
115progs stty
116progs w
117progs msg
118ln msg dmesg
119progs reboot
120
121progs sysctl
122progs swapon
123progs pwd_mkdb
124progs umount
125progs du
126progs passwd
127
128progs route
129
130# If you want to run natd, remember the alias library
131progs natd
132libs_so -lalias # natd
133progs tcpdump
134special tcpdump srcdir /usr/src/usr.sbin/tcpdump/tcpdump
135libs_so -lpcap # used by tcpdump
136libs_so -lcrypto # used by tcpdump with inet6
137
138# ppp is rather large. Note that as of Jan.01, RELEASE_CRUNCH
139# makes ppp not use libalias, so you cannot have aliasing.
140#progs ppp
141
142# You need an editor. ee is relatively small, though there are
143# smaller ones. vi is much larger.
144# The editor also usually need a curses library.
145progs ee
146
147progs arp
148
149# these require libgeom
150# progs bsdlabel fdisk mdconfig
151
152progs kldload kldunload kldstat
153progs kldxref
154progs grep
155libs_so -lgnuregex -lbz2
156# dhclient-script requires 'sed'
157progs dhclient
158progs sed
159progs date
160progs time
161progs ping
162progs ping6
163progs tar
164
165#progs routed
166progs ipfw
167progs traceroute
168progs mdmfs
169ln mdmfs mount_mfs
170# Various filesystem support -- remember to enable the kernel parts
171# progs mount_msdosfs
172progs mount_nfs
173# progs mount_cd9660
174ln mount_nfs nfs
175ln mount_cd9660 cd9660
176#progs newfs
177#ln newfs mount_mfs
178# ln mount_msdosfs msdos
179
180# For a small ssh client/server use dropbear
181progs jail jexec jls # why not...
182
183
184# Now the libraries
185libs_so -lc # the C library
186libs_so -ll # used by sh (really ?)
187libs_so -lufs # used by mount
188### ee uses ncurses but as a dependency
189#libs_so -lncurses
190libs_so -lm
191libs_so -ledit -lutil
192libs_so -lcrypt
193libs_so -lkvm
194libs_so -lz
195libs_so -lbsdxml
196libs_so -lsbuf
197libs_so -ljail # used by ifconfig
198libs_so -lipsec -lmd # used with ipv6
199libs_so -larchive -lbz2
200libs_so -llzma # added after 207840