Name Date Size #Lines LOC

..07-Jun-2024-

MakefileH A D08-May-2022339 138

READMEH A D08-May-20223.7 KiB9067

crunched_main.cH A D08-May-20223 KiB10658

crunchgen.8H A D08-May-202210 KiB328324

crunchgen.cH A D03-Jun-202425.9 KiB1,058874

crunchide.cH A D08-May-20225.6 KiB230143

elf_hide.cH A D08-May-202211.3 KiB446369

mangle.cH A D08-May-20223.6 KiB14986

mangle.hH A D08-May-20221.5 KiB324

mkskel.shH A D08-May-2022280 189

README

1
2CRUNCH 0.3 README				7/23/94
3
4Crunch is available via anonymous ftp to ftp.cs.umd.edu in
5		pub/bsd/crunch-0.3.tar.gz
6
7WHAT'S NEW IN 0.3
8
9* The prototype awk script has been replaced by a more capable and
10  hopefully more robust C program.
11* No fragile template makefiles or dependencies on the details of the
12  bsd build environment.
13* You can build crunched binaries even with no sources on-line, you
14  just need the .o files.  Crunchgen still will try to figure out as
15  much as possible on its own, but you can override its guessing by
16  specifying the list of .o files explicitly.
17* Crunch itself has been bmake'd and some man pages written, so it
18  should be ready to install.
19* Added patch for FreeBSD from Jordan Hubbard, plus the .conf files used
20  for the FreeBSD install floppies as examples.
21
22
23INTRODUCTION
24
25Crunch is a little package that helps create "crunched" binaries for use
26on boot, install, and fixit floppies.  A crunched binary in this case is
27one where many programs have been linked together into one a.out file.
28The different programs are run depending on the value of argv[0], so
29hard links to the crunched binary suffice to simulate a perfectly normal
30system.
31
32As an example, I have created an 980K crunched "fixit" binary containing
33the following programs in their entirety:
34
35	cat chmod cp date dd df echo ed expr hostname kill ln ls mkdir
36	mt mv pwd rcp rm rmdir sh sleep stty sync test [ badsect
37	clri disklabel dump rdump dmesg fdisk fsck halt ifconfig init
38	mknod mount newfs ping reboot restore rrestore swapon umount
39	ftp rsh sed telnet rlogin vi cpio gzip gunzip gzcat
40
41Note carefully: vi, cpio, gzip, ed, sed, dump/restore, some networking
42utilities, and the disk management utilities, all in a binary small
43enough to fit on a 1.2 MB root filesystem floppy (albeit with the kernel
44on its own boot floppy).  A more reasonable subset can be made to fit
45easily with a kernel for a decent one-disk fixit filesystem.
46
47The linking together of different programs by hand is an old
48space-saving technique.	 Crunch automates the process by building the
49necessary stub files and makefile for you (via the crunchgen program),
50and by doctoring the symbol tables of the component .o files to allow
51them to link without "symbol multiply defined" conflicts (via the
52crunchide program).
53
54
55BUILDING CRUNCH
56
57Just type make, then make install.
58
59Crunch was written and tested under NetBSD/i386, but should work under
60other PC BSD systems that use GNU ld.
61
62The crunchgen(1) and crunchide(1) man pages have more details on using
63crunch, and the examples subdirectory contains some working .conf files
64and a sample Makefile.
65
66CREDITS
67
68Thanks to the NetBSD team for a consistently high quality effort in
69bringing together a solid, state of the art development environment.
70
71Thanks to the FreeBSD guys; Rod Grimes, Nate Williams and Jordan
72Hubbard; and to Bruce Evans, for immediate and detailed feedback on
73crunch 0.1, and for pressing me to make the prototype more useable.
74
75Crunch was written for the Maruti Hard Real-Time Operating System
76project at the University of Maryland, to help make for better install
77and recovery procedures for our NetBSD-based development environment. It
78is copyright (c) 1994 by the University of Maryland under a UCB-style
79freely- redistributable notice.	 See the file COPYRIGHT for details.
80
81Please let me know of any problems or of enhancements you make to this
82package.  I'm particularly interested in the details of what you found
83was good to put on your fixit or install disks.	 Thanks!
84
85Share and Enjoy,
86Jaime
87............................................................................
88: Stand on my shoulders, : jds@cs.umd.edu  :		      James da Silva
89: not on my toes.	 : uunet!mimsy!jds : http://www.cs.umd.edu/users/jds
90