Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

FreeBSD 2.2.8-RELEASE

  • Loading branch information...
commit 8d625840d22308fbb8b1cb1096200870e6a7c821 1 parent afb56c3
itojun authored
Showing with 27,138 additions and 0 deletions.
  1. +202 −0 freebsd2/release/ABOUT.TXT
  2. +51 −0 freebsd2/release/ERRATA.TXT
  3. +98 −0 freebsd2/release/LAYOUT.TXT
  4. +692 −0 freebsd2/release/Makefile
  5. +33 −0 freebsd2/release/README.TXT
  6. +15 −0 freebsd2/release/boot_crunch.conf
  7. +70 −0 freebsd2/release/doFS.sh
  8. +44 −0 freebsd2/release/dumpnlist.c
  9. +36 −0 freebsd2/release/fixit.profile
  10. +108 −0 freebsd2/release/fixit.services
  11. +42 −0 freebsd2/release/fixit_crunch.conf
  12. +7 −0 freebsd2/release/floppies/Makefile
  13. +7 −0 freebsd2/release/floppies/bin/Makefile
  14. +71 −0 freebsd2/release/floppies/bin/doFS.sh
  15. +8 −0 freebsd2/release/floppies/bin/dumpnlist/Makefile
  16. +44 −0 freebsd2/release/floppies/bin/dumpnlist/dumpnlist.c
  17. +8 −0 freebsd2/release/floppies/bin/write_mfs_in_kernel/Makefile
  18. +70 −0 freebsd2/release/floppies/bin/write_mfs_in_kernel/write_mfs_in_kernel.c
  19. +4 −0 freebsd2/release/floppies/boot/Makefile
  20. +15 −0 freebsd2/release/floppies/boot/crunch/Makefile
  21. +23 −0 freebsd2/release/floppies/boot/crunch/crunch.conf
  22. +112 −0 freebsd2/release/floppies/boot/floppy/Makefile
  23. +25 −0 freebsd2/release/floppies/boot/mfs/Makefile
  24. +4 −0 freebsd2/release/floppies/boot/verbatim/etc/services
  25. +6 −0 freebsd2/release/floppies/fixit/Makefile
  26. +3 −0  freebsd2/release/floppies/fixit/crunch/Makefile
  27. +45 −0 freebsd2/release/floppies/fixit/crunch/crunch.conf
  28. +20 −0 freebsd2/release/floppies/fixit/image/Makefile
  29. +15 −0 freebsd2/release/floppies/fixit/verbatim/.profile
  30. +108 −0 freebsd2/release/floppies/mk/crunch_fs.mk
  31. +25 −0 freebsd2/release/floppies/mk/makecrunch.mk
  32. +8 −0 freebsd2/release/info.sh
  33. +12 −0 freebsd2/release/scripts/bin-install.sh
  34. +8 −0 freebsd2/release/scripts/catpages-install.sh
  35. +10 −0 freebsd2/release/scripts/catpages-make.sh
  36. +8 −0 freebsd2/release/scripts/commerce-install.sh
  37. +8 −0 freebsd2/release/scripts/compat1x-install.sh
  38. +8 −0 freebsd2/release/scripts/compat20-install.sh
  39. +8 −0 freebsd2/release/scripts/compat21-install.sh
  40. +19 −0 freebsd2/release/scripts/des-install.sh
  41. +8 −0 freebsd2/release/scripts/dict-install.sh
  42. +15 −0 freebsd2/release/scripts/dict-make.sh
  43. +12 −0 freebsd2/release/scripts/doc-install.sh
  44. +8 −0 freebsd2/release/scripts/doc-make.sh
  45. +8 −0 freebsd2/release/scripts/games-install.sh
  46. +34 −0 freebsd2/release/scripts/games-make.sh
  47. +8 −0 freebsd2/release/scripts/info-install.sh
  48. +8 −0 freebsd2/release/scripts/info-make.sh
  49. +8 −0 freebsd2/release/scripts/manpages-install.sh
  50. +9 −0 freebsd2/release/scripts/manpages-make.sh
  51. +8 −0 freebsd2/release/scripts/ports-install.sh
  52. +8 −0 freebsd2/release/scripts/proflibs-install.sh
  53. +8 −0 freebsd2/release/scripts/proflibs-make.sh
  54. +28 −0 freebsd2/release/scripts/src-install.sh
  55. +8 −0 freebsd2/release/scripts/xperimnt-install.sh
  56. +81 −0 freebsd2/release/sysinstall/Makefile
  57. +316 −0 freebsd2/release/sysinstall/anonFTP.c
  58. +218 −0 freebsd2/release/sysinstall/attr.c
  59. +171 −0 freebsd2/release/sysinstall/cdrom.c
  60. +179 −0 freebsd2/release/sysinstall/command.c
  61. +780 −0 freebsd2/release/sysinstall/config.c
  62. +80 −0 freebsd2/release/sysinstall/dev2c.sh
  63. +498 −0 freebsd2/release/sysinstall/devices.c
  64. +757 −0 freebsd2/release/sysinstall/disks.c
  65. +436 −0 freebsd2/release/sysinstall/dispatch.c
  66. +806 −0 freebsd2/release/sysinstall/dist.c
  67. +113 −0 freebsd2/release/sysinstall/dist.h
  68. +308 −0 freebsd2/release/sysinstall/dmenu.c
  69. +126 −0 freebsd2/release/sysinstall/doc.c
  70. +111 −0 freebsd2/release/sysinstall/dos.c
  71. +152 −0 freebsd2/release/sysinstall/floppy.c
  72. +259 −0 freebsd2/release/sysinstall/ftp.c
  73. +71 −0 freebsd2/release/sysinstall/globals.c
  74. +19 −0 freebsd2/release/sysinstall/help/anonftp.hlp
  75. +10 −0 freebsd2/release/sysinstall/help/configure.hlp
  76. +62 −0 freebsd2/release/sysinstall/help/distributions.hlp
  77. +92 −0 freebsd2/release/sysinstall/help/drives.hlp
  78. +7 −0 freebsd2/release/sysinstall/help/fixit.hlp
  79. +19 −0 freebsd2/release/sysinstall/help/html.hlp
  80. +53 −0 freebsd2/release/sysinstall/help/media.hlp
  81. +56 −0 freebsd2/release/sysinstall/help/network_device.hlp
  82. +124 −0 freebsd2/release/sysinstall/help/options.hlp
  83. +144 −0 freebsd2/release/sysinstall/help/partition.hlp
  84. +76 −0 freebsd2/release/sysinstall/help/register.hlp
  85. +116 −0 freebsd2/release/sysinstall/help/shortcuts.hlp
  86. +59 −0 freebsd2/release/sysinstall/help/slice.hlp
  87. +34 −0 freebsd2/release/sysinstall/help/tcp.hlp
  88. +68 −0 freebsd2/release/sysinstall/help/usage.hlp
  89. +89 −0 freebsd2/release/sysinstall/help/usermgmt.hlp
  90. +620 −0 freebsd2/release/sysinstall/index.c
  91. +1,164 −0 freebsd2/release/sysinstall/install.c
  92. +96 −0 freebsd2/release/sysinstall/install.cfg
  93. +481 −0 freebsd2/release/sysinstall/installUpgrade.c
  94. +95 −0 freebsd2/release/sysinstall/keymap.c
  95. +1,257 −0 freebsd2/release/sysinstall/label.c
  96. +140 −0 freebsd2/release/sysinstall/lang.c
  97. +60 −0 freebsd2/release/sysinstall/list.h
  98. +218 −0 freebsd2/release/sysinstall/lndir.c
  99. +135 −0 freebsd2/release/sysinstall/main.c
  100. +766 −0 freebsd2/release/sysinstall/media.c
  101. +1,479 −0 freebsd2/release/sysinstall/menus.c
  102. +484 −0 freebsd2/release/sysinstall/misc.c
  103. +83 −0 freebsd2/release/sysinstall/mouse.c
  104. +320 −0 freebsd2/release/sysinstall/msg.c
  105. +309 −0 freebsd2/release/sysinstall/network.c
  106. +110 −0 freebsd2/release/sysinstall/nfs.c
  107. +304 −0 freebsd2/release/sysinstall/options.c
  108. +219 −0 freebsd2/release/sysinstall/package.c
  109. +353 −0 freebsd2/release/sysinstall/register.c
  110. +15 −0 freebsd2/release/sysinstall/rtermcap.c
  111. +804 −0 freebsd2/release/sysinstall/sysinstall.8
  112. +727 −0 freebsd2/release/sysinstall/sysinstall.h
  113. +384 −0 freebsd2/release/sysinstall/system.c
  114. +120 −0 freebsd2/release/sysinstall/tape.c
  115. +397 −0 freebsd2/release/sysinstall/tcpip.c
  116. +135 −0 freebsd2/release/sysinstall/termcap.c
  117. +166 −0 freebsd2/release/sysinstall/uc_eisa.c
  118. +210 −0 freebsd2/release/sysinstall/uc_isa.c
  119. +87 −0 freebsd2/release/sysinstall/uc_kmem.c
  120. +76 −0 freebsd2/release/sysinstall/uc_list.c
  121. +333 −0 freebsd2/release/sysinstall/uc_main.c
  122. +167 −0 freebsd2/release/sysinstall/uc_main.h
  123. +122 −0 freebsd2/release/sysinstall/uc_pci.c
  124. +477 −0 freebsd2/release/sysinstall/uc_scsi.c
  125. +63 −0 freebsd2/release/sysinstall/ufs.c
  126. +727 −0 freebsd2/release/sysinstall/user.c
  127. +224 −0 freebsd2/release/sysinstall/variable.c
  128. +232 −0 freebsd2/release/sysinstall/wizard.c
  129. +120 −0 freebsd2/release/tar.sh
  130. +197 −0 freebsd2/release/texts/ABOUT.TXT
  131. +25 −0 freebsd2/release/texts/ERRATA.TXT
  132. +60 −0 freebsd2/release/texts/FLOPPIES.TXT
  133. +492 −0 freebsd2/release/texts/HARDWARE.TXT
  134. +513 −0 freebsd2/release/texts/INSTALL.TXT
  135. +98 −0 freebsd2/release/texts/LAYOUT.TXT
  136. +104 −0 freebsd2/release/texts/README.TXT
  137. +380 −0 freebsd2/release/texts/RELNOTES.TXT
  138. +374 −0 freebsd2/release/texts/TROUBLE.TXT
  139. +168 −0 freebsd2/release/texts/UPGRADE.TXT
  140. +1,584 −0 freebsd2/release/texts/XFREE86.TXT
  141. +96 −0 freebsd2/release/write_mfs_in_kernel.c
View
202 freebsd2/release/ABOUT.TXT
@@ -0,0 +1,202 @@
+o About FreeBSD:
+
+What is FreeBSD? FreeBSD is an operating system based on 4.4 BSD Lite
+for Intel, AMD, Cyrix or NexGen "x86" based PC hardware. It works
+with a very wide variety of PC peripherals and configurations and can
+be used for everything from software development to Internet Service
+Provision.
+
+This release of FreeBSD contains everything you need to run such a
+system, including full source code for everything. With the source
+distribution installed you can literally recompile the entire system
+from scratch with one command, making it ideal for students,
+researchers or folks who simply want to see how it all works.
+
+A large collection of 3rd party ported software (the "ports
+collection") is also provided to make it easier for you to obtain and
+install all your favorite traditional UNIX utilities for FreeBSD.
+Over 1500 ports, from editors to programming languages to graphical
+applications, make FreeBSD a powerful and comprehensive operating
+environment that extends far beyond what's provided by many commercial
+versions of UNIX.
+
+For more documentation on this system it is recommended that you
+purchase the 4.4BSD Document Set from O'Reilly Associates and the
+USENIX Association, ISBN 1-56592-082-1. We have no connection with
+O'Reilly, we're just satisfied customers!
+
+If you're new to FreeBSD then you should also read EVERYTHING listed
+in the Documentation menu on the boot floppy. It may seem like a lot
+to read, but you should at least acquaint yourself with the types of
+information available should you later get stuck. Once the system is
+installed, you can also revisit this menu and use a WEB browser to
+read the installed FAQ (Frequently Asked Questions) and Handbook HTML
+documentation sets for FreeBSD. You can also use the browser to visit
+other WEB sites on the net (such as http://www.freebsd.org) if you
+have an Internet connection.
+
+
+DISCLAIMER: While FreeBSD does its best to safeguard against
+accidental loss of data, it's still more than possible to WIPE OUT
+YOUR ENTIRE DISK with this installation! Please do not proceed to the
+final FreeBSD installation menu unless you've adequately backed up any
+important data first! We really mean it!
+
+
+o E-mail addresses and tech support info:
+
+For general questions, please send email to :
+
+ freebsd-questions@FreeBSD.org
+
+Please also have patience if your questions are not answered right
+away - this mailing list is staffed purely by volunteers and they also
+have real life schedules to contend with. Questions which are asked
+intelligently (e.g. not "My system doesn't work! What's wrong!?")
+also stand a far greater chance of being answered. If your question
+does not contain enough information to allow the responder to generate
+a meaningful answer, they generally won't.
+
+Bug reports submitted with the send-pr command are also logged and
+tracked in our bugs database, and you'll be kept informed of any
+changes in status during the life of the bug (or feature request).
+
+Technical comments on this release should be sent (in English!) to:
+
+ freebsd-hackers@FreeBSD.org
+
+Bug reports should be sent using the `send-pr' command or the Web page
+at http://www.freebsd.org/send-pr.html. If you cannot use either of
+these two methods, you may also send mail to:
+
+ freebsd-bugs@FreeBSD.org
+
+
+PLEASE ALSO BE SURE TO INDICATE WHICH VERSION OF FREEBSD YOU'RE
+RUNNING IN ANY BUG REPORTS OR QUESTIONS!
+
+Sorry for the caps, but you'd be amazed at how many times people
+forget this and there are many different release versions of FreeBSD
+out there now. It's imperative that we know what you're running so
+that we tell if you're suffering from a bug which has already been
+fixed.
+
+
+o WWW Resources:
+
+Our WEB site, http://www.freebsd.org, is also a very good source for
+updated information and provides a number of advanced documentation
+searching facilities. If you wish to use Netscape as your browser,
+you may install the BSDI version from ftp://ftp.mcom.com or simply
+type:
+
+ # cd /usr/ports/www/netscape3
+ # make all install
+
+If you have the Ports collection installed on your machine.
+
+
+Several other non-commercial browsers are also available in
+/usr/ports/net and may be compiled and installed in the same fashion.
+Many are also available as pre-compiled packages - see the Packages
+entry in the Configuration menu for more details.
+
+The Handbook and FAQ are also available as on-line documents in
+/usr/share/doc and can be read using the ``file:/usr/share/doc''
+syntax in any HTML capable browser.
+
+
+o Distributions:
+
+A typical FreeBSD distribution directory looks like this:
+
+ABOUT.TXT bin dict manpages tools
+HARDWARE.TXT compat1x des doc packages
+INSTALL.TXT compat20 floppies ports
+README.TXT compat21 games proflibs
+RELNOTES.TXT info src
+XF86332
+
+If you want to do a CDROM, FTP or NFS installation from this
+distribution directory, all you need to do is make a 1.44Mb floppy
+from the floppies/boot.flp image file (see floppies/README.TXT for
+instructions on how to do this), boot it and follow the instructions.
+
+If you're trying to do some other type of installation, or are just
+curious about how the distribution is organized in general, what
+follows is a more thorough description of each item in more detail:
+
+The *.TXT files obviously contain documentation (ABOUT.TXT being what
+you're reading now).
+
+The XF86332 directory contains the XFree86 project's 3.3.2.3 release and
+consists of a series of gzip'd tar files which contain each component
+of the XFree86 distribution.
+
+The bin, dict, des, doc, games, info, manpages, proflibs, and src
+directories contain the primary distribution components of FreeBSD
+itself and are split into smaller files for easy packing onto floppies
+(should that be necessary).
+
+The compat1x, compat20 and compat21 directories contain distributions
+for compatibility with older releases and are distributed as single
+gzip'd tar files - they can be installed during release time or later
+by running their `install.sh' scripts.
+
+A typical distribution (we'll use the info distribution as an example)
+looks like this:
+
+CHECKSUM.MD5 info.ab info.ad info.inf install.sh
+info.aa info.ac info.ae info.mtree
+
+The CHECKSUM.MD5 file contains MD5 signatures for each file, should
+data corruption be suspected, and is purely for reference - it is not
+used by the actual installation and does not need to be copied with
+the rest of the distribution files. The info.a* files are split,
+gzip'd tar files, the contents of which can be viewed by doing:
+
+ cat info.a* | tar tvzf -
+
+During installation, they are automatically concatenated and extracted
+by the installation procedure.
+
+The info.inf file is also necessary since it is read by the installation
+program in order to figure out how many pieces to look for when fetching and
+concatenating the distribution. When putting distributions onto floppies,
+the .inf file MUST occupy the first floppy of each distribution set!
+
+The info.mtree file is another non-essential file which is provided
+for user reference. It contains the MD5 signatures of the *unpacked*
+distribution files and can be later used with the mtree(1) program
+to verify the installation permissions and checksums against any possible
+modifications to the file. When used with the bin distribution, this can
+be an excellent way of detecting trojan horse attacks on your system.
+
+Finally, the install.sh file is for use by those who want to install the
+distribution after installation time. To install the info distribution from
+CDROM after a system was installed, for example, you'd do:
+
+ cd /cdrom/info
+ sh install.sh
+
+And that's all there is to it! Each distribution contains its own
+install.sh file for this.
+
+
+The floppies subdirectory contains the floppy installation images and
+the floppies/README.TXT file should be read for further information
+on them.
+
+The packages and ports directories contain the FreeBSD packages and
+ports collections. Packages may be installed from the packages directory
+by running the /stand/sysinstall utility with the argument ``configPackages''
+or by feeding the individual filenames to the pkg_add(1) command.
+
+The ports collection may be installed like any other distribution
+and requires about 15MB unpacked. More information on the ports collection
+may be obtained from http://www.freebsd.org/ports or locally from
+file:/usr/share/doc/handbook if you've installed the doc distribution.
+
+Last of all, the tools directory contains various DOS tools for
+discovering disk geometries, installing boot managers and the like.
+It is purely optional and provided only for user convenience.
View
51 freebsd2/release/ERRATA.TXT
@@ -0,0 +1,51 @@
+This file contains post-release ERRATA for 2.2.7 and should always
+be considered the definitive place to look *first* before reporting
+a problem with this release. This file will also be periodically
+updated as new issues are reported so even if you've checked this
+file recently, check it again before filing a bug report. Any
+changes to this file are also automatically emailed to:
+
+ freebsd-stable@freebsd.org
+
+For 2.2.7 security advisories, see:
+
+ ftp://ftp.freebsd.org/pub/FreeBSD/CERT/
+
+For the latest information.
+
+---- Security Advisories:
+
+Current active security advisories for 2.2.7: None
+
+---- System Update Information:
+
+o XFree86: The XF86Setup utility sometimes fails with an XIO
+ error (visible on the 2nd VTY) rather than starting properly if you
+ run it during system installation time. This is not a new bug and
+ has been seen in previous releases of FreeBSD, but it seems to happen
+ far more reliably with 2.2.7 now (for some as yet unknown reason).
+
+Fix: Should this happen to you, run /usr/X11R6/bin/XF86Setup by hand
+ after the system comes up off the hard disk for the first time.
+ For some reason, when not run off the boot floppy or CD, it works
+ perfectly (making this one somewhat more difficult to debug).
+
+
+o Release notes state that Texas Instruments ThunderLAN PCI NICs are
+ supported in 2.2.7.
+
+Fix: This was an embarassing mis-merge from the 3.0 release notes and,
+ indeed, those cards are only supported in 3.0-current. Please ignore
+ this section of the release notes and any other docs which claim that
+ the ThunderLAN NICs are supported in 2.2.7.
+
+
+o rshd was broken during -Wall cleanup, as noted in PR#7500
+
+Fix: This was fixed in the 2.2-stable branch as of 1998/07/24 04:32:21
+ in revision 1.9.2.9 of /usr/src/libexec/rshd/rshd.c. Obtain the
+ fixed version via CVSup (see instructions in handbook or simply
+ ``pkg_add ftp://ftp.freebsd.org/pub/FreeBSD/CVSup/cvsupit.tgz''
+ and follow the instructions) or get it from FTP at:
+ ftp://ftp.freebsd.org/pub/FreeBSD/FreeBSD-stable/src/libexec/rshd/rshd.c
+
View
98 freebsd2/release/LAYOUT.TXT
@@ -0,0 +1,98 @@
+===================
+Distribution format
+===================
+
+A typical FreeBSD distribution directory looks something like this:
+
+ABOUT.TXT bin dict manpages tools
+HARDWARE.TXT compat1x des doc packages
+INSTALL.TXT compat20 floppies ports
+README.TXT compat21 games proflibs
+RELNOTES.TXT info src
+DISTRIB.TXT XF86332
+
+If you want to do a CDROM, FTP or NFS installation from this
+distribution directory, all you need to do is make a 1.44Mb floppy
+from the floppies/boot.flp image file (see floppies/README.TXT for
+instructions on how to do this), boot it and follow the instructions.
+See INSTALL.TXT for more information.
+
+If you're trying to do some other type of installation or are merely
+curious about how a distribution is organized, what follows is a more
+thorough description of each item in more detail:
+
+1. The *.TXT files obviously contain documentation (this file is
+ DISTRIB.TXT) and should be read before starting an installation.
+
+2. The XF86332 directory contains the XFree86 project's 3.3.2.3 release and
+ consists of a series of gzip'd tar files which contain each component
+ of the XFree86 distribution.
+
+3. The bin, dict, des, doc, games, info, manpages, proflibs, and src
+ directories contain the primary distribution components of FreeBSD
+ itself and are split into smaller files for easy packing onto floppies
+ (should that be necessary).
+
+4. The compat1x, compat20 and compat21 directories contain distributions
+ for compatibility with older releases and are distributed as single
+ gzip'd tar files - they can be installed during release time or later
+ by running their `install.sh' scripts.
+
+5. The floppies subdirectory also contains the floppy installation images
+ and the floppies/README.TXT file should be read for further
+ information on using them.
+
+6. The packages and ports directories contain the FreeBSD packages and
+ ports collections. Packages may be installed from the packages
+ directory by running the command: ``/stand/sysinstall configPackages''
+ or by feeding individual filenames in packages/ to the pkg_add(1)
+ command.
+
+ The ports collection may be installed like any other distribution
+ and requires about 26MB unpacked. More information on the ports
+ collection may be obtained from http://www.freebsd.org/ports or
+ locally from ``file:/usr/share/doc/handbook'' if you've installed
+ the doc distribution.
+
+7. Last of all, the tools directory contains various DOS tools for
+ discovering disk geometries, installing boot managers and the like.
+ It is purely optional and provided only for user convenience.
+
+A typical distribution (we'll use the info distribution as an example)
+looks like this internally:
+
+CHECKSUM.MD5 info.ab info.ad info.inf install.sh
+info.aa info.ac info.ae info.mtree
+
+The CHECKSUM.MD5 file contains MD5 signatures for each file, should
+data corruption be suspected, and is purely for reference. It is not
+used by the actual installation and does not need to be copied with
+the rest of the distribution files. The info.a* files are split,
+gzip'd tar files, the contents of which can be viewed by doing:
+
+ cat info.a* | tar tvzf -
+
+During installation, they are automatically concatenated and extracted
+by the installation procedure.
+
+The info.inf file is also necessary since it is read by the installation
+program in order to figure out how many pieces to look for when fetching and
+concatenating the distribution. When putting distributions onto floppies,
+the .inf file MUST occupy the first floppy of each distribution set!
+
+The info.mtree file is another non-essential file which is provided
+for user reference. It contains the MD5 signatures of the *unpacked*
+distribution files and can be later used with the mtree(1) program
+to verify the installation permissions and checksums against any possible
+modifications to the file. When used with the bin distribution, this can
+be an excellent way of detecting trojan horse attacks on your system.
+
+Finally, the install.sh file is for use by those who want to install the
+distribution after installation time. To install the info distribution from
+CDROM after a system was installed, for example, you'd do:
+
+ cd /cdrom/info
+ sh install.sh
+
+And that's all there is to it! Each distribution contains its own
+install.sh file for this.
View
692 freebsd2/release/Makefile
@@ -0,0 +1,692 @@
+# $Id: Makefile,v 1.246.2.95 1998/11/24 00:19:59 jkh Exp $
+#
+# make release CHROOTDIR=/some/dir BUILDNAME=somename [ RELEASETAG=tag ]
+#
+# Where "/some/dir" is the pathname of a directory on a some
+# filesystem with at least 1000MB of free space, "somename" is what
+# you want the release to call itself and, optionally, which CVS "tag"
+# name should be used when checking out the sources to build the release
+# (default is HEAD).
+#
+# Please note: the vn driver must also be compiled into your kernel,
+# otherwise the target 'release.8' and possibly others will fail.
+#
+# Set these, release builder!
+#
+# Fixed version:
+#BUILDNAME=2.2-RELEASE
+#
+# Automatic SNAP versioning:
+DATE != date +%Y%m%d
+BASE = 2.2.6
+BUILDNAME?=${BASE}-${DATE}-SNAP
+#
+#CHROOTDIR=/junk/release
+# If this is a RELEASE, then set
+#RELEASETAG=RELENG_2_2
+
+# If you are using a local CVS repository with components stored in
+# non-standard modules, override these on the make commandline or
+# in the environment.
+RELEASESRCMODULE?= src
+RELEASEDOCMODULE?= doc
+RELEASEPORTSMODULE?= ports
+
+# Uncomment this to disable the doc.1 target. It is also an ERROR
+# to set NOPORTS and not set NODOC since docs depend on ports.
+#NODOC= YES
+#NOPORTS= YES
+# Comment the following if you want the release documentation to be
+# in English only.
+ALLLANG= yes
+DOCPORTS= archivers/unzip textproc/jade textproc/iso8879 \
+ textproc/linuxdoc textproc/docbook textproc/sgmlformat
+
+DIST_DOCS= ABOUT.TXT ERRATA.TXT LAYOUT.TXT README.TXT HARDWARE.TXT \
+ INSTALL.TXT RELNOTES.TXT TROUBLE.TXT UPGRADE.TXT
+
+# Things which without too much trouble can be considered variables
+# BIN_DISTS are special in that they get full /etc installation sets.
+#
+COMPAT_DISTS?= compat1x compat20 compat21
+OTHER_DISTS?= manpages catpages games proflibs dict info doc
+CRYPTO_DISTS?= krb des
+BIN_DISTS?= bin
+DISTRIBUTIONS?= ${BIN_DISTS} ${OTHER_DISTS} ${COMPAT_DISTS} ${CRYPTO_DISTS}
+KERNELS?= GENERIC
+
+# Extra source tarballs; each argument is a pair of source dir and
+# distribution name. The dist name should not exceed 7 characters
+# (another "s" for "source" will be prepended).
+EXTRA_SRC+= usr.sbin/sendmail/cf smailcf
+
+BOOT1= etc/protocols etc/rc.conf
+
+# mountpoint for filesystems.
+MNT= /mnt
+
+# other floppy parameters.
+FDSIZE= 1440
+FDLABEL= fd1440
+
+ZIPNSPLIT= gzip --no-name -9 -c | split -b 240640 -
+
+# Upper size for the mfs in the boot.flp kernel.
+# These are adjusted down to the minimum needed by doFS.sh.
+BOOTMFSSIZE= 1440
+MFSINODE= 15000
+FIXITINODE= 6000
+BOOTINODE= 100000
+
+VNDEVICE?= vn0
+
+# Things which may get you into trouble if you change them
+MTREEFILES= ${.CURDIR}/../etc/mtree
+RD= /R/stage
+FD= /R/ftp
+CD= /R/cdrom
+CD_DISC1= ${CD}/disc1
+CD_DISC2= ${CD}/disc2
+
+# Where the bootstrap ports (see DOCPORTS) get installed.
+LOCALDIR= /usr/local/bin
+
+# ${BOOTSTRAPDIR} is for those utilities that refer to the hosting
+# environment, rather than the target environment. This is specifically
+# intended for kernel-dependent utilities that are used during the build.
+#
+# ${BOOTSTRAPDIR} is actually being used by prepending it to the normal
+# ${PATH}. Thus, it's also available to outside utilities like doFS.sh.
+BOOTSTRAPDIR= /bootstrap
+#
+# The mount subsystem has been changed between 2.2 and 3.0 by the
+# Lite2 import.
+BOOTSTRAPUTILS= /sbin/mount /sbin/umount
+#
+# 3.0 cpio tries to reference lchown(2) which is not available in 2.2
+BOOTSTRAPUTILS+= /usr/bin/cpio
+
+.if !defined(CRUNCH_TARGETS)
+CRUNCH_TARGETS= boot fixit
+.endif
+
+EXTRAS= cdrom.1 ftp.1
+
+.if !defined(NODOC)
+DOCREL= doc.1
+.endif
+
+REDO?= sysinstall
+REDOSED= sed -e 's/dirs/release.1/' -e 's/trees/release.2/' \
+ -e 's/kerns/release.3/' -e 's/sysinstall/release.4/' \
+ -e 's/fixup/release.5/' -e 's/tarbin/release.6/' \
+ -e 's/tarsrc/release.7/' -e 's/boot\.flp/release.8/' \
+ -e 's/fixit\.flp/release.9/' -e 's/ftp/ftp.1/' \
+ -e 's/cdrom/cdrom.1/' -e 's/doc/doc.1/'
+
+REDOREDO!= echo ${REDO} | ${REDOSED}
+
+rerelease release:
+.if !defined(CHROOTDIR) || !defined(BUILDNAME) || !defined(CVSROOT)
+ @echo "To make a release you must set CHROOTDIR, BUILDNAME and CVSROOT" && false
+.endif
+.if make(release)
+.if exists(${CHROOTDIR})
+# The first command will fail on a handful of files that have their schg
+# flags set. But it greatly speeds up the next two commands.
+ -rm -rf ${CHROOTDIR}
+ -chflags -R noschg ${CHROOTDIR}/.
+ -rm -rf ${CHROOTDIR}
+.endif
+ -mkdir -p ${CHROOTDIR}
+ cd ${.CURDIR}/../etc && ${MAKE} distrib-dirs DESTDIR=${CHROOTDIR}
+ cd ${.CURDIR}/../etc && ${MAKE} distribution DESTDIR=${CHROOTDIR}
+ cd ${.CURDIR}/.. && ${MAKE} installworld DESTDIR=${CHROOTDIR} NOMAN=1
+ mkdir ${CHROOTDIR}/${BOOTSTRAPDIR}
+ for i in ${BOOTSTRAPUTILS} ; do \
+ cp -p ${CHROOTDIR}$$i ${CHROOTDIR}/${BOOTSTRAPDIR} ; \
+ done
+.if !defined(RELEASETAG)
+ cd ${CHROOTDIR}/usr && rm -rf src && \
+ cvs -R -d ${CVSROOT} co -P ${RELEASESRCMODULE}
+.else
+ cd ${CHROOTDIR}/usr && rm -rf src && \
+ cvs -R -d ${CVSROOT} co -P -r ${RELEASETAG} ${RELEASESRCMODULE}
+.endif
+.if defined(LOCAL_PATCHES) && exists(${LOCAL_PATCHES})
+ cd ${CHROOTDIR}/usr/src && patch --silent < ${LOCAL_PATCHES}
+.endif
+.if defined(LOCAL_SCRIPT) && exists(${LOCAL_SCRIPT})
+ cd ${CHROOTDIR} && env CHROOTDIR=${CHROOTDIR} BUILDNAME=${BUILDNAME} RELEASETAG=${RELEASETAG} ${LOCAL_SCRIPT}
+.endif
+.if !defined(NOPORTS)
+ cd ${CHROOTDIR}/usr && rm -rf ports && cvs -R -d ${CVSROOT} co -P ${RELEASEPORTSMODULE} && cd ports && make readmes PORTSDIR=${CHROOTDIR}/usr/ports
+.endif
+.if !defined(NODOC)
+ cd ${CHROOTDIR}/usr && rm -rf doc && cvs -R -d ${CVSROOT} co -P ${RELEASEDOCMODULE}
+ cd ${CHROOTDIR}/usr/ports && for i in ${DOCPORTS}; do \
+ (cd $$i; make fetch MASTER_SITE_OVERRIDE=file:/usr/ports/distfiles/ \
+ DISTDIR=${CHROOTDIR}/usr/ports/distfiles ); \
+ done
+.endif
+.endif
+.if make(rerelease)
+.if !defined(RELEASENOUPDATE)
+.if !defined(RELEASETAG)
+ cd ${CHROOTDIR}/usr/src && cvs -R -q update -P -d
+.else
+ cd ${CHROOTDIR}/usr/src && cvs -R -q update -P -d -r ${RELEASETAG}
+.endif
+.if !defined(NOPORTS)
+ cd ${CHROOTDIR}/usr/ports && cvs -R -q update -P -d
+.endif
+.if !defined(NODOC)
+ cd ${CHROOTDIR}/usr/doc && cvs -R -q update -P -d
+.endif
+.endif
+.endif
+ # Add version information to those things that need it.
+ ( cd ${CHROOTDIR}/usr/src/sys/conf && \
+ mv newvers.sh foo && \
+ sed "s/^RELEASE=.*/RELEASE=${BUILDNAME}/" foo > newvers.sh && rm foo )
+ -test -f install.cfg && cp install.cfg ${CHROOTDIR}/usr/src/release
+ echo "#!/bin/sh" > ${CHROOTDIR}/mk
+ echo "set -ex" >> ${CHROOTDIR}/mk
+ echo "_RELTARGET=\$${1:-doRELEASE}" >> ${CHROOTDIR}/mk
+ echo "export CFLAGS='-O -pipe'" >> ${CHROOTDIR}/mk
+ echo "export DISTRIBUTIONS=\"${DISTRIBUTIONS}\"" >> ${CHROOTDIR}/mk
+ echo "export BUILDNAME=${BUILDNAME}" >> ${CHROOTDIR}/mk
+ echo "export VNDEVICE=${VNDEVICE}" >> ${CHROOTDIR}/mk
+.if defined(RELEASETAG)
+ echo "export RELEASETAG=${RELEASETAG}" >> ${CHROOTDIR}/mk
+.endif
+.if defined(NOPORTS)
+ echo "export NOPORTS=${NOPORTS}" >> ${CHROOTDIR}/mk
+.endif
+.if defined(NODOC)
+ echo "export NODOC=${NODOC}" >> ${CHROOTDIR}/mk
+.endif
+.if defined(ALLLANG)
+ echo "export ALLLANG=${ALLLANG}" >> ${CHROOTDIR}/mk
+.endif
+.if defined(NOSRC)
+ echo "export NOSRC=${NOSRC}" >> ${CHROOTDIR}/mk
+.endif
+.if defined(NOSHARED)
+ echo "export NOSHARED=${NOSHARED}" >> ${CHROOTDIR}/mk
+.endif
+.if defined(BOOT_CONFIG)
+ echo "export BOOT_CONFIG=\"${BOOT_CONFIG}\"">> ${CHROOTDIR}/mk
+.endif
+ # Don't remove this, or the build will fall over!
+ echo "export RELEASEDIR=/R" >> ${CHROOTDIR}/mk
+ echo "export PATH=${BOOTSTRAPDIR}:$${PATH}:${LOCALDIR}" >> ${CHROOTDIR}/mk
+ echo "cd /usr/src" >> ${CHROOTDIR}/mk
+.if make(release)
+ # This eases bootstrapping from a more recent hosting environment:
+ echo "mkdir -p /usr/lib/compat" >> ${CHROOTDIR}/mk
+ echo "chflags noschg /usr/lib/lib*.so.*" >> ${CHROOTDIR}/mk
+ echo "mv /usr/lib/lib*.so.* /usr/lib/compat" >> ${CHROOTDIR}/mk
+ echo "ldconfig /usr/lib /usr/lib/compat" >> ${CHROOTDIR}/mk
+ echo "(cd include; make all install)" >> ${CHROOTDIR}/mk
+ echo "(cd etc; make distrib-dirs distribution)" >> ${CHROOTDIR}/mk
+ echo "make world" >> ${CHROOTDIR}/mk
+ echo "(cd etc; make distribution)" >> ${CHROOTDIR}/mk
+ # Now we've got our own shared libs, remove the bootstrapping
+ # libs again.
+ echo "rm -f /usr/lib/compat/*" >> ${CHROOTDIR}/mk
+ echo "ldconfig /usr/lib" >> ${CHROOTDIR}/mk
+.endif
+.if make(rerelease)
+ echo "make all install" >> ${CHROOTDIR}/mk
+.endif
+ echo "cd /usr/src/release/sysinstall" >> ${CHROOTDIR}/mk
+ echo "make obj" >> ${CHROOTDIR}/mk
+ echo "cd /usr/src/release" >> ${CHROOTDIR}/mk
+ echo "make objlink" >> ${CHROOTDIR}/mk
+ echo "(cd obj; rm -f ${REDOREDO})" >> ${CHROOTDIR}/mk
+ echo "make \$${_RELTARGET}" >> ${CHROOTDIR}/mk
+ echo "echo make ${.TARGET} Finished" >> ${CHROOTDIR}/mk
+ chmod 755 ${CHROOTDIR}/mk
+ chroot ${CHROOTDIR} /mk
+
+clean:
+ rm -rf boot_crunch release.[0-9]
+
+# Clean out /R and make the directory structure.
+release.1:
+ -mkdir /R
+ chflags -R noschg /R/.
+ rm -rf /R/*
+ mkdir ${RD}
+ mkdir ${RD}/floppies
+ mkdir ${RD}/trees
+ mkdir ${RD}/dists
+ mkdir ${RD}/kernels
+ for i in ${DISTRIBUTIONS} ; do \
+ mkdir ${RD}/trees/$$i && \
+ mkdir ${RD}/dists/$$i && \
+ mtree -deU -f ${MTREEFILES}/BSD.root.dist \
+ -p ${RD}/trees/$$i > /dev/null && \
+ mtree -deU -f ${MTREEFILES}/BSD.usr.dist \
+ -p ${RD}/trees/$$i/usr > /dev/null && \
+ mtree -deU -f ${MTREEFILES}/BSD.include.dist \
+ -p ${RD}/trees/$$i/usr/include > /dev/null && \
+ mtree -deU -f ${MTREEFILES}/BSD.var.dist \
+ -p ${RD}/trees/$$i/var > /dev/null ; \
+ done
+ touch release.1
+
+# Install the system into the various distributions.
+release.2:
+ cd ${.CURDIR}/../etc && make distrib-dirs DESTDIR=${RD}/trees/bin
+ cd ${.CURDIR}/.. && make distribute DISTDIR=${RD}/trees
+.if exists(${.CURDIR}/../kerberosIV) && !defined(NOKERBEROS)
+ cd ${.CURDIR}/../kerberosIV && ( \
+ make bootstrap &&\
+ make obj all help-distribute DISTDIR=${RD}/trees &&\
+ make kprog \
+ )
+.endif
+ chflags -R noschg ${RD}/trees
+ touch release.2
+
+# Make and install the generic kernel(s).
+release.3:
+.for kernel in ${KERNELS}
+ rm -f ${RD}/kernels/${kernel}
+ rm -rf ${.CURDIR}/../sys/compile/${kernel}
+ cd ${.CURDIR} && ${MAKE} doKERNEL KERNEL=${kernel}
+ rm -rf ${.CURDIR}/../sys/compile/${kernel}
+ ln -f ${RD}/kernels/${kernel} ${RD}/trees/bin/kernel.${kernel}
+.endfor
+ touch release.3
+
+# Make and install the three crunched binaries which live on the floppies.
+# You are not supposed to like this :-)
+#
+# NB: the "RELEASE_BUILD_FIXIT" magic prevents vi from including the
+# Tcl and Perl APIs. See also /usr/src/usr.bin/vi/Makefile.
+release.4:
+ @mkdir -p /stand
+ cd ${.CURDIR}/sysinstall && make obj depend all install
+ rm -rf ${RD}/crunch
+ mkdir -p ${RD}/crunch
+ export RELEASE_BUILD_FIXIT=noway ; \
+ for j in ${CRUNCH_TARGETS} ; do \
+ rm -rf $${j}_crunch && \
+ mkdir $${j}_crunch && \
+ ( cd $${j}_crunch && \
+ crunchgen ${.CURDIR}/$${j}_crunch.conf && \
+ ${MAKE} -DRELEASE_CRUNCH -f $${j}_crunch.mk subclean all \
+ NOCRYPT=yes "CFLAGS=${CFLAGS} -DCRUNCHED_BINARY") && \
+ mv $${j}_crunch/$${j}_crunch ${RD}/crunch/$${j} && \
+ true || { rm -rf $${j}_crunch ; false ; } ; \
+ done
+ touch release.4
+
+#
+# --==## Fix up the distributions. ##==--
+#
+release.5:
+ # Handle some grief caused by the munition braindeadness.
+ for i in sbin/init bin/ed usr.sbin/ppp ; do \
+ ( cd ${.CURDIR}/../$$i; \
+ make -DNOCRYPT clean all distribute DISTDIR=${RD}/trees ) ; \
+ done
+
+ # Create any "synthetic dists" now.
+ @for i in ${DISTRIBUTIONS}; do \
+ if [ -f ${.CURDIR}/scripts/$${i}-make.sh ]; then \
+ echo -n "Running $$i dist creation script... "; \
+ env RD=${RD} sh ${.CURDIR}/scripts/$${i}-make.sh || echo "$$i distribution script returned bad status."; \
+ echo "Done."; \
+ fi \
+ done \
+
+ # Create symlinks for the MD5-based crypt lib, too. The
+ # automatically created links still point to the DES stuff,
+ # which went into its own distribution.
+ for i in ${RD}/trees/bin/usr/lib/libscrypt* ; do \
+ c=`echo $$i | sed -e 's/libscrypt/libcrypt/'` ; \
+ rm -f $$c ; \
+ ln -s `basename $$i` $$c ; \
+ done
+
+ # Remove all the directories we don't need.
+ -cd ${RD}/trees && \
+ find ${OTHER_DISTS} ${COMPAT_DISTS} ${CRYPTO_DISTS} -depth -type d -print | xargs rmdir
+ touch release.5
+
+#
+# --==## Package up the tarballs from assembled trees ##==--
+#
+release.6:
+ rm -rf ${RD}/dists
+ mkdir -p ${RD}/dists
+ @for i in ${DISTRIBUTIONS} ; \
+ do \
+ if [ -d ${RD}/trees/$${i} ] ; then \
+ cd ${.CURDIR} && $(MAKE) doTARBALL \
+ SD=${RD}/trees/$${i} \
+ TN=$$i TD=$$i ARG="." && \
+ echo "$${i} distribution is finished."; \
+ fi ; \
+ done
+ # More munition braindeadness.
+ ( cd ${RD}/dists && \
+ if [ -f krb/krb.aa ] ; then mv krb/* des && rmdir krb ; fi )
+ touch release.6
+
+
+#
+# --==## Make source dists ##==--
+#
+release.7:
+.if !defined(NOSRC)
+ @cd ${.CURDIR} && $(MAKE) doTARBALL SD=/usr/src \
+ TD=src TN=sbase ARG="[A-Z]*"
+ @for i in `cd /usr/src && echo [a-z]*` ; do \
+ if [ -d /usr/src/$$i ] ; then \
+ cd ${.CURDIR} && $(MAKE) doTARBALL \
+ TN=`echo s$$i | tr -d '.' | sed 's/usr/u/'` \
+ SD=/usr/src TD=src ARG="$$i" ; \
+ fi ; \
+ done
+.if defined(EXTRA_SRC)
+ @set ${EXTRA_SRC} && \
+ while [ $$# -ge 2 ] ; do \
+ if [ -d /usr/src/$$1 ] ; then \
+ cd ${.CURDIR} && $(MAKE) doTARBALL \
+ SD=/usr/src TN="s$$2" TD=src ARG="$$1" ; \
+ fi && shift && shift ; \
+ done
+.endif
+ ( cd ${RD}/dists/src && \
+ if [ -f ssecure.aa ] ; then mv ssecure.* ../des ; fi && \
+ if [ -f scrypto.aa ] ; then mv scrypto.* ../des ; fi && \
+ if [ -f skerbero.aa ] ; then mv skerbero.* ../des ; fi ; )
+ @echo "src distribution is finished."
+.endif
+ touch release.7
+
+# Complete the bootfd
+#
+# Now, just to get this picture down once and for all:
+#
+# +------------------------------------------------------------------------+
+# |boot.flp |
+# +-----+-----+------------------------------------------------------------+
+# |boot1|boot2|floppy filesystem "bootfd" |
+# +-----+-----+-+--------------------------------------------------------+-+
+# |kernel |
+# +------------+-----------------------------------------+-+
+# |mfs filesystem "mfsfd" |
+# +-----------------------------------------+
+#
+
+release.8: write_mfs_in_kernel dumpnlist
+ rm -rf ${RD}/mfsfd
+ mkdir ${RD}/mfsfd
+ cd ${RD}/mfsfd && \
+ mkdir -p etc dev mnt stand/help
+ @cp ${.CURDIR}/../sys/i386/boot/biosboot/boot.help ${RD}/mfsfd/stand
+ @cd ${.CURDIR} && $(MAKE) installCRUNCH CRUNCH=boot \
+ DIR=${RD}/mfsfd/stand ZIP=false
+ ( cd ${RD}/trees/bin/dev && \
+ ls console tty ttyv0 ttyv1 ttyv2 ttyv3 null zero | \
+ cpio -dump ${RD}/mfsfd/dev )
+ ( cd ${RD}/mfsfd/dev && rm -f *[swo]d*[bdefgh] )
+ cd ${RD}/trees/bin && ls ${BOOT1} | cpio -dump ${RD}/mfsfd/stand
+ echo "nameserver 42/tcp name" > ${RD}/mfsfd/stand/etc/services
+ echo "ftp 21/tcp" >> ${RD}/mfsfd/stand/etc/services
+ echo "domain 53/tcp nameserver" >> ${RD}/mfsfd/stand/etc/services
+ echo "domain 53/udp nameserver" >> ${RD}/mfsfd/stand/etc/services
+ echo "cmd 514/tcp shell" >> ${RD}/mfsfd/stand/etc/services
+ gzip -c ${.CURDIR}/../COPYRIGHT > ${RD}/mfsfd/stand/help/COPYRIGHT.hlp.gz
+ -test -f ${.CURDIR}/install.cfg && cp ${.CURDIR}/install.cfg ${RD}/mfsfd
+ @echo "Making the regular boot floppy."
+ tar --exclude CVS -cf - -C ${.CURDIR}/sysinstall help | \
+ tar xvf - -C ${RD}/mfsfd/stand
+ @echo "Compressing doc files..."
+ @gzip -9 ${RD}/mfsfd/stand/help/*.hlp
+ sh -e ${.CURDIR}/doFS.sh ${RD} ${MNT} ${BOOTMFSSIZE} ${RD}/mfsfd \
+ ${MFSINODE} minimum
+ mv fs-image fs-image.std
+ mv fs-image.size fs-image.std.size
+ cd ${.CURDIR} && ${MAKE} doMFSKERN FSIMAGE=std
+ mv ${RD}/floppies/bootstd.flp ${RD}/floppies/boot.flp
+ @echo "Regular boot floppy made."
+ touch release.8
+
+#
+# --==## Create a fixit floppy ##==--
+#
+release.9:
+ rm -rf ${RD}/fixitfd
+ mkdir ${RD}/fixitfd
+ cd ${RD}/fixitfd && \
+ mkdir -p dev stand bin sbin etc mnt mnt1 mnt2 mnt3 mnt4 tmp \
+ usr/share/misc usr/mdec
+ @cd ${.CURDIR} && $(MAKE) installCRUNCH CRUNCH=fixit \
+ DIR=${RD}/fixitfd/stand ZIP=false
+ ( cd ${RD}/fixitfd/dev && \
+ sed -e '/^PATH/s/^/#/' ${RD}/trees/bin/dev/MAKEDEV > MAKEDEV && \
+ chmod 755 MAKEDEV && \
+ sh MAKEDEV all )
+ cp ${RD}/trees/bin/etc/spwd.db ${RD}/trees/bin/etc/group \
+ ${RD}/trees/bin/etc/protocols ${RD}/fixitfd/etc
+ cp ${RD}/trees/bin/usr/share/misc/scsi_modes \
+ ${RD}/fixitfd/usr/share/misc
+ cp ${RD}/trees/bin/usr/mdec/boot[12] ${RD}/fixitfd/usr/mdec
+ for type in fd od sd wd ; do \
+ ( cd ${RD}/fixitfd/usr/mdec && ln -s boot1 $${type}boot && \
+ ln -s boot2 boot$${type} ) ; \
+ done
+ cp ${.CURDIR}/fixit.profile ${RD}/fixitfd/.profile
+ cp ${.CURDIR}/fixit.services ${RD}/fixitfd/etc/services
+ cp ${.CURDIR}/tar.sh ${RD}/fixitfd/stand/tar
+ chmod 555 ${RD}/fixitfd/stand/tar
+ sh -e ${.CURDIR}/doFS.sh ${RD} ${MNT} ${FDSIZE} \
+ ${RD}/fixitfd ${FIXITINODE} ${FDLABEL}
+ mv fs-image ${RD}/floppies/fixit.flp
+# Do our last minute floppies directory setup in a convenient place.
+ cp ${.CURDIR}/texts/FLOPPIES.TXT ${RD}/floppies/README.TXT
+ @(cd ${RD}/floppies; md5 * > CHECKSUM.MD5)
+ touch release.9
+
+#
+# --==## Setup a suitable ftp-area ##==--
+#
+ftp.1:
+ mkdir -p ${FD}
+ cd ${RD} && find floppies -print | cpio -dumpl ${FD}
+ cd ${RD}/dists && find . -print | cpio -dumpl ${FD}
+ for i in ${DIST_DOCS}; do cp ${.CURDIR}/texts/$${i} ${FD}; done
+ echo "CD_VERSION = ${BUILDNAME}" > ${FD}/cdrom.inf
+.if !defined(NOPORTS)
+ tar -cBf - -C ${CD_DISC1} ports | tar -xBf - -C ${FD}
+.endif
+
+#
+# --==## Setup a suitable cdrom-area ##==--
+#
+cdrom.1:
+ mkdir -p ${CD_DISC1} ${CD_DISC2}
+ cd ${RD} && find floppies -print | cpio -dumpl ${CD_DISC1}
+ cd ${RD}/dists && find . -print | cpio -dumpl ${CD_DISC1}
+ ln -f ${RD}/kernels/MFSKERNEL.std ${CD_DISC1}/kernel
+ ln -f ${RD}/trees/bin/usr/mdec/fbsdboot.exe ${CD_DISC1}
+ for i in ${DISTRIBUTIONS} ; \
+ do \
+ if [ -d ${RD}/trees/$${i} ] ; then \
+ chflags -R noschg ${RD}/trees/$${i} ; \
+ ( cd ${RD}/trees/$${i} && \
+ find . -depth -print | cpio -dumpl ${CD_DISC2} ) ; \
+ fi \
+ done
+ rm -f ${CD_DISC2}/.profile
+ cp ${.CURDIR}/fixit.profile ${CD_DISC2}/.profile
+ echo "CD_VERSION = ${BUILDNAME}" > ${CD_DISC1}/cdrom.inf
+ echo "CD_VERSION = ${BUILDNAME}" > ${CD_DISC2}/cdrom.inf
+ for i in ${DIST_DOCS}; do cp ${.CURDIR}/texts/$${i} ${CD_DISC1}; done
+.if !defined(NOPORTS)
+ -rm -rf /usr/ports/distfiles/*
+ tar -cBf - -C /usr ports | tar xBpf - -C ${CD_DISC2} && \
+ mkdir -p ${CD_DISC1}/ports && \
+ tar -czf ${CD_DISC1}/ports/ports.tgz -C /usr ports && \
+ cp ${.CURDIR}/scripts/ports-install.sh ${CD_DISC1}/ports/install.sh && \
+ (cd ${CD_DISC1}/ports; md5 * > CHECKSUM.MD5)
+ ln -s ../ports ${CD_DISC2}/usr/ports
+.endif
+
+doc.1:
+ for i in ${DOCPORTS}; do \
+ cd /usr/ports/$$i && make all install clean FORCE_PKG_REGISTER=yes; \
+ done
+ cd /usr/doc && make all distribute DISTDIR=${RD}/trees
+ touch doc.1
+
+# Various "subroutine" and other supporting targets.
+
+doTARBALL:
+.if !defined(SD)
+ @echo "SD undefined in doTARBALL" && exit 1
+.endif
+.if !defined(TD)
+ @echo "TB undefined in doTARBALL" && exit 1
+.endif
+.if !defined(ARG)
+ @echo "ARG undefined in doTARBALL" && exit 1
+.endif
+ rm -rf ${RD}/dists/${TD}/${TN}*
+ mkdir -p ${RD}/dists/${TD}
+ ( cd ${SD} && \
+ tn=`echo ${TN} | tr '[A-Z]' '[a-z]' | cut -c1-8` && \
+ echo rolling ${TD}/$$tn tarball &&\
+ tar --exclude CVS --exclude obj --exclude BOOTMFS -cf - ${ARG} | \
+ ${ZIPNSPLIT} ${RD}/dists/${TD}/$$tn. && \
+ sh ${.CURDIR}/info.sh ${RD}/dists/${TD}/$$tn > \
+ ${RD}/dists/${TD}/$$tn.inf && \
+ if [ -f ${.CURDIR}/scripts/$${TD}-install.sh ]; then \
+ cp -p ${.CURDIR}/scripts/$${TD}-install.sh ${RD}/dists/${TD}/install.sh; \
+ fi && \
+ if [ "${SD}" != "/usr/src" ]; then \
+ mtree -c -i -p ${SD}/${ARG} \
+ -k gname,md5digest,mode,nlink,uname,size,link,type \
+ > ${RD}/dists/${TD}/$$tn.mtree ; \
+ else \
+ true; \
+ fi; \
+ (cd ${RD}/dists/${TD}; \
+ rm -f CHECKSUM.MD5; \
+ md5 * > CHECKSUM.MD5) \
+ )
+
+doRELEASE: release.1 release.2 ${DOCREL} release.3 release.4 release.5 \
+ release.6 release.7 release.8 release.9
+ cd ${.CURDIR} && ${MAKE} ${EXTRAS}
+ @echo "Release done"
+
+floppies:
+ cd ${.CURDIR} && ${MAKE} boot.flp
+ cd ${.CURDIR} && ${MAKE} fixit.flp
+ cd ${RD} && find floppies -print | cpio -dumpl ${FD}
+
+boot.flp:
+ rm -f release.4 release.8
+ cd ${.CURDIR} && ${MAKE} release.4 release.8 CRUNCH_TARGETS=boot
+
+fixit.flp:
+ rm -f release.4 release.9
+ cd ${.CURDIR} && ${MAKE} release.4 release.9 CRUNCH_TARGETS=fixit
+
+write_mfs_in_kernel: ${.CURDIR}/write_mfs_in_kernel.c
+ ${CC} ${CFLAGS} -o write_mfs_in_kernel ${.CURDIR}/write_mfs_in_kernel.c
+
+# Add -DDO_SCSI to CFLAGS to enable scsi frobbing support.
+dumpnlist: ${.CURDIR}/dumpnlist.c
+ ${CC} ${CFLAGS} -o dumpnlist ${.CURDIR}/dumpnlist.c
+
+installCRUNCH:
+.if !defined(CRUNCH)
+ @echo "CRUNCH undefined in installCRUNCH" && exit 1
+.endif
+.if !defined(DIR)
+ @echo "DIR undefined in installCRUNCH" && exit 1
+.endif
+.if !defined(ZIP)
+ @echo "ZIP undefined in installCRUNCH" && exit 1
+.endif
+ if ${ZIP} ; then \
+ gzip -9 < ${RD}/crunch/${CRUNCH} > ${DIR}/${CRUNCH}_crunch ; \
+ else \
+ ln -f ${RD}/crunch/${CRUNCH} ${DIR}/${CRUNCH}_crunch ; \
+ fi
+ chmod 555 ${DIR}/${CRUNCH}_crunch
+ for i in `crunchgen -l ${.CURDIR}/${CRUNCH}_crunch.conf` ; do \
+ ln -f ${DIR}/${CRUNCH}_crunch ${DIR}/$$i ; \
+ done
+
+#
+# --==## Compile a kernel by name ${KERNEL} ##==--
+#
+# We don't erase the sys/compile/${KERNEL} directory, since somebody
+# may want to reuse it (release.8 presently)
+#
+doKERNEL:
+ rm -f ${RD}/kernels/${KERNEL}
+ cd ${.CURDIR}/../sys/i386/conf && config ${KERNEL}
+ cd ${.CURDIR}/../sys/compile/${KERNEL} && \
+ make depend && \
+ make kernel && \
+ cp kernel ${RD}/kernels/${KERNEL}
+
+#
+# --==## Put a filesystem into a BOOTMFS kernel ##==--
+#
+doMFSKERN:
+ @rm -f ${RD}/kernels/BOOTMFS.${FSIMAGE}
+ @rm -f /sys/compile/BOOTMFS/mfs_vfsops.o
+ @cd ${.CURDIR}/../sys/i386/conf && \
+ sed -e '/pty/d' \
+ -e '/PROCFS/d' \
+ -e '/KTRACE/d' \
+ -e 's/GENERIC/BOOTMFS/g' \
+ -e '/maxusers/s/10/4/' < GENERIC > BOOTMFS && \
+ echo "options MFS" >> BOOTMFS && \
+ echo "options NFS_NOSERVER" >> BOOTMFS && \
+ echo 'options "MAXCONS=4"' >> BOOTMFS && \
+ echo "options USERCONFIG_BOOT" >> BOOTMFS
+ @echo "options \"MFS_ROOT=`cat fs-image.${FSIMAGE}.size`\"" >> \
+ ${.CURDIR}/../sys/i386/conf/BOOTMFS
+ cd ${.CURDIR} && ${MAKE} doKERNEL KERNEL=BOOTMFS
+ @rm -rf ${RD}/boot.${FSIMAGE}
+ @mkdir ${RD}/boot.${FSIMAGE}
+ @mv ${RD}/kernels/BOOTMFS ${RD}/kernels/BOOTMFS.${FSIMAGE}
+ @cp ${RD}/kernels/BOOTMFS.${FSIMAGE} ${RD}/boot.${FSIMAGE}/kernel
+.if defined(BOOT_CONFIG)
+ @echo "${BOOT_CONFIG}" >${RD}/boot.${FSIMAGE}/boot.config
+.endif
+ @vnconfig /dev/${VNDEVICE} fs-image.${FSIMAGE}
+ @mkdir -p /tmp/mnt_xx
+ @mount /dev/${VNDEVICE} /tmp/mnt_xx
+ ./dumpnlist ${RD}/boot.${FSIMAGE}/kernel > /tmp/mnt_xx/stand/symbols
+ @umount /tmp/mnt_xx
+ @vnconfig -u /dev/${VNDEVICE}
+ @rmdir /tmp/mnt_xx
+ ./write_mfs_in_kernel ${RD}/boot.${FSIMAGE}/kernel \
+ fs-image.${FSIMAGE}
+ kzip -v ${RD}/boot.${FSIMAGE}/kernel
+ @mv ${RD}/boot.${FSIMAGE}/kernel ${RD}/kernels/MFSKERNEL.${FSIMAGE}
+ @mv ${RD}/boot.${FSIMAGE}/kernel.kz ${RD}/boot.${FSIMAGE}/kernel
+ @cp ${.CURDIR}/../sys/i386/boot/biosboot/boot.help ${RD}/boot.${FSIMAGE}
+ @printf \\a\\a\\a >> ${RD}/boot.${FSIMAGE}/boot.help
+ @touch ${RD}/boot.${FSIMAGE}/boot.config
+ @touch ${RD}/boot.${FSIMAGE}/kernel.config
+ @rm -f ${RD}/floppies/boot${FSIMAGE}.flp
+ sh -e ${.CURDIR}/doFS.sh ${RD} ${MNT} ${FDSIZE} ${RD}/boot.${FSIMAGE} \
+ ${BOOTINODE} ${FDLABEL}
+ mv fs-image ${RD}/floppies/boot${FSIMAGE}.flp
+
+.include <bsd.prog.mk>
View
33 freebsd2/release/README.TXT
@@ -0,0 +1,33 @@
+For a normal CDROM or network installation, all you need to copy onto an
+actual floppy from this directory is the boot.flp image (for 1.44MB floppies).
+
+NOTE: These images are NOT DOS files! You cannot simply copy them to
+a DOS floppy as regular files, you need to *image* copy them to the
+floppy with fdimage.exe under DOS or `dd' under UNIX.
+
+For example:
+
+To create the boot floppy image from DOS, you'd do something like
+this:
+
+C> fdimage boot.flp a:
+
+Assuming that you'd copied fdimage.exe and boot.flp into a directory
+somewhere. If you were doing this from the base of a CD distribution,
+then the *exact* command would be:
+
+E> tools\fdimage floppies\boot.flp a:
+
+
+If you're creating the boot floppy from a UNIX machine, you may find
+that:
+
+ dd if=floppies/boot.flp of=/dev/rfd0
+
+or
+
+ dd if=floppies/boot.flp of=/dev/floppy
+
+work well, depending on your hardware and operating system environment
+(different versions of UNIX have totally different names for the
+floppy drive - neat, huh? :-).
View
15 freebsd2/release/boot_crunch.conf
@@ -0,0 +1,15 @@
+# $Id: boot_crunch.conf,v 1.24.2.3 1998/01/30 20:54:27 brian Exp $
+
+srcdirs /usr/src/bin /usr/src/sbin /usr/src/release /usr/src/usr.bin
+srcdirs /usr/src/gnu/usr.bin /usr/src/usr.sbin /usr/src/sbin/i386
+
+progs sh find
+progs pwd ft ppp
+progs sysinstall newfs gzip cpio bad144 fsck ifconfig route slattach
+progs mount_nfs
+ln gzip gunzip
+ln gzip zcat
+ln sh -sh
+
+libs -ll -ledit -lutil -lkvm -lmd -lcrypt -lftpio -lz
+libs -ldialog -lncurses -lmytinfo -L/usr/src/release/libdisk/obj -ldisk -lipx
View
70 freebsd2/release/doFS.sh
@@ -0,0 +1,70 @@
+:
+#set -ex
+
+if [ "x$VNDEVICE" = "x" ] ; then
+ VNDEVICE=vn0
+fi
+export BLOCKSIZE=512
+
+RD=$1 ; shift
+MNT=$1 ; shift
+FSSIZE=$1 ; shift
+FSPROTO=$1 ; shift
+FSINODE=$1 ; shift
+FSLABEL=$1 ; shift
+
+deadlock=20
+
+while true
+do
+ rm -f fs-image
+
+ if [ ! -b /dev/${VNDEVICE} -o ! -c /dev/r${VNDEVICE} ] ; then
+ ( cd /dev && sh MAKEDEV ${VNDEVICE} )
+ fi
+
+ umount /dev/${VNDEVICE} 2>/dev/null || true
+
+ umount ${MNT} 2>/dev/null || true
+
+ vnconfig -u /dev/r${VNDEVICE} 2>/dev/null || true
+
+ dd of=fs-image if=/dev/zero count=${FSSIZE} bs=1k 2>/dev/null
+ # this suppresses the `invalid primary partition table: no magic'
+ awk 'BEGIN {printf "%c%c", 85, 170}' |\
+ dd of=fs-image obs=1 seek=510 conv=notrunc 2>/dev/null
+
+ vnconfig -s labels -c /dev/r${VNDEVICE} fs-image
+
+ disklabel -Brw \
+ -b ${RD}/trees/bin/usr/mdec/fdboot \
+ -s ${RD}/trees/bin/usr/mdec/bootfd \
+ /dev/r${VNDEVICE} minimum
+
+ newfs -u 0 -t 0 -i ${FSINODE} -m 0 -T minimum -o space /dev/r${VNDEVICE}c
+
+ mount /dev/${VNDEVICE}c ${MNT}
+
+ ( set -e && cd ${FSPROTO} && find . -print | cpio -dump ${MNT} )
+
+ df -ki /mnt
+
+ set `df -ki /mnt | tail -1`
+
+ umount ${MNT}
+
+ fsck -p /dev/r${VNDEVICE}c < /dev/null
+
+ vnconfig -u /dev/r${VNDEVICE} 2>/dev/null || true
+
+ if [ $FSLABEL != "minimum" ] ; then
+ echo ${FSSIZE} > fs-image.size
+ break
+ fi
+
+ echo ">>> Filesystem is ${FSSIZE} K, $4 left"
+ echo ">>> ${FSINODE} bytes/inode, $7 left"
+ echo ">>> `expr ${FSSIZE} \* 1024 / ${FSINODE}`"
+ echo ${FSSIZE} > fs-image.size
+ break;
+done
View
44 freebsd2/release/dumpnlist.c
@@ -0,0 +1,44 @@
+#include <sys/types.h>
+#include <sys/fcntl.h>
+#include <unistd.h>
+#include <stdlib.h>
+#include <nlist.h>
+#include <stdio.h>
+
+struct nlist nl[] = {
+ {"_isa_devtab_bio"},
+ {"_isa_devtab_tty"},
+ {"_isa_devtab_net"},
+ {"_isa_devtab_null"},
+ {"_isa_biotab_wdc"},
+ {"_isa_biotab_fdc"},
+ {"_eisadriver_set"},
+ {"_eisa_dev_list"},
+ {"_pcidevice_set"},
+ {"_device_list"},
+ {"_scbusses"},
+ {"_scsi_cinit"},
+ {"_scsi_dinit"},
+ {"_scsi_tinit"},
+ {""},
+};
+
+int
+main(int ac, char **av)
+{
+ int i;
+
+ i = nlist(av[1], nl);
+ if (i == -1) {
+ fprintf(stderr, "nlist returns error for %s\n", av[1]);
+ perror("nlist");
+ return 1;
+ }
+ printf("%d\n", sizeof(nl) / sizeof(struct nlist));
+ for (i = 0; nl[i].n_name; i++) {
+ printf("%s\n", nl[i].n_name);
+ printf("%d %d %d %ld\n",
+ nl[i].n_type, nl[i].n_other, nl[i].n_desc, nl[i].n_value);
+ }
+ return 0;
+}
View
36 freebsd2/release/fixit.profile
@@ -0,0 +1,36 @@
+:
+# $Id: fixit.profile,v 1.1.6.3 1997/03/02 12:03:31 joerg Exp $
+
+export BLOCKSIZE=K
+export PS1="Fixit# "
+export EDITOR="/mnt2/stand/vi"
+export PAGER="/mnt2/stand/more"
+export SCSI_MODES="/mnt2/usr/share/misc/scsi_modes"
+# the root MFS doesn't have /dev/nrst0, pick a better default for mt(1)
+export TAPE=/mnt2/dev/nrst0
+
+alias ls="ls -F"
+alias ll="ls -l"
+alias m="more -e"
+
+echo '+---------------------------------------------------------------+'
+echo '| You are now running from a FreeBSD "fixit" floppy. |'
+echo '| ------------------------------------------------------------- |'
+echo "| When you're finished with this shell, please type exit. |"
+echo '| The fixit floppy itself is mounted as /mnt2. |'
+echo '| |'
+echo '| You might want to symlink /mnt/etc/*pwd.db and /mnt/etc/group |'
+echo '| to /etc after mounting a root filesystem from your disk. |'
+echo '| tar(1) will not restore all permissions correctly otherwise! |'
+echo '| |'
+echo '| Note: you might use the arrow keys to browse through the |'
+echo '| command history of this shell. |'
+echo '+---------------------------------------------------------------+'
+echo
+echo 'Good Luck!'
+echo
+
+# Make the arrow keys work; everybody will love this.
+set -o emacs 2>/dev/null
+
+cd /
View
108 freebsd2/release/fixit.services
@@ -0,0 +1,108 @@
+#
+# Network services, Internet style
+#
+# Stripped-down version.
+#
+# $Id: fixit.services,v 1.1 1996/11/09 16:25:32 joerg Exp $
+#
+# WELL KNOWN PORT NUMBERS
+#
+echo 7/tcp
+echo 7/udp
+discard 9/tcp sink null
+discard 9/udp sink null
+systat 11/tcp users #Active Users
+systat 11/udp users #Active Users
+daytime 13/tcp
+daytime 13/udp
+chargen 19/tcp ttytst source #Character Generator
+chargen 19/udp ttytst source #Character Generator
+ftp-data 20/tcp #File Transfer [Default Data]
+ftp-data 20/udp #File Transfer [Default Data]
+ftp 21/tcp #File Transfer [Control]
+ftp 21/udp #File Transfer [Control]
+ssh 22/tcp #Secure Shell Login
+ssh 22/udp #Secure Shell Login
+telnet 23/tcp
+telnet 23/udp
+# 24/tcp any private mail system
+# 24/udp any private mail system
+smtp 25/tcp mail #Simple Mail Transfer
+smtp 25/udp mail #Simple Mail Transfer
+time 37/tcp timserver
+time 37/udp timserver
+domain 53/tcp #Domain Name Server
+domain 53/udp #Domain Name Server
+bootps 67/tcp dhcps #Bootstrap Protocol Server
+bootps 67/udp dhcps #Bootstrap Protocol Server
+bootpc 68/tcp dhcpc #Bootstrap Protocol Client
+bootpc 68/udp dhcpc #Bootstrap Protocol Client
+tftp 69/tcp #Trivial File Transfer
+tftp 69/udp #Trivial File Transfer
+gopher 70/tcp
+gopher 70/udp
+finger 79/tcp
+finger 79/udp
+http 80/tcp www www-http #World Wide Web HTTP
+http 80/udp www www-http #World Wide Web HTTP
+sunrpc 111/tcp rpcbind #SUN Remote Procedure Call
+sunrpc 111/udp rpcbind #SUN Remote Procedure Call
+auth 113/tcp ident tap #Authentication Service
+auth 113/udp ident tap #Authentication Service
+nntp 119/tcp usenet #Network News Transfer Protocol
+nntp 119/udp usenet #Network News Transfer Protocol
+rmt 411/tcp #Remote MT Protocol
+rmt 411/udp #Remote MT Protocol
+https 443/tcp
+https 443/udp
+#
+# Berkeley-specific services
+#
+exec 512/tcp #remote process execution;
+# authentication performed using
+# passwords and UNIX loppgin names
+biff 512/udp comsat #used by mail system to notify users
+# of new mail received; currently
+# receives messages only from
+# processes on the same machine
+login 513/tcp #remote login a la telnet;
+# automatic authentication performed
+# based on priviledged port numbers
+# and distributed data bases which
+# identify "authentication domains"
+who 513/udp whod #maintains data bases showing who's
+# logged in to machines on a local
+# net and the load average of the
+# machine
+cmd 514/tcp shell #like exec, but automatic
+# authentication is performed as for
+# login server
+syslog 514/udp
+printer 515/tcp spooler
+printer 515/udp spooler
+talk 517/tcp #like tenex link, but across
+# machine - unfortunately, doesn't
+# use link protocol (this is actually
+# just a rendezvous port from which a
+# tcp connection is established)
+talk 517/udp #like tenex link, but across
+# machine - unfortunately, doesn't
+# use link protocol (this is actually
+# just a rendezvous port from which a
+# tcp connection is established)
+ntalk 518/tcp
+ntalk 518/udp
+utime 519/tcp unixtime
+utime 519/udp unixtime
+efs 520/tcp #extended file name server
+router 520/udp route routed #local routing process (on site);
+# uses variant of Xerox NS routing
+# information protocol
+uucp 540/tcp uucpd
+uucp 540/udp uucpd
+uucp-rlogin 541/tcp
+uucp-rlogin 541/udp
+klogin 543/tcp # Kerberos (v4/v5)
+klogin 543/udp # Kerberos (v4/v5)
+kshell 544/tcp krcmd # Kerberos (v4/v5)
+kshell 544/udp krcmd # Kerberos (v4/v5)
View
42 freebsd2/release/fixit_crunch.conf
@@ -0,0 +1,42 @@
+# $Id: fixit_crunch.conf,v 1.8.2.3 1997/09/16 18:55:04 jkh Exp $
+
+# first, we list the source dirs that our programs reside in. These are
+# searched in order listed to find the dir containing each program.
+
+srcdirs /usr/src/bin /usr/src/sbin /usr/src/usr.bin /usr/src/usr.sbin
+srcdirs /usr/src/gnu/usr.bin /usr/src/usr.bin/vi
+srcdirs /usr/src/sbin/i386
+
+# second, we list all the programs we want to include in our crunched binary.
+# The order doesn't matter. Any program that needs hard links to it gets an
+# `ln' directive.
+
+# /bin stuff
+
+progs cat chmod chroot cp date dd df echo ed expr hostname kill ln ls mkdir
+progs mt mv pwd rcp rm rmdir sleep stty sync test
+
+ln test [
+
+# /sbin stuff
+
+progs badsect chown clri disklabel dump dmesg fdisk ft
+progs mknod mount newfs ping reboot restore scsi swapon umount
+
+progs mount_msdos mount_cd9660 mount_nfs
+
+ln dump rdump
+ln restore rrestore
+ln newfs mount_mfs
+ln chown chgrp
+
+# /usr/bin stuff
+
+progs ftp more rsh sed telnet rlogin vi find grep
+ln vi view
+ln vi ex
+
+# finally, we specify the libraries to link in with our binary
+
+libs -lcrypt -ltelnet -lutil -ll -lm
+libs -lcurses -ltermcap -ledit -lgnuregex -lkvm -lscsi
View
7 freebsd2/release/floppies/Makefile
@@ -0,0 +1,7 @@
+# $Id: Makefile,v 1.3.4.1 1998/07/16 10:16:01 jkh Exp $
+#
+SUBDIR= bin boot fixit
+
+.include <bsd.subdir.mk>
+
+
View
7 freebsd2/release/floppies/bin/Makefile
@@ -0,0 +1,7 @@
+# $Id: Makefile,v 1.1 1997/07/22 02:50:57 julian Exp $
+#
+SUBDIR= write_mfs_in_kernel dumpnlist
+
+.include <bsd.subdir.mk>
+
+
View
71 freebsd2/release/floppies/bin/doFS.sh
@@ -0,0 +1,71 @@
+:
+#set -ex
+
+VNDEVICE=vn0
+export BLOCKSIZE=512
+
+BOOTBLKDIR=$1 ; shift
+MNT=$1 ; shift
+FSSIZE=$1 ; shift
+FSPROTO=$1 ; shift
+FSINODE=$1 ; shift
+FSLABEL=$1 ; shift
+
+deadlock=20
+
+while true
+do
+ rm -f fs-image
+
+ if [ ! -b /dev/${VNDEVICE} -o ! -c /dev/r${VNDEVICE} ] ; then
+ ( cd /dev && sh MAKEDEV ${VNDEVICE} )
+ fi
+
+ umount /dev/${VNDEVICE} 2>/dev/null || true
+
+ umount ${MNT} 2>/dev/null || true
+
+ vnconfig -u /dev/r${VNDEVICE} 2>/dev/null || true
+
+ dd of=fs-image if=/dev/zero count=${FSSIZE} bs=1k 2>/dev/null
+ # this suppresses the `invalid primary partition table: no magic'
+ awk 'BEGIN {printf "%c%c", 85, 170}' |\
+ dd of=fs-image obs=1 seek=510 conv=notrunc 2>/dev/null
+
+ vnconfig -s labels -c /dev/r${VNDEVICE} fs-image
+
+ disklabel -Brw \
+ -b ${BOOTBLKDIR}/boot1 \
+ -s ${BOOTBLKDIR}/boot2 \
+ /dev/r${VNDEVICE} minimum
+
+ TPC=1
+ CPD=1
+ SPT=$(( 2 * $FSSIZE / 2))
+ newfs -u ${SPT} -t ${TPC} -s $(( ${FSSIZE} * 2 )) -i ${FSINODE} -m 0 -o space /dev/r${VNDEVICE}c
+
+ mount /dev/${VNDEVICE}c ${MNT}
+
+ ( set -e && cd ${FSPROTO} && find . -print | cpio -dump ${MNT} )
+
+ df -ki /mnt
+
+ set `df -ki /mnt | tail -1`
+
+ umount ${MNT}
+
+ fsck -p /dev/r${VNDEVICE}c < /dev/null
+
+ vnconfig -u /dev/r${VNDEVICE} 2>/dev/null || true
+
+ if [ $FSLABEL != "minimum" ] ; then
+ echo ${FSSIZE} > fs-image.size
+ break
+ fi
+
+ echo ">>> Filesystem is ${FSSIZE} K, $4 left"
+ echo ">>> ${FSINODE} bytes/inode, $7 left"
+ echo ">>> `expr ${FSSIZE} \* 1024 / ${FSINODE}`"
+ echo ${FSSIZE} > fs-image.size
+ break;
+done
View
8 freebsd2/release/floppies/bin/dumpnlist/Makefile
@@ -0,0 +1,8 @@
+# $Id: Makefile,v 1.1 1997/07/22 02:50:58 julian Exp $
+#
+PROG=dumpnlist
+NOMAN=yes
+
+.include <bsd.prog.mk>
+
+
View
44 freebsd2/release/floppies/bin/dumpnlist/dumpnlist.c
@@ -0,0 +1,44 @@
+#include <sys/types.h>
+#include <sys/fcntl.h>
+#include <unistd.h>
+#include <stdlib.h>
+#include <nlist.h>
+#include <stdio.h>
+
+struct nlist nl[] = {
+ {"_isa_devtab_bio"},
+ {"_isa_devtab_tty"},
+ {"_isa_devtab_net"},
+ {"_isa_devtab_null"},
+ {"_isa_biotab_wdc"},
+ {"_isa_biotab_fdc"},
+ {"_eisadriver_set"},
+ {"_eisa_dev_list"},
+ {"_pcidevice_set"},
+ {"_device_list"},
+ {"_scbusses"},
+ {"_scsi_cinit"},
+ {"_scsi_dinit"},
+ {"_scsi_tinit"},
+ {""},
+};
+
+int
+main(int ac, char **av)
+{
+ int i;
+
+ i = nlist(av[1], nl);
+ if (i == -1) {
+ fprintf(stderr, "nlist returns error for %s\n", av[1]);
+ perror("nlist");
+ return 1;
+ }
+ printf("%d\n", sizeof(nl) / sizeof(struct nlist));
+ for (i = 0; nl[i].n_name; i++) {
+ printf("%s\n", nl[i].n_name);
+ printf("%d %d %d %ld\n",
+ nl[i].n_type, nl[i].n_other, nl[i].n_desc, nl[i].n_value);
+ }
+ return 0;
+}
View
8 freebsd2/release/floppies/bin/write_mfs_in_kernel/Makefile
@@ -0,0 +1,8 @@
+# $Id: Makefile,v 1.1 1997/07/22 02:50:59 julian Exp $
+#
+PROG=write_mfs_in_kernel
+NOMAN=yes
+
+.include <bsd.prog.mk>
+
+
View
70 freebsd2/release/floppies/bin/write_mfs_in_kernel/write_mfs_in_kernel.c
@@ -0,0 +1,70 @@
+/*
+ * ----------------------------------------------------------------------------
+ * "THE BEER-WARE LICENSE" (Revision 42):
+ * <phk@login.dknet.dk> wrote this file. As long as you retain this notice you
+ * can do whatever you want with this stuff. If we meet some day, and you think
+ * this stuff is worth it, you can buy me a beer in return. Poul-Henning Kamp
+ * ----------------------------------------------------------------------------
+ *
+ * $Id: write_mfs_in_kernel.c,v 1.1 1997/07/22 02:50:59 julian Exp $
+ *
+ * This program patches a filesystem into a kernel made with MFS_ROOT
+ * option.
+ */
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <unistd.h>
+#include <fcntl.h>
+#include <sys/types.h>
+#include <sys/param.h>
+#include <sys/stat.h>
+#include <ufs/ffs/fs.h>
+
+main(int argc, char **argv)
+{
+ unsigned char *buf_kernel, *buf_fs, *p,*q;
+ int fd_kernel, fd_fs;
+ struct stat st_kernel, st_fs;
+ u_long l;
+
+ if (argc < 3) {
+ fprintf(stderr,"Usage:\n\t%s kernel fs\n");
+ exit(2);
+ }
+ fd_kernel = open(argv[1],O_RDWR);
+ if (fd_kernel < 0) { perror(argv[1]); exit(2); }
+ fstat(fd_kernel,&st_kernel);
+ fd_fs = open(argv[2],O_RDONLY);
+ if (fd_fs < 0) { perror(argv[2]); exit(2); }
+ fstat(fd_fs,&st_fs);
+ buf_kernel = malloc(st_kernel.st_size);
+ if (!buf_kernel) { perror("malloc"); exit(2); }
+ buf_fs = malloc(st_fs.st_size);
+ if (!buf_fs) { perror("malloc"); exit(2); }
+ if (st_kernel.st_size != read(fd_kernel,buf_kernel,st_kernel.st_size))
+ { perror(argv[1]); exit(2); }
+ if (st_fs.st_size != read(fd_fs,buf_fs,st_fs.st_size))
+ { perror(argv[2]); exit(2); }
+ for(l=0,p=buf_kernel; l < st_kernel.st_size - st_fs.st_size ; l++,p++ )
+ if(*p == 'M' && !strcmp(p,"MFS Filesystem goes here"))
+ goto found;
+ fprintf(stderr,"MFS filesystem signature not found in %s\n",argv[1]);
+ exit(1);
+ found:
+ for(l=0,q= p + SBOFF; l < st_fs.st_size - SBOFF ; l++,q++ )
+ if (*q)
+ goto fail;
+ memcpy(p+SBOFF,buf_fs+SBOFF,st_fs.st_size-SBOFF);
+ lseek(fd_kernel,0L,SEEK_SET);
+ if (st_kernel.st_size != write(fd_kernel,buf_kernel,st_kernel.st_size))
+ { perror(argv[1]); exit(2); }
+ exit(0);
+ fail:
+ l += SBOFF;
+ fprintf(stderr,"Obstruction in kernel after %ld bytes (%ld Kbyte)\n",
+ l, l/1024);
+ fprintf(stderr,"Filesystem is %ld bytes (%ld Kbyte)\n",
+ (u_long)st_fs.st_size, (u_long)st_fs.st_size/1024);
+ exit(1);
+}
View
4 freebsd2/release/floppies/boot/Makefile
@@ -0,0 +1,4 @@
+# $Id: Makefile,v 1.1 1996/05/21 01:12:32 julian Exp $
+SUBDIR= crunch mfs floppy
+
+.include <bsd.subdir.mk>
View
15 freebsd2/release/floppies/boot/crunch/Makefile
@@ -0,0 +1,15 @@
+OBJTOP=../../../..
+SYSINSTALL= ${OBJTOP}/release/sysinstall/sysinstall
+
+all: ${SYSINSTALL}
+
+${SYSINSTALL}:
+ cd ${.CURDIR}/../../../../release/sysinstall ; make
+ @if ! test -f ${SYSINSTALL} ; then \
+ ${ECHO} "sysinstall not made" ; \
+ ${ECHO} "Possibly need to 'make obj' for floppies and sysinstall" ; \
+ exit 1; \
+ fi
+
+.include "../../mk/makecrunch.mk"
+
View
23 freebsd2/release/floppies/boot/crunch/crunch.conf
@@ -0,0 +1,23 @@
+# $Id: crunch.conf,v 1.1.4.1 1998/07/16 10:26:48 jkh Exp $
+
+srcdirs /usr/src/bin
+srcdirs /usr/src/release
+srcdirs /usr/src/sbin/i386
+srcdirs /usr/src/sbin
+srcdirs /usr/src/usr.bin
+srcdirs /usr/src/gnu/usr.bin
+srcdirs /usr/src/usr.sbin
+
+progs sh find
+progs pwd ft ppp
+progs sysinstall newfs gzip cpio bad144 fsck ifconfig route slattach
+progs mount_nfs
+ln gzip gunzip
+ln gzip zcat
+ln sh -sh
+
+libs -ll -ledit -lutil -lkvm -lmd -lcrypt -lftpio
+libs -ldialog -lncurses -lmytinfo -L/usr/src/release/libdisk/obj -ldisk -lipx
+#libs -ll -ledit -lutil -lkvm -lmd -lcrypt -lftpio -lalias
+#libs -ldialog -lncurses -lmytinfo -L/usr/src/release/libdisk/obj -ldisk -lipx
+
View
112 freebsd2/release/floppies/boot/floppy/Makefile
@@ -0,0 +1,112 @@
+
+# $Id: Makefile,v 1.3.4.1 1998/07/16 10:26:52 jkh Exp $
+# If this is a RELEASE, then set
+
+# Things which without too much trouble can be considered variables
+
+# mountpoint for filesystems.
+TOP=${.CURDIR}/../../../..
+OBJTOP=${.OBJDIR}/../../../..
+FS_BIN=../../bin
+SCRIPTDIR=${.CURDIR}/../../bin
+
+MNT= /mnt
+
+# other floppy parameters.
+FSSIZE= 1200
+FSLABEL= fd1200
+FSINODE= 4300
+
+NEWFSARGS= -c 80 -b 4096 -f 512 -i 4000 -m 0 -t 0 -u 0 \
+ -o space -T ${FSLABEL}
+
+
+# Upper size for the mfs in the boot.flp kernel.
+# These are adjusted down to the minimum needed by doFS.sh.
+BOOTMFSSIZE= 1200
+MFSINODE= 40000
+
+# Things which will get you into trouble if you change them
+MTREEFILES= ${.CURDIR}/../etc/mtree
+
+
+# Complete the bootfd
+#
+# Now, just to get this picture down once and for all:
+#
+# +------------------------------------------------------------------------+
+# |boot.flp |
+# +-----+-----+------------------------------------------------------------+
+# |boot1|boot2|floppy filesystem "bootfd" |
+# +-----+-----+-+--------------------------------------------------------+-+
+# |kernel |
+# +------------+-----------------------------------------+-+
+# |mfs filesystem "mfsfd" |
+# +-----------------------------------------+
+#
+
+all: ${FS_BIN}/write_mfs_in_kernel
+ cd ${.CURDIR} && ${MAKE} doMFSKERN
+
+
+
+#
+# --==## Compile a kernel by name ${KERNEL} ##==--
+#
+# We don't erase the sys/compile/${KERNEL} directory, since somebody
+# may want to reuse it (release.8 presently)
+#
+CONF=${TOP}/sys/i386/conf
+COMPILE=${TOP}/sys/compile
+doKERNEL:
+ cd ${CONF} && config ${KERNEL}
+ cd ${COMPILE}/${KERNEL} && \
+ make depend && \
+ make kernel && \
+
+#
+# --==## Put a filesystem into a BOOTMFS kernel ##==--
+#
+LABELDIR=${OBJTOP}/sys/i386/boot/biosboot
+
+${COMPILE}/BOOTMFS/kernel:
+ rm -f ${COMPILE}/BOOTMFS/mfs_vfsops.o
+ cd ${CONF} && \
+ sed -e '/SYSV/d' \
+ -e '/pty/d' \
+ -e '/PROCFS/d' \
+ -e '/KTRACE/d' \
+ -e 's/GENERIC/BOOTMFS/g' \
+ -e '/maxusers/s/10/4/' < GENERIC > BOOTMFS && \
+ echo "options MFS" >> BOOTMFS && \
+ echo "options NFS_NOSERVER" >> BOOTMFS && \
+ echo 'options "MAXCONS=4"' >> BOOTMFS && \
+ echo "options USERCONFIG_BOOT" >> BOOTMFS
+ echo "options \"MFS_ROOT=`cat ../mfs/fs-image.size`\"" >> \
+ ${CONF}/BOOTMFS
+ cd ${.CURDIR} && ${MAKE} doKERNEL KERNEL=BOOTMFS
+
+doMFSKERN: ${COMPILE}/BOOTMFS/kernel
+ -mkdir tree
+ cp ${COMPILE}/BOOTMFS/kernel tree
+ ${FS_BIN}/write_mfs_in_kernel/write_mfs_in_kernel tree/kernel ../mfs/fs-image
+ kzip -v tree/kernel
+ mv tree/kernel.kz tree/kernel
+ cp ${COMPILE}/../i386/boot/biosboot/boot.help tree
+ touch tree/boot.config
+ @vnconfig /dev/vn0 ../mfs/fs-image
+ @mkdir -p /tmp/mnt_xx
+ @mount /dev/vn0 /tmp/mnt_xx
+ ${FS_BIN}/dumpnlist/dumpnlist ${COMPILE}/BOOTMFS/kernel > /tmp/mnt_xx/stand/symbols
+ @umount /tmp/mnt_xx
+ @vnconfig -u /dev/vn0
+ @rmdir /tmp/mnt_xx
+
+ sh -e ${SCRIPTDIR}/doFS.sh ${LABELDIR} ${MNT} ${FSSIZE} tree \
+ 10000 ${FSLABEL}
+
+clean:
+ rm -rf tree fs-image fs-image.size
+
+.include <bsd.prog.mk>
+
View
25 freebsd2/release/floppies/boot/mfs/Makefile
@@ -0,0 +1,25 @@
+###
+# $Id: Makefile,v 1.2.4.1 1998/07/16 10:26:56 jkh Exp $
+#
+# What are we if we weren't told..
+CRUNCHDIRS= ../crunch
+OBJTOP=../../../..
+TOP=${.CURDIR}/../../../..
+SCRIPTDIR=${.CURDIR}/../../bin
+FSLABEL=minimum
+ZIP=false
+
+# the directories you want on the fs
+STANDLINKS= bin sbin
+FS_DIRS= dev stand etc mnt mnt1 mnt2 tmp
+FS_DEVICES= std wd0 wd1 wd2 sd0 sd1 sd2 cuaa0 cuaa1 cuaa2 cuaa3 \
+ fd0 fd1 cd0 mcd0 scd0 matcd0 wcd0 st0 ft0 wt0 vty4
+# a subdir that contains a verbatim image to be copied to the fs
+VERBATIM= ../verbatim
+
+.include "../../mk/crunch_fs.mk"
+all: fs_image
+
+# tar --exclude CVS -cf - -C ${.CURDIR}/sysinstall help | \
+# tar xvf - -C ${RD}/mfsfd/stand
+
View
4 freebsd2/release/floppies/boot/verbatim/etc/services
@@ -0,0 +1,4 @@
+nameserver 42/tcp name
+ftp 21/tcp
+domain 53/tcp nameserver
+domain 53/udp nameserver
View
6 freebsd2/release/floppies/fixit/Makefile
@@ -0,0 +1,6 @@
+###
+# $Id: Makefile,v 1.1 1996/05/21 01:12:39 julian Exp $
+#
+SUBDIR= crunch image
+
+.include <bsd.subdir.mk>
View
3  freebsd2/release/floppies/fixit/crunch/Makefile
@@ -0,0 +1,3 @@
+OBJTOP=../../../..
+.include "../../mk/makecrunch.mk"
+
View
45 freebsd2/release/floppies/fixit/crunch/crunch.conf
@@ -0,0 +1,45 @@
+# $Id: crunch.conf,v 1.1.4.1 1998/07/16 10:27:01 jkh Exp $
+
+# first, we list the source dirs that our programs reside in. These are
+# searched in order listed to find the dir containing each program.
+
+srcdirs /usr/src/bin
+srcdirs /usr/src/sbin/i386
+srcdirs /usr/src/sbin
+srcdirs /usr/src/gnu/usr.bin
+srcdirs /usr/src/usr.bin
+srcdirs /usr/src/usr.sbin
+srcdirs /usr/src/usr.bin/vi
+
+# second, we list all the programs we want to include in our crunched binary.
+# The order doesn't matter. Any program that needs hard links to it gets an
+# `ln' directive.
+
+# /bin stuff
+
+progs cat chmod chroot cp date dd df echo ed expr hostname kill ln ls mkdir
+progs mt mv pwd rcp rm rmdir sleep stty sync test
+
+ln test [
+
+# /sbin stuff
+
+progs badsect chown clri disklabel dump dmesg fdisk ft
+progs mknod mount newfs ping reboot restore scsi swapon umount
+
+progs mount_msdos mount_cd9660 mount_nfs
+ln dump rdump
+ln restore rrestore
+ln newfs mount_mfs
+ln chown chgrp
+
+# /usr/bin stuff
+
+progs ftp rsh sed telnet rlogin vi find grep
+ln vi view
+ln vi ex
+
+# finally, we specify the libraries to link in with our binary
+
+libs -lcrypt -ltelnet -lutil -ll -ltcl -lm
+libs -lcurses -ltermcap -ledit -lgnuregex -lkvm -lscsi
View
20 freebsd2/release/floppies/fixit/image/Makefile
@@ -0,0 +1,20 @@
+###
+# $Id: Makefile,v 1.1.4.1 1998/07/16 10:27:05 jkh Exp $
+#
+# What are we if we weren't told..
+CRUNCH?= fixit
+CRUNCHDIRS= ../crunch
+TOP=${.CURDIR}/../../../..
+OBJTOP=${.OBJDIR}/../../../..
+SCRIPTDIR=${.CURDIR}/../../bin
+#FSLABEL=minimum
+FSINODE=2000
+
+
+# the directories you want on the fs
+FS_DIRS= dev stand bin sbin etc mnt mnt1 mnt2 mnt3 mnt4 tmp
+# a subdir that contains a verbatim image to be copied to the fs
+VERBATIM= ../verbatim
+
+.include "../../mk/crunch_fs.mk"
+all: fs_image
View
15 freebsd2/release/floppies/fixit/verbatim/.profile
@@ -0,0 +1,15 @@
+:
+# $Id: .profile,v 1.1 1996/05/21 01:12:43 julian Exp $
+PATH=/stand
+BLOCKSIZE=K
+PS1="Fixit# "
+
+echo '+---------------------------------------------------+'
+echo '| You are now running from a FreeBSD "fixit" floppy |'
+echo '+---------------------------------------------------+'
+echo
+echo 'Good Luck!'
+echo
+
+export PATH BLOCKSIZE PS1
+
View
108 freebsd2/release/floppies/mk/crunch_fs.mk
@@ -0,0 +1,108 @@
+###
+# $Id: crunch_fs.mk,v 1.1 1997/07/22 02:51:02 julian Exp $
+#
+# This is included to make a floppy that includes a crunch file
+#
+# Variables that control this mk include file.
+# TOP specifies where the top of the FreeBSD source tree is.. (*)
+# FS_DIRS directories to make on the fs (*)
+# STANDLINKS added symlinks to /stand on the fs
+# VERBATIM a directory that contains tree to be copied to the fs
+# FSSIZE defaults to 1440
+# FSLABEL defaults to fd1440
+# FSINODE defaults to 4000
+# FS_DEVICES devices to make on the fs (using MAKEDEV) (default = all)
+# ZIP decides if the installed cruch will also be gzip'd(def=true)
+# (*) = Mandatory
+###
+
+# If we weren't told, default to nothing
+.if ! defined( TOP )
+# define TOP!
+xxx
+.endif
+
+# mountpoint for filesystems.
+MNT= /mnt
+
+# other floppy parameters.
+FSSIZE?= 1440
+FSLABEL?= fd1440
+FSINODE?= 2000
+FS_DEVICES?= all
+ZIP?=true
+
+# Things which will get you into trouble if you change them
+TREE= tree
+LABELDIR= ${OBJTOP}/sys/i386/boot/biosboot
+
+clean:
+ rm -rf tree fs-image fs-image.size step[0-9]
+
+.include <bsd.prog.mk>
+
+
+#
+# --==## Create a filesystem image ##==--
+#
+
+fs_image: ${TREE} step2 step3 step4 fs-image
+
+${TREE}: ${.CURDIR}/Makefile
+ rm -rf ${TREE}
+ mkdir -p ${TREE}
+ cd ${TREE} && mkdir ${FS_DIRS}
+ cd ${TREE} ; for i in ${STANDLINKS} ; \
+ do \
+ ln -s /stand $${i} ; \
+ done
+
+step2: ${.CURDIR}/${CRUNCHDIRS} ${.CURDIR}/Makefile
+.if defined(CRUNCHDIRS)
+ @cd ${.CURDIR} && $(MAKE) installCRUNCH DIR=${TREE}/stand ZIP=${ZIP}
+.endif
+ touch step2
+
+step3: step2
+.if defined (FS_DEVICES)
+ ( cd tree/dev && \
+ cp ${TOP}/etc/etc.i386/MAKEDEV . && sh MAKEDEV ${FS_DEVICES} )
+.endif
+ touch step3
+
+step4: step3
+.if defined(VERBATIM)
+ A=`pwd`;cd ${.CURDIR}/${VERBATIM}; \
+ find . \! \( -name CVS -and -prune \) -print |cpio -pdmuv $$A/tree
+.endif
+ true || cp ${TOP}/etc/spwd.db tree/etc
+ touch step4
+
+fs-image: step4
+ sh -e ${SCRIPTDIR}/doFS.sh ${LABELDIR} ${MNT} ${FSSIZE} tree \
+ ${FSINODE} ${FSLABEL}
+ cp fs-image.size ${.CURDIR}
+
+
+.if defined(CRUNCHDIRS)
+installCRUNCH:
+.if !defined(DIR)
+ @echo "DIR undefined in installCRUNCH" && exit 1
+.endif
+.if !defined(ZIP)
+ @echo "ZIP undefined in installCRUNCH" && exit 1
+.endif
+.for CRUNCHDIR in ${CRUNCHDIRS}
+ if ${ZIP} ; then \
+ gzip -9 < ${CRUNCHDIR}/crunch > ${DIR}/.crunch ; \
+ else \
+ ln -f ${CRUNCHDIR}/crunch ${DIR}/.crunch ; \
+ fi
+ chmod 555 ${DIR}/.crunch
+ for i in `crunchgen -l ${.CURDIR}/${CRUNCHDIR}/crunch.conf` ; do \
+ ln -f ${DIR}/.crunch ${DIR}/$$i ; \
+ done
+ rm -f ${DIR}/.crunch
+.endfor
+.endif
+
View
25 freebsd2/release/floppies/mk/makecrunch.mk
@@ -0,0 +1,25 @@
+
+
+SYSINSTALL= ${OBJTOP}/release/sysinstall/sysinstall
+
+NOCRYPT?= yes
+
+all: crunch
+
+crunch:
+ -crunchgen ${.CURDIR}/crunch.conf
+ ${MAKE} -f crunch.mk all NOCRYP=${NOCRYPT} \
+ "CFLAGS=${CFLAGS} -DCRUNCHED_BINARY"
+
+clean:
+ rm -f *.o *.stub *.lo *_stub.c *.mk \
+ crunch.cache \
+ crunch.mk \
+ crunch.c \
+ crunch \
+ .tmp_*
+
+install:
+ @echo " No idea what to do to install yet"
+
+.include <bsd.prog.mk>
View
8 freebsd2/release/info.sh
@@ -0,0 +1,8 @@
+#!/bin/sh
+# $ANA: info.sh,v 1.3 1996/06/04 16:25:30 wollman Exp $
+ls $1.[a-z][a-z] | wc | awk '{ print "Pieces = ",$1 }'
+for FILE in $1.[a-z][a-z]; do
+ PIECE=`echo $FILE | cut -d . -f 2`
+ echo -n "cksum.$PIECE = "
+ cksum $FILE | awk ' { print $1,$2 } '
+done
View
12 freebsd2/release/scripts/bin-install.sh
@@ -0,0 +1,12 @@
+#!/bin/sh
+#
+if [ "`id -u`" != "0" ]; then
+ echo "Sorry, this must be done as root."
+ exit 1
+fi
+echo "You are about to extract the base distribution into / - are you SURE"
+echo -n "you want to do this over your installed system (y/n)? "
+read ans
+if [ "$ans" = "y" ]; then
+ cat bin.?? | tar --unlink -xpzf - -C /
+fi
View
8 freebsd2/release/scripts/catpages-install.sh
@@ -0,0 +1,8 @@
+#!/bin/sh
+#
+if [ "`id -u`" != "0" ]; then
+ echo "Sorry, this must be done as root."
+ exit 1
+fi
+cat catpages.?? | tar --unlink -xpzf - -C /
+exit 0
View
10 freebsd2/release/scripts/catpages-make.sh
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+# Create the catpages dist - must follow manpages dist script, for obvious
+# reasons.
+if [ -d ${RD}/trees/manpages/usr/share/man ]; then
+ su -m man -c 'catman ${RD}/trees/manpages/usr/share/man' > /dev/null 2>&1;
+ ( cd ${RD}/trees/manpages/usr/share/man;
+ find cat* whatis | cpio -dumpl ${RD}/trees/catpages/usr/share/man ) &&
+ rm -rf ${RD}/trees/manpages/usr/share/man/cat*;
+fi
View
8 freebsd2/release/scripts/commerce-install.sh
@@ -0,0 +1,8 @@
+#!/bin/sh
+#
+if [ "`id -u`" != "0" ]; then
+ echo "Sorry, this must be done as root."
+ exit 1
+fi
+tar --unlink -xpzf commerce.tgz -C /usr/local
+exit 0
View
8 freebsd2/release/scripts/compat1x-install.sh
@@ -0,0 +1,8 @@
+#!/bin/sh
+#
+if [ "`id -u`" != "0" ]; then
+ echo "Sorry, this must be done as root."
+ exit 1
+fi
+cat compat1x.?? | tar --unlink -xpzf - -C /
+exit 0
View
8 freebsd2/release/scripts/compat20-install.sh
@@ -0,0 +1,8 @@
+#!/bin/sh
+#
+if [ "`id -u`" != "0" ]; then
+ echo "Sorry, this must be done as root."
+ exit 1
+fi
+cat compat20.?? | tar --unlink -xpzf - -C /
+exit 0
View
8 freebsd2/release/scripts/compat21-install.sh
@@ -0,0 +1,8 @@
+#!/bin/sh
+#
+if [ "`id -u`" != "0" ]; then
+ echo "Sorry, this must be done as root."
+ exit 1
+fi
+cat compat21.?? | tar --unlink -xpzf - -C /
+exit 0
View
19 freebsd2/release/scripts/des-install.sh
@@ -0,0 +1,19 @@
+#!/bin/sh
+#
+if [ "`id -u`" != "0" ]; then
+ echo "Sorry, this must be done as root."
+ exit 1
+fi
+echo "You are about to extract the DES distribution into / - are you SURE"
+echo "you want to do this over your installed system? If not, hit ^C now!"
+read junk
+cat des.?? | tar --unlink -xpzf - -C /
+cat krb.?? | tar --unlink -xpzf - -C /
+echo -n "Do you want to install the DES sources (y/n)? "
+read ans
+if [ "$ans" = "y" ]; then
+ cat scrypto.?? | tar --unlink -xpzf - -C /usr/src
+ cat skerbero.?? | tar --unlink -xpzf - -C /usr/src
+ cat ssecure.?? | tar --unlink -xpzf - -C /usr/src
+fi
+exit 0
View
8 freebsd2/release/scripts/dict-install.sh
@@ -0,0 +1,8 @@
+#!/bin/sh
+#
+if [ "`id -u`" != "0" ]; then
+ echo "Sorry, this must be done as root."
+ exit 1
+fi
+cat dict.?? | tar --unlink -xpzf - -C /
+exit 0
View
15 freebsd2/release/scripts/dict-make.sh
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+# Move the dict stuff out to its own dist
+if [ -d ${RD}/trees/bin/usr/share/dict ]; then
+ tar -cf - -C ${RD}/trees/bin/usr/share/dict . |
+ tar -xf - -C ${RD}/trees/dict/usr/share/dict &&
+ rm -rf ${RD}/trees/bin/usr/share/dict;
+fi
+
+for i in airport birthtoken flowers inter.phone na.phone zipcodes; do
+ if [ -f ${RD}/trees/bin/usr/share/misc/$i ]; then
+ mv ${RD}/trees/bin/usr/share/misc/$i \
+ ${RD}/trees/dict/usr/share/misc;
+ fi;
+done
View
12 freebsd2/release/scripts/doc-install.sh