11.2Sperry$NetBSD: README,v 1.2 1997/08/02 21:30:08 perry Exp $ 21.1Scgd 31.1ScgdCRUNCH 0.3 README 7/23/94 41.1Scgd 51.1ScgdCrunch is available via anonymous ftp to ftp.cs.umd.edu in 61.1Scgd pub/bsd/crunch-0.3.tar.gz 71.1Scgd 81.1ScgdWHAT'S NEW IN 0.3 91.1Scgd 101.1Scgd* The prototype awk script has been replaced by a more capable and 111.1Scgd hopefully more robust C program. 121.1Scgd* No fragile template makefiles or dependencies on the details of the 131.1Scgd bsd build environment. 141.1Scgd* You can build crunched binaries even with no sources on-line, you 151.1Scgd just need the .o files. Crunchgen still will try to figure out as 161.1Scgd much as possible on its own, but you can override its guessing by 171.1Scgd specifying the list of .o files explicitly. 181.1Scgd* Crunch itself has been bmake'd and some man pages written, so it 191.1Scgd should be ready to install. 201.1Scgd* Added patch for FreeBSD from Jordan Hubbard, plus the .conf files used 211.1Scgd for the FreeBSD install floppies as examples. 221.1Scgd 231.1Scgd 241.1ScgdINTRODUCTION 251.1Scgd 261.1ScgdCrunch is a little package that helps create "crunched" binaries for use 271.1Scgdon boot, install, and fixit floppies. A crunched binary in this case is 281.1Scgdone where many programs have been linked together into one a.out file. 291.1ScgdThe different programs are run depending on the value of argv[0], so 301.1Scgdhard links to the crunched binary suffice to simulate a perfectly normal 311.1Scgdsystem. 321.1Scgd 331.1ScgdAs an example, I have created an 980K crunched "fixit" binary containing 341.1Scgdthe following programs in their entirety: 351.1Scgd 361.1Scgd cat chmod cp date dd df echo ed expr hostname kill ln ls mkdir 371.1Scgd mt mv pwd rcp rm rmdir sh sleep stty sync test [ badsect chown 381.1Scgd clri disklabel dump rdump dmesg fdisk fsck halt ifconfig init 391.1Scgd mknod mount newfs ping reboot restore rrestore swapon umount 401.1Scgd ftp rsh sed telnet rlogin vi cpio gzip gunzip gzcat 411.1Scgd 421.1ScgdNote carefully: vi, cpio, gzip, ed, sed, dump/restore, some networking 431.1Scgdutilities, and the disk management utilities, all in a binary small 441.1Scgdenough to fit on a 1.2 MB root filesystem floppy (albeit with the kernel 451.1Scgdon its own boot floppy). A more reasonable subset can be made to fit 461.1Scgdeasily with a kernel for a decent one-disk fixit filesystem. 471.1Scgd 481.1ScgdThe linking together of different programs by hand is an old 491.1Scgdspace-saving technique. Crunch automates the process by building the 501.1Scgdnecessary stub files and makefile for you (via the crunchgen program), 511.1Scgdand by doctoring the symbol tables of the component .o files to allow 521.1Scgdthem to link without "symbol multiply defined" conflicts (via the 531.1Scgdcrunchide program). 541.1Scgd 551.1Scgd 561.1ScgdBUILDING CRUNCH 571.1Scgd 581.1ScgdJust type make, then make install. 591.1Scgd 601.1ScgdCrunch was written and tested under NetBSD/i386, but should work under 611.1Scgdother PC BSD systems that use GNU ld. 621.1Scgd 631.1ScgdThe crunchgen(1) and crunchide(1) man pages have more details on using 641.1Scgdcrunch, and the examples subdirectory contains some working .conf files 651.1Scgdand a sample Makefile. 661.1Scgd 671.1ScgdCREDITS 681.1Scgd 691.1ScgdThanks to the NetBSD team for a consistently high quality effort in 701.1Scgdbringing together a solid, state of the art development environment. 711.1Scgd 721.1ScgdThanks to the FreeBSD guys; Rod Grimes, Nate Williams and Jordan 731.1ScgdHubbard; and to Bruce Evans, for immediate and detailed feedback on 741.1Scgdcrunch 0.1, and for pressing me to make the prototype more useable. 751.1Scgd 761.1ScgdCrunch was written for the Maruti Hard Real-Time Operating System 771.1Scgdproject at the University of Maryland, to help make for better install 781.1Scgdand recovery procedures for our NetBSD-based development environment. It 791.1Scgdis copyright (c) 1994 by the University of Maryland under a UCB-style 801.1Scgdfreely- redistributable notice. See the file COPYRIGHT for details. 811.1Scgd 821.1ScgdPlease let me know of any problems or of enhancements you make to this 831.1Scgdpackage. I'm particularly interested in the details of what you found 841.1Scgdwas good to put on your fixit or install disks. Thanks! 851.1Scgd 861.1ScgdShare and Enjoy, 871.1ScgdJaime 881.1Scgd............................................................................ 891.1Scgd: Stand on my shoulders, : jds@cs.umd.edu : James da Silva 901.1Scgd: not on my toes. : uunet!mimsy!jds : http://www.cs.umd.edu/users/jds 911.2Sperry 92