[OpenBSD]

Patch Branches


What is a patch branch?

Starting with 2.7, the OpenBSD project is providing a source tree that contains the patches and fixes from the errata and making it available via CVS in addition to the current source. Users can choose to follow either branch: current for those who want/need all of the latest features, and the patch branch for those who want to stick with releases and only require the fixes and patches between releases.

Getting a patch branch

To obtain a patch branch for a particular release of OpenBSD, you can either start with a source tree from the CD shipped with the release of OpenBSD you want to use (see ordering), or you can grab the whole tree from an AnonCVS server. The instructions for getting a patch branch and staying up to date are described in the Getting Started section of the AnonCVS documentation.

Please note that the patch branches are not helpful for upgrading from one release of OpenBSD to another, eg. to go from 2.5 to 2.6. They only provide a means for staying up to date with the patches for a given release. If you are trying to go from one release to another via source, please visit the upgrade-minifaq.

Building from an OpenBSD patch branch

Once you have obtained a source tree via anoncvs, you must rebuild the system. The stages for doing so are:

Rebuilding the kernel

To rebuild the default kernel from stable:

# cd /usr/src/sys/arch/i386/conf
# /usr/sbin/config GENERIC
# cd /usr/src/sys/arch/i386/compile/GENERIC
# make clean && make depend && make

Replace i386 with your architecture, eg. sparc, alpha, etc.

Rebooting with the new kernel

To reboot with the newly compiled kernel:

# cd /usr/src/sys/arch/i386/compile/GENERIC
# cp /bsd /bsd.old          (Save an old copy of your kernel)
# cp bsd /bsd               (Copy the new kernel into place)
# reboot

As above, substitute your architecture for i386. If your system has trouble booting the new kernel, you can easily go back and reboot from the old kernel, now called bsd.old.

Rebuilding the binaries

To rebuild the system binaries:

# cd /usr/src
# rm -r /usr/obj/*
# make obj && make build

This will take awhile...


OpenBSD www@openbsd.org
$OpenBSD: stable.html,v 1.2 2000/05/29 07:58:56 deraadt Exp $