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# ========================================================================= 9 10srcdirs /usr/src/bin 11 12progs cat chmod cp csh date dd df domainname echo ed expr hostname kill 13progs ln ls mkdir mt mv ps pwd rcp rm rmail rmdir sh sleep stty sync test 14 15ln test [ 16ln sh -sh 17 18 19# ========================================================================= 20 21srcdirs /usr/src/sbin 22 23progs badsect bim clri disklabel dmesg dump dumpfs fdisk fsck halt 24progs ifconfig init mknod modload modunload mount mount_fdesc mount_isofs 25progs mount_kernfs mount_lofs mount_msdos mount_portal mount_procfs mountd 26progs newfs nfsd nfsiod ping quotacheck reboot restore route routed savecore 27progs shutdown slattach swapon ttyflags tunefs umount 28# shell scripts: fastboot 29 30ln dump rdump 31ln restore rrestore 32 33 34# ========================================================================= 35 36srcdirs /usr/src/usr.bin 37 38progs apropos ar asa at basename biff cal calendar cap_mkdb checknr chpass 39progs cksum cmp col colcrt colrm column comm compress crontab ctags cut 40progs dirname du env error expand false file find finger fmt fold fpr from 41progs fsplit fstat ftp getconf getopt gprof head hexdump id indent ipcrm 42progs ipcs join kdump ktrace last lastcomm leave lex lock logger locate 43progs login logname look m4 machine mail make man mesg mkfifo 44progs mkstr modstat more msgs netstat newsyslog nfsstat nice nm nohup 45progs pagesize passwd paste patch pr printenv printf quota ranlib 46progs renice rev rlogin rpcgen rpcinfo rsh rup ruptime rusers rwall rwho 47progs script sed showmount size soelim split strings strip su tail talk 48progs tcopy tee telnet tftp time tip tn3270 touch tput tr true tset tsort 49progs tty ul uname unexpand unifdef uniq units unvis users uudecode uuencode 50progs vacation vgrind vi vis vmstat w wall wc what whatis whereis who 51progs whois window write xargs xinstall xstr yacc yes ypcat ypmatch ypwhich 52 53# shell scripts: lorder mkdep shar which 54# problems: rdist uses libcompat.a(regex.o), which conflicts with 55# libedit(readline.o) over regerror(). 56 57# special requirements 58 59special locate srcdir /usr/src/usr.bin/locate/locate 60special tn3270 srcdir /usr/src/usr.bin/tn3270/tn3270 61 62 63# ========================================================================= 64 65srcdirs /usr/src/usr.sbin 66 67progs ac accton amd arp bad144 catman chown chroot config config.new cron 68progs dev_mkdb diskpart edquota flcopy gettable grfinfo hilinfo htable inetd 69progs iostat iteconfig kvm_mkdb mrouted mtree named portmap pppd 70progs pstat pwd_mkdb quot quotaon rarpd rbootd repquota rmt rpc.bootparamd 71progs rwhod sa sliplogin slstats spray sysctl syslogd tcpdump 72progs traceroute trpt trsp update vipw vnconfig ypbind yppoll ypset 73 74special amd srcdir /usr/src/usr.sbin/amd/amd 75special 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 76 77 78srcdirs /usr/src/usr.sbin/lpr # lpr subsystem 79progs lpr lpc lpq lprm pac lptest 80special lpr srcdir /usr/src/usr.sbin/lpr/lpr 81 82srcdirs /usr/src/usr.sbin/sendmail # sendmail subsystem 83progs mailstats makemap praliases sendmail 84special sendmail srcdir /usr/src/usr.sbin/sendmail/src 85ln sendmail newaliases 86ln sendmail mailq 87 88srcdirs /usr/src/usr.sbin/timed # timed & timedc 89progs timed timedc 90special timed srcdir /usr/src/usr.sbin/timed/timed 91 92srcdirs /usr/src/usr.sbin/xntpd # NTP subsystem 93# xntpd uses a gross hack to pass some information in the global 94# variable `progname' between the actual program (ntpdate in this 95# case), and the NTP library. Add `progname' to the keep list. 96progs ntpdate 97special ntpdate srcdir /usr/src/usr.sbin/xntpd/ntpdate 98special ntpdate keep progname 99libs -L/usr/src/usr.sbin/xntpd/lib -lntp 100 101srcdirs /usr/src/usr.sbin/yp # yp subsystem 102progs ypbind ypwhich ypcat ypmatch ypset yppoll 103 104 105# ========================================================================= 106 107srcdirs /usr/src/gnu/usr.bin 108 109progs bc cpio diff diff3 gas gawk grep gzip sdiff sort tar 110# shell scripts: send-pr 111 112srcdirs /usr/src/gnu/usr.bin/ld # ldd and ldconfig 113progs ld ldd ldconfig 114 115# rcs stuff loses because there are cross dependencies between librcs.a and 116# the individual programs. The solution would be to specify the objpaths 117# directly for each one, and include the full path to librcs.a each the 118# objpaths. 119 120# srcdirs /usr/src/gnu/usr.bin/rcs # rcs subsystem 121# progs ci co ident merge rcs rcsclean rcsdiff rcsmerge rlog 122# # shell script: rcsfreeze 123# special rcs srcdir /usr/src/gnu/usr.bin/rcs/rcs 124# libs /usr/src/gnu/usr.bin/rcs/lib/obj/librcs.a 125 126# gdb loses too 127# progs gdb 128# special gdb srcdir /usr/src/gnu/usr.bin/gdb/gdb 129# libs /usr/src/gnu/usr.bin/gdb/bfd/obj/libbfd.a 130# libs /usr/src/gnu/usr.bin/gdb/readline/obj/libreadline.a 131# libs /usr/src/gnu/usr.bin/gdb/libiberty/obj/libiberty.a 132 133# groff has the same problem as rcs 134# srcdirs /usr/src/gnu/usr.bin/groff # groff subsystem 135# progs groff troff tbl pic eqn grops grotty grodvi refer lookbib 136# progs indxbib lkbib tfmtodit addftinfo pfbtops psbb 137# shell script: nroff 138# special groff srcdir /usr/src/gnu/usr.bin/groff/groff 139# libs /usr/src/gnu/usr.bin/groff/libgroff/obj/libgroff.a 140# libs /usr/src/gnu/usr.bin/groff/libbib/obj/libbib.a 141# libs /usr/src/gnu/usr.bin/groff/libdriver/obj/libdriver.a 142 143srcdirs /usr/src/gnu/usr.bin/gcc2 # gcc & friends 144progs cc cpp cc1 145 146# cc1 has the same problem as rcs and groff, but since there's only one program 147# I'll go ahead and solve it as an example. 148 149special 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 150 151ln gzip gunzip 152ln gzip gzcat 153 154libs -ledit -lgnumalloc -lc -lcrypt -ltermcap -lcurses -ltelnet -lutil -lkvm 155libs -ll -ly -lm -lresolv -lrpcsvc -lcompat 156