🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

1 total messages Started by Rsk the Wombat Mon, 25 Jun 1984 16:37
Installing S under 4.2bsd
#26
Author: Rsk the Wombat
Date: Mon, 25 Jun 1984 16:37
132 lines
4814 bytes
	Here's some notes I made while installing S under 4.2; these
	changes seem to make life somewhat simpler, so I thought I'd
	share them and ask for comments for other folks out there.

	Many of these ideas came from Mike Meyer @ uwstat; The steps that 
	he recommended are flagged with an "MM" below.

	Conventions: ~ is S's home directory.

1. Things to do before you generate the system.

	1a. Get the 4.1c-under-4.2 f77 compiler, and install it.  I built
it in ~/sf77.  It comes with its own (simple) instructions and came up
with no problem.  You will need to edit ~/sf77/f77/drivedefs to define
the places where you will stash the driver and compiler phases; I used
~/sf77/bin and ~/sf77/lib.  You'll end up (after you delete .o's, etc.)
with the following files:

	~/sf77/bin/sf77
	~/sf77/lib/of77pass1
	~/sf77/lib/of1
	~/sf77/lib/oc2

	1b. Make the yacc that came with S.  You'll need to edit
~/src/yacc/files to change the directory names to reflect where "~" really is.
Make yacc.	[MM]

	1c. Make the m4 that came with S.  First of all, force it to use
the yacc created in 1b by adding the following line to ~/src/m4/makefile:

	YACC=~/src/yacc/yacc

	Then make m4.  It leaves the output in "a.out", so mv it to "m4". [MM]

2. Fixing S's makefiles to use all this hard work from step 1.

	2a. Change ~/cmd/makehead; define f77 as

	f77=$${SHOME}/sf77/bin/sf77

	and m4 as

	m4=$${SHOME}/src/m4/m4				[MM]

	It turns out that S likes to throw this file (~/cmd/makehead) onto
the beginning of every makefile it uses, so this changes the definition
universally.

	2b. Change ~/adm/cmd/MAKEm4 so that it uses the new m4 when
it tests "m4" to find out if it can handle certain constructions.  To do this,
change "m4" to "~/src/m4/m4".

3. Telling S where is lives (directories, operating system, and so on).

	3a. In the file ~/ENVIRONMENT, make sure that:

	OpSys=Berkeley					[MM]

	and make sure you have defined "SHOME" to point to S's home directory.

	3b. In the file ~/newfun/include/u/mach.m, make sure that:

	OpSys=Berkeley

	Change the line

	define(`F77_MAIN',`MAIN_')

	to

	define(`F77_MAIN',`MAIN__')			[MM]

	and add the line:

	define(`SHOME',`/userb/s')			[MM]

	(I don't know why you add this; ask Mike Meyer!)

	Also, change the definition of MAX_FILE_NAME_LEN to 255 (rather than
14).	[MM]

4. Optional things that may help later.

	4a. In ~/adm/cmd/SYSGEN, delete the "-s" flag on the make command;
this will keep make from being quiet, and might help if make dies somewhere.

	4b. In ~/cmd/MAKE, delete the "-s" flag on the make command.

	4c. Backup the following files, in case something weird happens:

	~/adm/cmd/LOGFILE
	~/adm/cmd/SOLUTION
	~/adm/cmd/LOGCOUNT

	4d. Fix the file ~/cmd/editor so that the (possible) spurious ":"
is deleted; I also changed the editor-to-use to "vi" instead of "ed". [MM]

5. Deciding what to include in S; and that nasty blit!

	5a. Copy the file ~/src/main/big.list to ~/src/main/infun.list;
this will cause S to load everything in together in the main executable.
This is sort of a local decision; on our 11/780, it creates a 1.16 Mbyte
binary.

	5b. Edit the file ~/src/main/stop.list so that it contains the 
line "blit".  [MM] I also included a line "blitid", since that function 
appeared in the "infun.list" mentioned above.

6. Building S.

	6a. Change to ~/adm/cmd. Type "SYSGEN", or if you want to see what
happens later, "SYSGEN | tee -a a-file-somewhere-which-logs-everything".

	6b. When SYSGEN finally finished (the next day, usually), edit
~/S to delete the line that includes a check for a writable directory;
or comment it out. [MM]

	6c. Make sure that you run "~/adm/cmd/DOTEST ALL"; it's one way
of checking the whole process.  Don't worry if the test files and standard
files don't *exactly* match; this is allowable for two reasons:

		1. The precision of the machines may not be the same.

		2. It looks like the commands are run with time(1) used;
	and the System V and 4.2BSD time(1) commands produce different output.
-- 
Rsk the Wombat
UUCP: { decvax, ihnp4, uiucdcs, ucbvax } !pur-ee!rsk
      { decwrl, hplabs, psuvax1 } !purdue!rsk

"Hey, has anybody seen a ghost?"
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads