contrib/jenkins.sh: build and publish manuals

Add new environment variables WITH_MANUALS and PUBLISH to control if
the manuals should be built and uploaded. Describe all environment vars
on top of the file.

When WITH_MANUALS is set, install osmo-gsm-manuals like any other
dependency and add --enable-manuals to the configure flags (for "make"
and "make distcheck"). Add the bin subdir of the installed files to
PATH, so osmo-gsm-manuals-check-depends can be used by ./configure.

Related: OS#3385
Change-Id: I54fdd18e405b2c84762ea06d91359867ceec8184
This commit is contained in:
Oliver Smith 2018-11-30 16:34:29 +01:00
parent ed361f9912
commit 522cbe91d3
1 changed files with 21 additions and 1 deletions

View File

@ -1,4 +1,12 @@
#!/bin/sh
# jenkins build helper script for osmo-trx. This is how we build on jenkins.osmocom.org
#
# environment variables:
# * INSTR: configure the CPU instruction set ("--with-sse", "--with-neon" or "--with-neon-vfpv4")
# * WITH_MANUALS: build manual PDFs if set to "1"
# * PUBLISH: upload manuals after building if set to "1" (ignored without WITH_MANUALS = "1")
# * INSIDE_CHROOT: (used internally) set to "1" when the script runs with QEMU in an ARM chroot
#
set -ex
substr() { [ -z "${2##*$1*}" ]; }
@ -68,6 +76,14 @@ osmo-build-dep.sh libusrp
export PKG_CONFIG_PATH="$inst/lib/pkgconfig:$PKG_CONFIG_PATH"
export LD_LIBRARY_PATH="$inst/lib"
export PATH="$inst/bin:$PATH"
# Additional configure options and depends
CONFIG=""
if [ "$WITH_MANUALS" = "1" ]; then
osmo-build-dep.sh osmo-gsm-manuals
CONFIG="--enable-manuals"
fi
set +x
echo
@ -79,9 +95,13 @@ set -x
cd "$base"
autoreconf --install --force
./configure --enable-sanitize --enable-werror --with-uhd --with-usrp1 --with-lms $INSTR
./configure --enable-sanitize --enable-werror --with-uhd --with-usrp1 --with-lms $INSTR $CONFIG
$MAKE $PARALLEL_MAKE
$MAKE check \
|| cat-testlogs.sh
if [ "$WITH_MANUALS" = "1" ] && [ "$PUBLISH" = "1" ]; then
make -C "$base/doc/manuals" publish
fi
osmo-clean-workspace.sh