jenkins: Add the build script from jenkins here
This can be used to replicate a build issue more easily.
This commit is contained in:
parent
227015e52e
commit
c8da1ac9a6
|
@ -0,0 +1,74 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
set -ex
|
||||
|
||||
rm -rf deps/install
|
||||
mkdir deps || true
|
||||
cd deps
|
||||
|
||||
# Get the headers..
|
||||
git clone git://git.osmocom.org/openbsc || true
|
||||
cd openbsc
|
||||
git pull --rebase
|
||||
|
||||
|
||||
# Build the dependency
|
||||
cd ../
|
||||
|
||||
# Analysis code
|
||||
osmo-deps.sh osmo-static-analysis
|
||||
|
||||
osmo-deps.sh libosmocore
|
||||
cd libosmocore
|
||||
autoreconf --install --force
|
||||
./configure --prefix=$PWD/../install
|
||||
$MAKE $PARALLEL_MAKE install
|
||||
|
||||
cd ../
|
||||
osmo-deps.sh libosmo-abis
|
||||
cd libosmo-abis
|
||||
autoreconf --install --force
|
||||
PKG_CONFIG_PATH=$PWD/../install/lib/pkgconfig ./configure --prefix=$PWD/../install
|
||||
PKG_CONFIG_PATH=$PWD/../install/lib/pkgconfig $MAKE $PARALLEL_MAKE install
|
||||
|
||||
cd ../
|
||||
if ! test -d layer1-api;
|
||||
then
|
||||
git clone git://git.sysmocom.de/sysmo-bts/layer1-api.git layer1-api
|
||||
fi
|
||||
|
||||
cd layer1-api
|
||||
git fetch origin
|
||||
if [ $FIRMWARE_VERSION = "master" ];
|
||||
then
|
||||
git reset --hard origin/master
|
||||
else
|
||||
git reset --hard $FIRMWARE_VERSION
|
||||
fi
|
||||
mkdir -p $PWD/../install/include/sysmocom/femtobts/
|
||||
cp include/*.h ../install/include/sysmocom/femtobts/
|
||||
|
||||
|
||||
# Build osmo-bts
|
||||
cd ../../
|
||||
autoreconf --install --force
|
||||
PKG_CONFIG_PATH=$PWD/deps/install/lib/pkgconfig ./configure --enable-sysmocom-bts --with-openbsc=$PWD/deps/openbsc/openbsc/include
|
||||
PKG_CONFIG_PATH=$PWD/deps/install/lib/pkgconfig $MAKE $PARALLEL_MAKE
|
||||
PKG_CONFIG_PATH=$PWD/deps/install/lib/pkgconfig LD_LIBRARY_PATH=$PWD/deps/install/lib $MAKE check
|
||||
DISTCHECK_CONFIGURE_FLAGS="--enable-sysmocom-bts --with-openbsc=$PWD/deps/openbsc/openbsc/include" PKG_CONFIG_PATH=$PWD/deps/install/lib/pkgconfig LD_LIBRARY_PATH=$PWD/deps/install/lib $MAKE distcheck
|
||||
|
||||
|
||||
# This will not work for the femtobts
|
||||
if [ $FIRMWARE_VERSION != "femtobts_v2.7" ]; then
|
||||
PKG_CONFIG_PATH=$PWD/deps/install/lib/pkgconfig $MAKE -C contrib/sysmobts-calib
|
||||
fi
|
||||
|
||||
# Use spatch to find common issues
|
||||
spatch -include_headers -in_place -sp_file deps/osmo-static-analysis/coccinelle/memcpy.cocci .
|
||||
RES=`git status --porcelain | grep ' M' | wc -l`
|
||||
git checkout .
|
||||
|
||||
if [ $RES -gt 0 ]; then
|
||||
echo "Static analysis failed. Please fix the code."
|
||||
exit 23
|
||||
fi
|
Loading…
Reference in New Issue