blob: 6a2420bedfc3a36e521ec3303021065522871c70 [file] [log] [blame]
Neels Hofmeyr07650982017-05-12 16:24:16 +02001#!/bin/sh
Neels Hofmeyrd46ea132017-04-08 15:56:31 +02002set -e -x
3
4base="$PWD"
5prefix="$base/inst-osmo-nitb"
6
7rm -f "$base/osmo-nitb*.tgz"
8
9deps="
10libosmocore
11libosmo-abis
12libosmo-netif
13openggsn
14libsmpp34
15libosmo-sccp
16openbsc
17"
18
19have_repo() {
20 repo="$1"
21 cd "$base"
Neels Hofmeyr07650982017-05-12 16:24:16 +020022 if [ ! -d "$repo" ]; then
23 git clone "git://git.osmocom.org/$repo" "$repo"
Neels Hofmeyrd46ea132017-04-08 15:56:31 +020024 fi
25 cd "$repo"
26 git clean -dxf
Neels Hofmeyr07650982017-05-12 16:24:16 +020027 git fetch origin
28 git reset --hard origin/master
29 git rev-parse HEAD
Neels Hofmeyrd46ea132017-04-08 15:56:31 +020030 cd "$base"
31}
32
33rm -rf "$prefix"
34mkdir -p "$prefix"
35
36export PKG_CONFIG_PATH="$prefix/lib/pkgconfig"
37export LD_LIBRARY_PATH="$prefix/lib"
38
39for dep in $deps; do
40 have_repo "$dep"
41 cd "$dep"
42 rm -rf *
43 git checkout .
44
45 echo "$(git rev-parse HEAD) $dep" >> "$prefix/osmo-nitb_git_hashes.txt"
46
47 config_opts=""
48
49 case "$dep" in
50 'openbsc')
51 config_opts="$config_opts --enable-smpp --enable-osmo-bsc --enable-nat"
52 cd openbsc/
53 ;;
54 esac
55
56 autoreconf -fi
57 ./configure --prefix="$prefix" $config_opts
58 make -j8 || make # libsmpp34 can't build in parallel
59 make install
60done
61
62# build the archive that is going to be copied to the tester
Neels Hofmeyrc59e0792017-05-14 01:57:25 +020063rm "$base"/*.tgz "$base"/*.md5 || true
Neels Hofmeyrd46ea132017-04-08 15:56:31 +020064cd "$prefix"
Neels Hofmeyrc59e0792017-05-14 01:57:25 +020065this="osmo-nitb.build-${BUILD_NUMBER}"
66tar="${this}.tgz"
67tar czf "$base/$tar" *
68cd "$base"
69md5sum "$tar" > "${this}.md5"