osmo-config-merge: Add manual page

Change-Id: Ifaa5afe28779a805764caf76a89efb0a3169942e
changes/33/11133/5
Daniel Willmann 4 years ago
parent 83c7134c7a
commit 6dd00d876e
  1. 1
      .gitignore
  2. 2
      Makefile.am
  3. 14
      configure.ac
  4. 15
      man/Makefile.am
  5. 64
      man/osmo-config-merge.adoc

1
.gitignore vendored

@ -81,6 +81,7 @@ doc/gsm
doc/gb
doc/html.tar
doc/*.tag
man/*.8
tags
src/crc*gen.c

@ -1,7 +1,7 @@
ACLOCAL_AMFLAGS = -I m4
AM_CPPFLAGS = $(all_includes) -I$(top_srcdir)/include
SUBDIRS = include src src/vty src/codec src/gsm src/coding src/gb src/ctrl src/sim src/pseudotalloc utils tests
SUBDIRS = include src src/vty src/codec src/gsm src/coding src/gb src/ctrl src/sim src/pseudotalloc utils tests man
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = libosmocore.pc libosmocodec.pc libosmovty.pc libosmogsm.pc \

@ -77,6 +77,19 @@ AC_ARG_ENABLE(doxygen,
AC_PATH_PROG(DOXYGEN,doxygen,false)
AM_CONDITIONAL(HAVE_DOXYGEN, test $DOXYGEN != false && test "x$doxygen" = "xyes")
AC_ARG_ENABLE([man-doc],
[AS_HELP_STRING([--disable-man-doc], [Disable man page documentation])],
[ BUILD_MAN=$enableval ], [ BUILD_MAN="yes" ])
AS_IF([test "x$BUILD_MAN" = "xyes"], [
AC_CHECK_PROG(A2X, [a2x], [yes])
AS_IF([test "$A2X" != "yes"],
[AC_MSG_ERROR([a2x not found, please install asciidoc or use the
option --disable-man-doc])])
])
AM_CONDITIONAL(BUILD_MAN, test "x$BUILD_MAN" = "xyes")
AC_SUBST(BUILD_MAN)
# check for syscal fallback on glibc < 2.25 - can be removed once glibc version requirement is bumped
AC_CHECK_DECLS([SYS_getrandom], [], [], [[#include <sys/syscall.h>]])
@ -370,6 +383,7 @@ AC_OUTPUT(
libosmoctrl.pc
libosmosim.pc
include/Makefile
man/Makefile
src/Makefile
src/vty/Makefile
src/codec/Makefile

@ -0,0 +1,15 @@
if BUILD_MAN
man_MANS = osmo-config-merge.8
endif
ASCIIDOCS = osmo-config-merge.adoc
A2X_OPTS_MANPAGE = --doctype manpage --format manpage -D ${builddir}
%.8 : %.adoc
a2x ${A2X_OPTS_MANPAGE} $<
EXTRA_DIST = ${ASCIIDOCS}
CLEANFILES = \
osmo-config-merge.8

@ -0,0 +1,64 @@
osmo-config-merge(8)
=====================
NAME
----
osmo-config-merge - Merge osmocom config snippets into an existing config
SYNOPSIS
--------
[verse]
*osmo-config-merge* <config-file> <config-patch> [--debug]
DESCRIPTION
-----------
This utility allows you to merge an incremental config "patch"
into an osmocom-style config file.
The patch file follows the same syntax as the original config file.
It works by appending the leaf nodes of the patch file to the respective
nodes of the input config file.
This process allows configuration file changes/updates to be performed
in a more stable/reliable way than by means of (unified) diff files,
as they break every time the context lines break.
osmo-config-merge doesn't suffer from this problem, as it understands
the tree-like nature of VTY config files.
The resulting config is printed to stdout.
NOTE: This only works with configuration files that have proper
indenting, i.e. every level in the hierarchy must be indented excatly
one character, not multiple.
OPTIONS
-------
*--debug*::
Show debugging output when parsing the config tree. Needs to be the last argument.
EXAMPLE USAGE
-------------
[verse]
$ osmo-config-merge osmo-msc.cfg.base osmo-msc_change_network.cfg > osmo-msc.cfg
EXIT STATUS
-----------
Exit status is 0 if the command was successful, and 1 in case of a
wrong/missing argument. If the tool detects an error in the patch file the
exit status is 2.
SEE ALSO
--------
The official Osmocom documentation including the VTY config refernce can be
found at: http://ftp.osmocom.org/docs/latest/
The Osmocom wiki is located at: http://projects.osmocom.org/
AUTHORS
-------
osmo-config-merge was written by Harald Welte.
The man page was written by Daniel Willmann.
Loading…
Cancel
Save