Update BUILD to reflect the dev package option
[ric-plt/lib/rmr.git] / BUILD
diff --git a/BUILD b/BUILD
index 3bc677e..811490d 100644 (file)
--- a/BUILD
+++ b/BUILD
@@ -40,21 +40,54 @@ To build RMr, the usual CMake steps are followed:
        cmake .. [options]
        make package
 
+
 This will create a .deb (provided the system supports this) in
 the build directory.  It's that simple.
 
-Continuous integration build
+The following flags may be given on the 'cmake' command line
+(options) which are outside of "normal" CMake flags and affect
+the configuration:
+
+  -DBUILD_DOC=1         Man pages generated
+  -DDEV_PKG=1                  Development package configuration
+  -DMAN_PREFIX=<path>  Supply a path where man pages are installed (default: /usr/share/man)
+  -DPACK_EXTERNALS=1   Include external libraries used to build in the run-time package
+  -DPRESERVE_PTYPE=1   Do not change the processor type when naming deb packages
+  -DSKIP_EXTERNALS=1   Do not use Nano/NNG submodules when building; uee installed packages
+
+
+Packages
+The build can be configured to generate either a run-time or
+development package. The run-time generation is the default and
+the -DDEV_PKG=1 option must be given to generate the development
+package.  The run-time package contains only the shared library
+files (*.so), and the development package contains the headers,
+man pages (if the man option is set) and archive (.a) files.
+Resulting package names are illustrated in the CI section below.
+
+
+Continuous Integration Build
 Use the Dockerfile in the ci/ subdirectory. This installs all
-the required tools and creates an image in the local registry.
+the required tools, then builds RMr and executes the unit and
+programm tests. If tests pass, then  an image is created in the
+local registry with both run-time and development packages.
 
 To support the distribution of package(s) created during the
-build by the CI process, the fully qualified path of each generated
-package will be placed into a well known YAML file:
-/tmp/build_output.yml.   This file is created during CMake
-configuration and lists the package name(s) for packages which
-can be generated given the current environment. Currently
-Debian (.deb), and RPM packages are supported (the Ubuntu
-alien package must be installed in order to generate RPMs).
+build by the CI process,  a YAML file is left in the /tmp
+directory (build_packages.yml) which contains a list of the
+packages available from the image.  Currently, both .deb and
+.rpm packages are generated.
+
+The following is a sample YAML file generated during this process:
+
+   ---
+   files:
+     - /tmp/rmr-dev_1.0.34_x86_64.deb
+     - /tmp/rmr-dev-1.0.34-x86_64.rpm
+     - /tmp/rmr_1.0.34_x86_64.deb
+     - /tmp/rmr-1.0.34-x86_64.rpm
+   ...
+
 
 
 Alternatives
@@ -100,7 +133,7 @@ a different spot (e.g. in $HOME/usr):
 
 Libraries
 RMr supports both NNG and Nanomsg as underlying transport. They
-are separate beasts, and while an NNG based programme can
+are separate beasts, and while an NNG based program can
 communicate with a Nanomsg based programme, their APIs are NOT
 compatible.  For this reason, and others, RMr generates two
 libraries and requires that the underlying transport be selected