1# really-big.conf - just about everything, just for testing. 2# This ends up having some good examples of the use of specials for 3# those hard-to-reach programs. I stopped when I got tired, but we 4# could probably get even more stuff (like libexec stuff) in here. 5# 6# This produces a 4608000 byte binary. Pretty sick and twisted, eh? 7# 8# $FreeBSD: head/usr.sbin/crunch/examples/really-big.conf 246256 2013-02-02 21:51:14Z pfg $ 9# 10 11# ========================================================================= 12 13srcdirs /usr/src/bin 14 15progs cat chmod cp csh date dd df domainname echo ed expr hostname kill 16progs ln ls mkdir mt mv ps pwd rm rmail rmdir sh sleep stty sync test 17 18ln test [ 19ln sh -sh 20 21 22# ========================================================================= 23 24srcdirs /usr/src/sbin 25 26progs badsect bim clri disklabel dmesg dump dumpfs fdisk fsck halt 27progs ifconfig init mknod modload modunload mount mount_isofs 28progs mount_lofs mount_msdosfs mountd 29progs newfs nfsd nfsiod ping quotacheck reboot restore route routed savecore 30progs shutdown swapon ttyflags tunefs umount 31# shell scripts: fastboot 32 33ln dump rdump 34ln restore rrestore 35 36 37# ========================================================================= 38 39srcdirs /usr/src/usr.bin 40 41progs apropos ar asa at basename biff cal calendar cap_mkdb chpass 42progs cksum cmp col colcrt colrm column comm compress crontab ctags cut 43progs dirname du env error expand false file find finger fmt fold fpr from 44progs fsplit fstat ftp getconf getopt gprof head hexdump id indent ipcrm 45progs ipcs join kdump ktrace last lastcomm leave lex lock logger locate 46progs login logname look m4 machine mail make man mesg mkfifo 47progs mkstr modstat more msgs netstat newsyslog nfsstat nice nm nohup 48progs pagesize passwd paste patch pr printenv printf quota ranlib 49progs renice rev rpcgen rpcinfo rup ruptime rusers rwall rwho 50progs script sed showmount size soelim split strings strip su tail talk 51progs tcopy tee telnet tftp time tip tn3270 touch tput tr true tset tsort 52progs tty ul uname unexpand unifdef uniq units unvis users uudecode uuencode 53progs vacation vi vis vmstat w wall wc what whatis whereis who 54progs whois window write xargs xinstall xstr yacc yes ypcat ypmatch ypwhich 55 56# shell scripts: lorder mkdep shar which 57# problems: rdist uses libcompat.a(regex.o), which conflicts with 58# libedit(readline.o) over regerror(). 59 60# special requirements 61 62special locate srcdir /usr/src/usr.bin/locate/locate 63special tn3270 srcdir /usr/src/usr.bin/tn3270/tn3270 64 65 66# ========================================================================= 67 68srcdirs /usr/src/usr.sbin 69 70progs ac accton amd arp bad144 chown chroot config config.new cron 71progs dev_mkdb diskpart edquota flcopy gettable grfinfo hilinfo htable inetd 72progs iostat iteconfig kvm_mkdb mtree named portmap 73progs pstat pwd_mkdb quot quotaon rarpd rbootd repquota rmt rpc.bootparamd 74progs rwhod sa spray sysctl syslogd tcpdump 75progs traceroute trpt update vipw vnconfig ypbind yppoll ypset 76 77special amd srcdir /usr/src/usr.sbin/amd/amd 78special amd objs vers.amd.o afs_ops.o am_ops.o clock.o util.o xutil.o efs_ops.o mapc.o info_file.o info_hes.o info_ndbm.o info_passwd.o info_nis.o info_union.o map.o srvr_afs.o srvr_nfs.o mntfs.o misc_rpc.o mount_fs.o mtab.o mtab_bsd.o nfs_ops.o nfs_prot_svc.o nfs_start.o nfs_subr.o opts.o pfs_ops.o rpc_fwd.o sched.o sfs_ops.o amq_svc.o amq_subr.o umount_fs.o host_ops.o nfsx_ops.o ufs_ops.o ifs_ops.o amd.o get_args.o restart.o wire.o 79 80 81srcdirs /usr/src/usr.sbin/lpr # lpr subsystem 82progs lpr lpc lpq lprm pac lptest 83special lpr srcdir /usr/src/usr.sbin/lpr/lpr 84 85srcdirs /usr/src/usr.sbin/sendmail # sendmail subsystem 86progs mailstats makemap praliases sendmail 87special sendmail srcdir /usr/src/usr.sbin/sendmail/src 88ln sendmail newaliases 89ln sendmail mailq 90 91srcdirs /usr/src/usr.sbin/xntpd # NTP subsystem 92# xntpd uses a gross hack to pass some information in the global 93# variable `progname' between the actual program (ntpdate in this 94# case), and the NTP library. Add `progname' to the keep list. 95progs ntpdate 96special ntpdate srcdir /usr/src/usr.sbin/xntpd/ntpdate 97special ntpdate keep progname 98libs -L/usr/src/usr.sbin/xntpd/lib -lntp 99 100srcdirs /usr/src/usr.sbin/yp # yp subsystem 101progs ypbind ypwhich ypcat ypmatch ypset yppoll 102 103 104# ========================================================================= 105 106srcdirs /usr/src/gnu/usr.bin 107 108progs bc cpio diff diff3 gas gawk grep gzip sdiff sort tar 109# shell scripts: send-pr 110 111srcdirs /usr/src/gnu/usr.bin/ld # ldd and ldconfig 112progs ld ldd ldconfig 113 114# rcs stuff loses because there are cross dependencies between librcs.a and 115# the individual programs. The solution would be to specify the objpaths 116# directly for each one, and include the full path to librcs.a each the 117# objpaths. 118 119# srcdirs /usr/src/gnu/usr.bin/rcs # rcs subsystem 120# progs ci co ident merge rcs rcsclean rcsdiff rcsmerge rlog 121# # shell script: rcsfreeze 122# special rcs srcdir /usr/src/gnu/usr.bin/rcs/rcs 123# libs /usr/src/gnu/usr.bin/rcs/lib/obj/librcs.a 124 125# gdb loses too 126# progs gdb 127# special gdb srcdir /usr/src/gnu/usr.bin/gdb/gdb 128# libs /usr/src/gnu/usr.bin/gdb/bfd/obj/libbfd.a 129# libs /usr/src/gnu/usr.bin/gdb/readline/obj/libreadline.a 130# libs /usr/src/gnu/usr.bin/gdb/libiberty/obj/libiberty.a 131 132srcdirs /usr/src/gnu/usr.bin/gcc2 # gcc & friends 133progs cc cpp cc1 134 135# cc1 has the same problem as rcs, but since there's only one program 136# I'll go ahead and solve it as an example. 137 138special cc1 objpaths /usr/src/gnu/usr.bin/gcc2/cc1/obj/c-parse.o /usr/src/gnu/usr.bin/gcc2/cc1/obj/c-lang.o /usr/src/gnu/usr.bin/gcc2/cc1/obj/c-lex.o /usr/src/gnu/usr.bin/gcc2/cc1/obj/c-pragma.o /usr/src/gnu/usr.bin/gcc2/cc1/obj/c-decl.o /usr/src/gnu/usr.bin/gcc2/cc1/obj/c-typeck.o /usr/src/gnu/usr.bin/gcc2/cc1/obj/c-convert.o /usr/src/gnu/usr.bin/gcc2/cc1/obj/c-aux-info.o /usr/src/gnu/usr.bin/gcc2/cc1/obj/c-iterate.o /usr/src/gnu/usr.bin/gcc2/common/obj/libcc1.a 139 140ln gzip gunzip 141ln gzip gzcat 142 143libs -lprivate_edit -lgnumalloc -lc -lcrypt -lprivate_ncurses -ltelnet -lutil -lkvm 144libs -ll -ly -lm -lresolv -lrpcsvc -lcompat 145