diff options
author | Harald Welte <laforge@osmocom.org> | 2019-11-06 07:58:19 +0100 |
---|---|---|
committer | Harald Welte <laforge@osmocom.org> | 2019-11-24 18:42:29 +0100 |
commit | 645fa469678ef5ba9a6d8d3987964585f5c63ba3 (patch) | |
tree | b01ab049cac4214577ae4fad1737a15ae06c7e99 | |
parent | 2933fcf477616246ed502e2aa4cb1179aaa616ce (diff) |
add contrib/jenkins.sh
Change-Id: I79d9e12ef723841db186cd122da4dadb3f7d3969
-rwxr-xr-x | contrib/jenkins.sh | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/contrib/jenkins.sh b/contrib/jenkins.sh new file mode 100755 index 0000000..38bd1a9 --- /dev/null +++ b/contrib/jenkins.sh @@ -0,0 +1,67 @@ +#!/usr/bin/env bash +# jenkins build helper script for openbsc. This is how we build on jenkins.osmocom.org +# +# environment variables: +# * WITH_MANUALS: build manual PDFs if set to "1" +# * PUBLISH: upload manuals after building if set to "1" (ignored without WITH_MANUALS = "1") +# + +if ! [ -x "$(command -v osmo-build-dep.sh)" ]; then + echo "Error: We need to have scripts/osmo-deps.sh from http://git.osmocom.org/osmo-ci/ in PATH !" + exit 2 +fi + + +set -ex + +base="$PWD" +deps="$base/deps" +inst="$deps/install" +export deps inst + +osmo-clean-workspace.sh + +mkdir "$deps" || true + +osmo-build-dep.sh libosmocore "" '--disable-doxygen --enable-gnutls' + +verify_value_string_arrays_are_terminated.py $(find . -name "*.[hc]") + +export PKG_CONFIG_PATH="$inst/lib/pkgconfig:$PKG_CONFIG_PATH" +export LD_LIBRARY_PATH="$inst/lib" +export PATH="$inst/bin:$PATH" + +osmo-build-dep.sh libosmo-abis + +# 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 +echo +echo +echo " =============================== osmo-e1-recorder ===============================" +echo +set -x + +cd "$base" +autoreconf --install --force +./configure --enable-sanitize --enable-external-tests --enable-werror $CONFIG +$MAKE $PARALLEL_MAKE +LD_LIBRARY_PATH="$inst/lib" $MAKE check \ + || cat-testlogs.sh +LD_LIBRARY_PATH="$inst/lib" \ + DISTCHECK_CONFIGURE_FLAGS="--enable-vty-tests --enable-external-tests --enable-werror $CONFIG" \ + $MAKE distcheck \ + || cat-testlogs.sh + +if [ "$WITH_MANUALS" = "1" ] && [ "$PUBLISH" = "1" ]; then + make -C "$base/doc/manuals" publish +fi + +$MAKE maintainer-clean +osmo-clean-workspace.sh |