blob: 1b1d94e68a7c8601b053dad10eb6d26bd6c54905 [file] [log] [blame]
Neels Hofmeyrd46ea132017-04-08 15:56:31 +02001#!/bin/sh
Neels Hofmeyrdae3d3c2017-03-28 12:16:58 +02002set -x -e
3
4base="$PWD"
Neels Hofmeyrd46ea132017-04-08 15:56:31 +02005prefix="$base/inst-osmo-bts-trx"
6
7rm -f "$base/osmo-bts-trx*.tgz"
Neels Hofmeyrdae3d3c2017-03-28 12:16:58 +02008
9deps="
10libosmocore
11libosmo-abis
12osmo-trx
13osmo-bts
14"
15
16have_repo() {
17 repo="$1"
18 cd "$base"
Neels Hofmeyr07650982017-05-12 16:24:16 +020019 if [ ! -d "$repo" ]; then
20 git clone "git://git.osmocom.org/$repo" "$repo"
Neels Hofmeyrdae3d3c2017-03-28 12:16:58 +020021 fi
22 cd "$repo"
23 git clean -dxf
Neels Hofmeyr07650982017-05-12 16:24:16 +020024 git fetch origin
25 git reset --hard origin/master
26 git rev-parse HEAD
Neels Hofmeyrdae3d3c2017-03-28 12:16:58 +020027 cd "$base"
28}
29
30# for gsm_data_shared.*
31have_repo openbsc
32
33
34rm -rf "$prefix"
35mkdir -p "$prefix"
36
37export PKG_CONFIG_PATH="$prefix/lib/pkgconfig"
38export LD_LIBRARY_PATH="$prefix/lib"
39
40for dep in $deps; do
Neels Hofmeyr445ff9b2017-05-24 18:17:01 +020041 set +x; echo "
42
43====================== $dep
44
45"; set -x
46
Neels Hofmeyrdae3d3c2017-03-28 12:16:58 +020047 have_repo "$dep"
48 cd "$dep"
Neels Hofmeyrd46ea132017-04-08 15:56:31 +020049 rm -rf *
50 git checkout .
Neels Hofmeyrdae3d3c2017-03-28 12:16:58 +020051
52 echo "$(git rev-parse HEAD) $dep" >> "$prefix/osmo-bts-trx_osmo-trx_git_hashes.txt"
53
54 autoreconf -fi
55
56 config_opts=""
57
58 case "$repo" in
59 'osmo-bts') config_opts="--enable-trx --with-openbsc=$base/openbsc/openbsc/include" ;;
60 'osmo-trx') config_opts="--without-sse" ;;
61 esac
62
Neels Hofmeyr445ff9b2017-05-24 18:17:01 +020063 set +x; echo; echo; set -x
Neels Hofmeyrdae3d3c2017-03-28 12:16:58 +020064 ./configure --prefix="$prefix" $config_opts
Neels Hofmeyr445ff9b2017-05-24 18:17:01 +020065 set +x; echo; echo; set -x
Neels Hofmeyrdae3d3c2017-03-28 12:16:58 +020066 make -j8
Neels Hofmeyr445ff9b2017-05-24 18:17:01 +020067 set +x; echo; echo; set -x
Neels Hofmeyrdae3d3c2017-03-28 12:16:58 +020068 make install
69done
70
Neels Hofmeyr62a56002017-05-22 19:32:06 +020071# don't package documentation -- the libosmocore docs can be up to 16 Mb large,
72# a significant amount compared to the binaries
Neels Hofmeyr4e0627f2017-05-29 00:41:07 +020073rm -rf "$prefix/share/doc"
Neels Hofmeyr62a56002017-05-22 19:32:06 +020074
Neels Hofmeyrdae3d3c2017-03-28 12:16:58 +020075# build the archive that is going to be copied to the tester
Neels Hofmeyrc59e0792017-05-14 01:57:25 +020076rm "$base"/*.tgz "$base"/*.md5 || true
Neels Hofmeyrd46ea132017-04-08 15:56:31 +020077cd "$prefix"
Neels Hofmeyrc59e0792017-05-14 01:57:25 +020078this="osmo-bts-trx.build-${BUILD_NUMBER}"
79tar="${this}.tgz"
80tar czf "$base/$tar" *
81cd "$base"
82md5sum "$tar" > "${this}.md5"