[Midnightbsd-cvs] src: MIDNIGHTBSD-upgrade: add install/upgrade instructions

laffer1 at midnightbsd.org laffer1 at midnightbsd.org
Mon Sep 1 21:26:26 EDT 2008


Log Message:
-----------
add install/upgrade instructions

Added Files:
-----------
    src/contrib/openbsm:
        MIDNIGHTBSD-upgrade (r1.1)

-------------- next part --------------
--- /dev/null
+++ contrib/openbsm/MIDNIGHTBSD-upgrade
@@ -0,0 +1,57 @@
+Upgrade Instructions for OpenBSM (based on Robert Watson's FreeBSD advice)
+--------------------------------
+
+OpenBSM integrates into the MidnightBSD source tree in several places:
+
+src/contrib/openbsm        The OpenBSM distribution itself
+src/sys/bsm                Modified versions of some bsm/ include files
+src/sys/security/audit     Kernel audit framework, some OpenBSM-based files
+src/usr.sbin/*audit*       Makefiles for various OpenBSM tools
+src/etc/Makefile           Installation of /etc OpenBSM files
+src/lib/libbsm/*           Build for OpenBSM library
+
+OpenBSM is normally built using an integrated autoconf/automake build
+system.  For the purposes of tight integration with MidnightBSD, we use an
+adapted BSD make (bmake) build system loosely based on the automake
+setup.  We also rely on a static config.h generated when OpenBSM is
+imported, rather than re-configuring every build.  This leads to a
+more reproduceable build environment, and avoids dependence on things
+not in the base tree (i.e., autoconf, automake, GNU make, etc).  An
+upgrade of OpenBSM generally involves the following steps:
+
+- Vendor import of OpenBSM into src/contrib.
+- Run configure, commit src/contrib/openbsm/config/config.h.
+- Replication of src/contrib/openbsm/bsm changes into src/sys/bsm.
+- Possible updates to src/sys/security/audit, especially relating to
+  audit_bsm_token.c.
+- Update any library, tool, or etc BSD Makefiles to add new files,
+  defines, or other generally useful or necessary things.
+
+Certain files are present only in the vendor branch, and not in FreeBSD
+development branches:
+
+  contrib/openbsm/bsm  audit.h audit_internal.h audit_kevents.h 
+                       audit_record.h 
+
+This prevents confusion regarding whether the src/sys/bsm or contrib
+versions of the include files should be used in the build.  Normally, the
+CVS vendor import goes along the following lines:
+
+  cd ~/p4/projects/trustedbsd/openbsm
+  cvs -n -d rwatson at repoman.FreeBSD.org:/home/ncvs -q import \
+	src/contrib/openbsm TrustedBSD OPENBSM_1_0_ALPHA_1
+
+Replacing the version string as required.  Remove the "-n" argument once
+the import is tested in order to perform the actual import.
+
+Propagation of changes to src/sys/{bsm,security/audit} is something that
+requires careful coordination and attention to detail.  These files are
+not on CVS vendor branches, but do have the same local vs. vendor merge
+issues.  Remember that contrib/openbsm (and the rest of the system) will
+be built with the version of the bsm/ include files in src/sys/bsm, not
+the version in contrib/openbsm/bsm, so buildworld tests before committing
+are necessary, and the commits to various parts of the system must be
+made in close succession.
+
+$MidnightBSD: src/contrib/openbsm/MIDNIGHTBSD-upgrade,v 1.1 2008/09/02 01:26:26 laffer1 Exp $
+$FreeBSD: src/contrib/openbsm/FREEBSD-upgrade,v 1.7 2006/09/02 09:56:28 rwatson Exp $


More information about the Midnightbsd-cvs mailing list