Patching the source code
In order to keep up with recent development you could consider patching the
source code with patches as they come available.
Files needed for patching can be found here. In our case (SheepShaver) patches are sometimes written to get pieces of software running, although not good enough to be added to the stable source.
Below you will find remarks about how to apply patches in a general way.
Further down there is a example of a script you could use for automating the patch commands.
Patching the code is done through the "patch" command. Familiarise yourself with the syntax. The patch command takes several parameters, like an input file, and some directives about how to handle the patch. The input file is created with the "diff" command that lists the differenced between two files on the developers machine. You can use the .diff file to change the file on your machine accordingly. Remember the extension of the resulting file does not have to be ".diff" You can see an example of this in the script below.
A sample script to download, patch, compile and run SheepShaver:
(you will need a password to download, it is: anoncvs)
cvs -d :pserver:email@example.com:/cvs login
cvs -d :pserver:firstname.lastname@example.org:/cvs checkout BasiliskII
cvs -d :pserver:email@example.com:/cvs checkout SheepShaver
patch -p0 -i /cvs/patches/sheep_ethernet.diff
patch -p1 -i /cvs/patches/SheepShaver-2.2-hacks.patch
Explanation of the script:
The script creates some directories to download the source code and patches in, it then downloads the sources from CVS and gets the patches you want.
Next, it uses the patch command to apply the patches to the downloaded code. Finally it performs the compilation routine and calls SheepShaver to start.
In order to use the script make the file executable and run it in a terminal
Figure 1: making the script executable
You can change the script to your liking, whenever changes to patches are