From 686deafa487802c6a99ef099d17d2e963dc2876c Mon Sep 17 00:00:00 2001 From: Oliver Smith Date: Wed, 14 Nov 2018 10:47:01 +0100 Subject: build manuals included from osmo-gsm-manuals.git Moved to doc/manuals/, with full commit history, in preceding merge commit. Now incorporate in local the build system. Build with: $ autoreconf -fi $ ./configure --enable-manuals $ make Shared files from osmo-gsm-manuals.git are found automatically if - the repository is checked out in ../osmo-gsm-manuals; or - if it osmo-gsm-manuals was installed with "make install"; or - OSMO_GSM_MANUALS_DIR is set. Related: OS#3385 Change-Id: I92c0f771d4ffc2b0401d26e25cb0b3817e6f95ea --- .gitignore | 11 +++++++++ configure.ac | 43 +++++++++++++++++++++++++++++++++++ doc/Makefile.am | 1 + doc/manuals/Makefile | 11 --------- doc/manuals/Makefile.am | 24 +++++++++++++++++++ doc/manuals/aoip-mgw-options.adoc | 8 +++---- doc/manuals/osmobsc-usermanual.adoc | 34 +++++++++++++-------------- doc/manuals/osmobsc-vty-reference.xml | 2 +- 8 files changed, 101 insertions(+), 33 deletions(-) delete mode 100644 doc/manuals/Makefile create mode 100644 doc/manuals/Makefile.am diff --git a/.gitignore b/.gitignore index 5a0901661..ea828b6f1 100644 --- a/.gitignore +++ b/.gitignore @@ -72,3 +72,14 @@ tests/testsuite tests/testsuite.log writtenconfig/ + +# manuals +doc/manuals/*.html +doc/manuals/*.svg +doc/manuals/*.pdf +doc/manuals/*__*.png +doc/manuals/*.check +doc/manuals/generated/ +doc/manuals/osmomsc-usermanual.xml +doc/manuals/common +doc/manuals/build diff --git a/configure.ac b/configure.ac index c6fa9a1c0..eafe4d6e7 100644 --- a/configure.ac +++ b/configure.ac @@ -157,6 +157,48 @@ AC_MSG_CHECKING([whether to enable VTY/CTRL tests]) AC_MSG_RESULT([$enable_ext_tests]) AM_CONDITIONAL(ENABLE_EXT_TESTS, test "x$enable_ext_tests" = "xyes") +# Generate manuals +AC_ARG_ENABLE(manuals, + [AS_HELP_STRING( + [--enable-manuals], + [Generate manual PDFs [default=no]], + )], + [osmo_ac_build_manuals=$enableval], [osmo_ac_build_manuals="no"]) +AM_CONDITIONAL([BUILD_MANUALS], [test x"$osmo_ac_build_manuals" = x"yes"]) +AC_ARG_VAR(OSMO_GSM_MANUALS_DIR, [path to common osmo-gsm-manuals files, overriding pkg-config and "../osmo-gsm-manuals" + fallback]) +if test x"$osmo_ac_build_manuals" = x"yes" +then + # Find OSMO_GSM_MANUALS_DIR (env, pkg-conf, fallback) + if test -n "$OSMO_GSM_MANUALS_DIR"; then + echo "checking for OSMO_GSM_MANUALS_DIR... $OSMO_GSM_MANUALS_DIR (from env)" + else + OSMO_GSM_MANUALS_DIR="$($PKG_CONFIG osmo-gsm-manuals --variable=osmogsmmanualsdir 2>/dev/null)" + if test -n "$OSMO_GSM_MANUALS_DIR"; then + echo "checking for OSMO_GSM_MANUALS_DIR... $OSMO_GSM_MANUALS_DIR (from pkg-conf)" + else + OSMO_GSM_MANUALS_DIR="../osmo-gsm-manuals" + echo "checking for OSMO_GSM_MANUALS_DIR... $OSMO_GSM_MANUALS_DIR (fallback)" + fi + fi + if ! test -d "$OSMO_GSM_MANUALS_DIR"; then + AC_MSG_ERROR("OSMO_GSM_MANUALS_DIR does not exist! Install osmo-gsm-manuals or set OSMO_GSM_MANUALS_DIR.") + fi + + # Find and run check-depends + CHECK_DEPENDS="$OSMO_GSM_MANUALS_DIR/check-depends.sh" + if ! test -x "$CHECK_DEPENDS"; then + CHECK_DEPENDS="osmo-gsm-manuals-check-depends" + fi + if ! $CHECK_DEPENDS; then + AC_MSG_ERROR("missing dependencies for --enable-manuals") + fi + + # Put in Makefile with absolute path + OSMO_GSM_MANUALS_DIR="$(realpath "$OSMO_GSM_MANUALS_DIR")" + AC_SUBST([OSMO_GSM_MANUALS_DIR]) +fi + # https://www.freedesktop.org/software/systemd/man/daemon.html AC_ARG_WITH([systemdsystemunitdir], [AS_HELP_STRING([--with-systemdsystemunitdir=DIR], [Directory for systemd service files])],, @@ -199,6 +241,7 @@ AC_OUTPUT( tests/handover/Makefile doc/Makefile doc/examples/Makefile + doc/manuals/Makefile contrib/Makefile contrib/systemd/Makefile Makefile) diff --git a/doc/Makefile.am b/doc/Makefile.am index 9b87bf339..d3a04c62f 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -1,5 +1,6 @@ SUBDIRS = \ examples \ + manuals \ $(NULL) msc: \ diff --git a/doc/manuals/Makefile b/doc/manuals/Makefile deleted file mode 100644 index b9f50d0d9..000000000 --- a/doc/manuals/Makefile +++ /dev/null @@ -1,11 +0,0 @@ -TOPDIR = .. - -ASCIIDOC = osmobsc-usermanual.adoc osmux-reference.adoc aoip-mgw-options.adoc -include $(TOPDIR)/build/Makefile.asciidoc.inc -osmobsc-usermanual.pdf: chapters/*.adoc chapters/*.dot -aoip-mgw-options.pdf: aoip-mgw-options.adoc mgw/*.msc - -VTY_REFERENCE = osmobsc-vty-reference.xml -include $(TOPDIR)/build/Makefile.vty-reference.inc - -include $(TOPDIR)/build/Makefile.common.inc diff --git a/doc/manuals/Makefile.am b/doc/manuals/Makefile.am new file mode 100644 index 000000000..482c1ab32 --- /dev/null +++ b/doc/manuals/Makefile.am @@ -0,0 +1,24 @@ +EXTRA_DIST = aoip-mgw-options.adoc \ + aoip-mgw-options-docinfo.xml \ + osmobsc-usermanual.adoc \ + osmobsc-usermanual-docinfo.xml \ + osmobsc-vty-reference.xml \ + osmux-reference.adoc \ + osmux-reference-docinfo.xml \ + chapters \ + message-sequences \ + mgw \ + om2000 \ + vty + +if BUILD_MANUALS + ASCIIDOC = osmobsc-usermanual.adoc osmux-reference.adoc aoip-mgw-options.adoc + include $(OSMO_GSM_MANUALS_DIR)/build/Makefile.asciidoc.inc + osmobsc-usermanual.pdf: $(srcdir)/chapters/*.adoc $(srcdir)/chapters/*.dot + aoip-mgw-options.pdf: $(srcdir)/aoip-mgw-options.adoc $(srcdir)/mgw/*.msc + + VTY_REFERENCE = osmobsc-vty-reference.xml + include $(OSMO_GSM_MANUALS_DIR)/build/Makefile.vty-reference.inc + + include $(OSMO_GSM_MANUALS_DIR)/build/Makefile.common.inc +endif diff --git a/doc/manuals/aoip-mgw-options.adoc b/doc/manuals/aoip-mgw-options.adoc index 8ce3b91a5..f69309334 100644 --- a/doc/manuals/aoip-mgw-options.adoc +++ b/doc/manuals/aoip-mgw-options.adoc @@ -29,7 +29,7 @@ support was so far for NITB only, but not for OsmoBSC. [mscgen] ---- -include::mgw/classic-bsc.msc[] +include::{srcdir}/mgw/classic-bsc.msc[] ---- === OsmoBSC 2010-2017: IPA-style A over SCCPlite @@ -43,7 +43,7 @@ classic TDM transport. [mscgen] ---- -include::mgw/osmo-bsc-old-sccplite.msc[] +include::{srcdir}/mgw/osmo-bsc-old-sccplite.msc[] ---- @@ -61,7 +61,7 @@ support shall be kept, if possible with reasonable effort. [mscgen] ---- -include::mgw/osmo-bsc-new-mgw.msc[] +include::{srcdir}/mgw/osmo-bsc-new-mgw.msc[] ---- @@ -73,5 +73,5 @@ based BTSs from OsmoBSC. [mscgen] ---- -include::mgw/osmo-bsc-new-mgw-e1.msc[] +include::{srcdir}/mgw/osmo-bsc-new-mgw-e1.msc[] ---- diff --git a/doc/manuals/osmobsc-usermanual.adoc b/doc/manuals/osmobsc-usermanual.adoc index 19846785c..eec77d7e7 100644 --- a/doc/manuals/osmobsc-usermanual.adoc +++ b/doc/manuals/osmobsc-usermanual.adoc @@ -5,39 +5,39 @@ OsmoBSC User Manual Harald Welte -include::../common/chapters/preface.adoc[] +include::./common/chapters/preface.adoc[] -include::chapters/overview.adoc[] +include::{srcdir}/chapters/overview.adoc[] -include::chapters/running.adoc[] +include::{srcdir}/chapters/running.adoc[] -include::chapters/control.adoc[] +include::{srcdir}/chapters/control.adoc[] -include::chapters/counters.adoc[] +include::{srcdir}/chapters/counters.adoc[] -include::chapters/handover.adoc[] +include::{srcdir}/chapters/handover.adoc[] -include::../common/chapters/vty.adoc[] +include::./common/chapters/vty.adoc[] -include::../common/chapters/logging.adoc[] +include::./common/chapters/logging.adoc[] -include::../common/chapters/bts.adoc[] +include::./common/chapters/bts.adoc[] include::{srcdir}/chapters/bts-examples.adoc[] -include::../common/chapters/bsc.adoc[] +include::./common/chapters/bsc.adoc[] -include::../common/chapters/abis.adoc[] +include::./common/chapters/abis.adoc[] -include::../common/chapters/control_if.adoc[] +include::./common/chapters/control_if.adoc[] -include::../common/chapters/cell-broadcast.adoc[] +include::./common/chapters/cell-broadcast.adoc[] -include::../common/chapters/port_numbers.adoc[] +include::./common/chapters/port_numbers.adoc[] -include::../common/chapters/bibliography.adoc[] +include::./common/chapters/bibliography.adoc[] -include::../common/chapters/glossary.adoc[] +include::./common/chapters/glossary.adoc[] -include::../common/chapters/gfdl.adoc[] +include::./common/chapters/gfdl.adoc[] diff --git a/doc/manuals/osmobsc-vty-reference.xml b/doc/manuals/osmobsc-vty-reference.xml index 6d993b458..f51e56eff 100644 --- a/doc/manuals/osmobsc-vty-reference.xml +++ b/doc/manuals/osmobsc-vty-reference.xml @@ -5,7 +5,7 @@ --> + ]> -- cgit v1.2.3