UPPSE 0.8.x Patches

News

The official Portable Space Engine 0.9.x series of releases have begun. The features from my S80401 release are included in 0.9.0, and this page is here only as a record of pre 0.9.x development.

Introduction

I am working on extensions to the Portable Space Engine 0.8.x releases. Listed on this page is the latest patch to update the PSE to my current working tree, and also links to the archived patches I have previously released.

Generally the patches are cumulative - so you only need the latest one, as it includes all the previous changes. Please note that some of these patches will break the example code provided in the sample database. Be sure to take a backup before applying a patch, and to read the CHANGES file carefully after applying the patch because most of these patches require softcode changes to support new features.

NOTE: These patches may get folded into official releases. They are provided here to let folk help test the changes before they are considered for addition to the primary source tree. They receive a reasonable work-out on my MUX, but they are not heavily tested. I also do not test these changes on MUSH. Caveat Emptor and all that.

If you do find a bug you can only repeat with any of the above patches installed, please let me know at mpc@jts.homeip.net.

Current Patch

By popular demand, full tar files of these changes, along with the patch files are now available by ftp from: ftp://pc24.sr.bham.ac.uk/pub/pse/sources/pre0.9/

Previously Released Patches

Patching Tips

I have my directory structure organized like this:

/home/mux                 Top level
/home/mux/mux-1.4p12      Official mux distribution
/home/mux/mux-p70915      Last mux tree patched
/home/mux/mux-current     My current mux tree
/home/mux/mux             Sym-link to mux-current
/home/mux/mux/src/space   Sym-link to /home/mux/space

/home/mux/space-0.8.6     Current PSE distribution
/home/mux/space-s71206    Last PSE tree I patched
/home/mux/space-current   My current space tree
/home/mux/space           Sym-link to /home/mux/space-current

Now, when I need to change to an earlier version of the space engine, I just change the symbolic link /home/mux/space to point to the official engine, or an earlier patch version and recompile. Similarly, if I want to change the mux version, it's a simple case of changing the /home/mux/mux symbolic link to point to the right directory as all my startup scripts reference /home/mux/mux, and not a specific version.

I generate patches against the latest official release, and also against my previous patch version. For the patch against the clean (official) sources, I add a `c` suffix to the patch name.

I generate the patch using a script similar to:

#!/bin/sh

export DIFFS=S71024c
export BVER=space-0.8.4
export SVER=space-s71024

cd /home/mux
diff -w -u -r $BVER $SVER > $DIFFS

This produces a file S71034c which is the patch file to patch the clean space-0.8.4 tree to my space tree, as of the 24st day of the 10th month of 1997.

To apply this patch, you need to be in /home/mux/space in my tree. IE: the directory which contains the src, patches and docs subdirectories. To apply the patch, you run patch -p1 < S71024c, and then, if you wish, rename the space-0.8.4 directory, space-s71024 - or whatever you want to call the directory the patched version is in.

An alternative way to apply the changes to just the source files (if you have followed the PSE install instructions and copied the space source directory over into the mux src directory) is to change to the directory containing the space source files (eg /home/mux/mux/src/space), and run patch -p2 < S71024c, and to manually input the paths to the changes to the documentation files (or skip adding the changes). Please note that if you do skip changing the documentation files, you will miss important changes, and incompatabilities the patch may introduce.

You should also check for rejection files which mean that the patch didn't apply cleanly. These have the suffix .rej. You may have to hand-patch in any failures. The patch program creates backups of the files it changes with the suffix .orig. These aren't needed unless you want to reverse the patch or compare the new code to the old.

Finally, I test all the patches I produce my doing a trial run from the clean sources. It does work for me on a RedHat 4.2 box. If it doesn't work for you - ask your system administrator why not - or tell me I broke something!

Valid XHTML 1.0! Maintained by Mark Cooke
Last Updated: 28-Nov-2003