blob: fec77fd739ba0fdf56c39c28d0b56aa477cdd377 [file] [log] [blame]
Pau Espin Pedrol17253af2020-04-02 21:11:19 +02001#!/bin/sh
2set -e -x
3
4amarisoft_tgz="$1"
5
Pau Espin Pedrola560ea72020-04-03 17:45:42 +02006BUILD_AMARISOFT_TRX_ZMQ="${BUILD_AMARISOFT_TRX_ZMQ:-1}"
Pau Espin Pedrol4130eef2020-07-13 15:52:19 +02007HAVE_AMARISOFT_LTEUE="${HAVE_AMARISOFT_LTEUE:-1}"
Pau Espin Pedrola560ea72020-04-03 17:45:42 +02008
Pau Espin Pedrol17253af2020-04-02 21:11:19 +02009if [ ! -f "$amarisoft_tgz" ]; then
10 echo "Amarisoft tgz doesn't exist: $amarisoft_tgz"
11 exit 1
12fi
13
14base="$PWD"
Pau Espin Pedrola560ea72020-04-03 17:45:42 +020015if [ "x${BUILD_AMARISOFT_TRX_ZMQ}" = "x1" ]; then
16 name="srslte"
17 git_url="${git_url:-https://github.com/srsLTE}"
18 project_name_srslte="${project_name:-srsLTE}"
Pau Espin Pedrolf1b43f92020-07-13 15:44:20 +020019 branch="master"
Pau Espin Pedrola560ea72020-04-03 17:45:42 +020020 . "$(dirname "$0")/jenkins-build-common.sh"
Pau Espin Pedrol17253af2020-04-02 21:11:19 +020021
Pau Espin Pedrola560ea72020-04-03 17:45:42 +020022 #TODO: make sure libconfig, zeroMQ is installed
Pau Espin Pedrolf1b43f92020-07-13 15:44:20 +020023 build_repo $project_name_srslte $branch -DENABLE_UHD=False -DENABLE_BLADERF=False -DENABLE_SOAPYSDR=False -DENABLE_ZEROMQ=True
Pau Espin Pedrol17253af2020-04-02 21:11:19 +020024
Pau Espin Pedrola560ea72020-04-03 17:45:42 +020025 git_url="git@github.com:softwareradiosystems"
26 project_name_zmq="amarisoft_dummy_trx"
27 branch="trx_zmq"
28 have_repo $project_name_zmq $branch
29 cd $project_name_zmq
30 rm -rf build && mkdir build && cd build || exit 1
31 cmake -DSRSLTE_BUILD_PATH=${base}/${project_name_srslte}/build ../
32 make -j8
33 cd $base
34fi
Pau Espin Pedrol17253af2020-04-02 21:11:19 +020035
36rm -rf inst-tmp && mkdir inst-tmp
37rm -rf inst-tmp-uhd && mkdir inst-tmp-uhd
38tar -zxf $amarisoft_tgz -C inst-tmp/
AlaiaL26ee5952021-03-23 12:33:08 +010039for file in inst-tmp/*/trx_uhd*.tar.gz; do tar -zxf "$file" -C inst-tmp/; done
Pau Espin Pedrol17253af2020-04-02 21:11:19 +020040
41# Build trx_uhd.so:
AlaiaL26ee5952021-03-23 12:33:08 +010042for path in ${base}/inst-tmp/trx_uhd-linux*/; do (cd "$path"; make; cd ${base}); done
Pau Espin Pedrol17253af2020-04-02 21:11:19 +020043
44# Create amarisoftenb inst:
45rm -rf inst-amarisoftenb && mkdir inst-amarisoftenb || exit 1
46tar --strip-components=1 -zxf inst-tmp/*/lteenb-linux*.tar.gz -C inst-amarisoftenb/
Pau Espin Pedrola560ea72020-04-03 17:45:42 +020047if [ "x${BUILD_AMARISOFT_TRX_ZMQ}" = "x1" ]; then
AlaiaL26ee5952021-03-23 12:33:08 +010048 cp ${base}/${project_name_srslte}/build/lib/src/phy/rf/libsrsran_rf.so inst-amarisoftenb/
49 cp ${base}/${project_name_zmq}/build/libtrx_zmq-linux-2021-03-15.so inst-amarisoftenb/trx_zmq.so
Pau Espin Pedrol3f2a5e52020-04-06 16:32:11 +020050 patchelf --set-rpath '$ORIGIN/' inst-amarisoftenb/trx_zmq.so
AlaiaL26ee5952021-03-23 12:33:08 +010051 cd inst-amarisoftenb && ln -s libsrsran_rf.so libsrsran_rf.so.0 && cd ..
Pau Espin Pedrola560ea72020-04-03 17:45:42 +020052fi
AlaiaL26ee5952021-03-23 12:33:08 +010053
54# Untar trx_sdr and copy the libraries to enb.
55tar -xzf inst-tmp/*/trx_sdr*.tar.gz -C inst-tmp/
56cp ${base}/inst-tmp/trx_sdr-linux-2021-03-15/trx_sdr.so inst-amarisoftenb/
57cp ${base}/inst-tmp/trx_sdr-linux-2021-03-15/libsdr.so inst-amarisoftenb/
58cp ${base}/inst-tmp/trx_sdr-linux-2021-03-15/libc_wrapper_sdr.so inst-amarisoftenb/
59
60# Copy the uhd library and create the tarball.
61cp ${base}/inst-tmp/trx_uhd-linux-2021-03-15/trx_uhd.so inst-amarisoftenb/
Pau Espin Pedrol17253af2020-04-02 21:11:19 +020062this="amarisoftenb.build-${BUILD_NUMBER-$(date +%Y-%m-%d_%H_%M_%S)}"
63tar="${this}.tgz"
64tar -czf "$tar" -C inst-amarisoftenb/ .
65md5sum "$tar" > "${this}.md5"
66
67# Create amarisoftue inst:
Pau Espin Pedrol4130eef2020-07-13 15:52:19 +020068if [ "x${HAVE_AMARISOFT_LTEUE}" = "x1" ]; then
69 rm -rf inst-amarisoftue && mkdir inst-amarisoftue || exit 1
AlaiaL26ee5952021-03-23 12:33:08 +010070 tar --strip-components=1 -zxf inst-tmp/*/lteue-linux-2018-10-18.tar.gz -C inst-amarisoftue/
Pau Espin Pedrol4130eef2020-07-13 15:52:19 +020071 if [ "x${BUILD_AMARISOFT_TRX_ZMQ}" = "x1" ]; then
AlaiaL26ee5952021-03-23 12:33:08 +010072 cp ${base}/${project_name_srslte}/build/lib/src/phy/rf/libsrsran_rf.so inst-amarisoftue/
Pau Espin Pedrol4130eef2020-07-13 15:52:19 +020073 cp ${base}/${project_name_zmq}/build/libtrx_zmq-linux-2018-10-18.so inst-amarisoftue/trx_zmq.so
74 patchelf --set-rpath '$ORIGIN/' inst-amarisoftue/trx_zmq.so
AlaiaL26ee5952021-03-23 12:33:08 +010075 cd inst-amarisoftue && ln -s libsrsran_rf.so libsrsran_rf.so.0 && cd ..
Pau Espin Pedrol4130eef2020-07-13 15:52:19 +020076 fi
AlaiaL26ee5952021-03-23 12:33:08 +010077 cp ${base}/inst-tmp/trx_uhd-linux-2018-10-18/trx_uhd.so inst-amarisoftue/
Pau Espin Pedrol4130eef2020-07-13 15:52:19 +020078 this="amarisoftue.build-${BUILD_NUMBER-$(date +%Y-%m-%d_%H_%M_%S)}"
79 tar="${this}.tgz"
80 tar -czf "$tar" -C inst-amarisoftue/ .
81 md5sum "$tar" > "${this}.md5"
Pau Espin Pedrola560ea72020-04-03 17:45:42 +020082fi
Pau Espin Pedrol17253af2020-04-02 21:11:19 +020083
84# Create amarisoftepc inst:
85rm -rf inst-amarisoftepc && mkdir inst-amarisoftepc || exit 1
86tar --strip-components=1 -zxf inst-tmp/*/ltemme-linux*.tar.gz -C inst-amarisoftepc/
AlaiaL26ee5952021-03-23 12:33:08 +010087
88# place newer libssl-1.1 and libcrypto-1.1 for older OS distributions inside the EPC folder
89cp inst-tmp/*/libs/libssl* inst-amarisoftepc/
90cp inst-tmp/*/libs/libcrypto* inst-amarisoftepc/
91
Andre Puschmann585e35b2021-03-08 16:03:26 +010092# Copy ltesim_server from UE package if available
93if [ "x${HAVE_AMARISOFT_LTEUE}" = "x1" ]; then
AlaiaL26ee5952021-03-23 12:33:08 +010094 # Untar newer lteue version for fresh ltesim_server (2018 uses libssl-1.0.0)
95 rm -rf inst-amarisoftue && mkdir inst-amarisoftue || exit 1
96 tar --strip-components=1 -zxf inst-tmp/*/lteue-linux-2021-03-15.tar.gz -C inst-amarisoftue/
Andre Puschmann585e35b2021-03-08 16:03:26 +010097 cp inst-amarisoftue/ltesim_server inst-amarisoftepc/
98fi
Pau Espin Pedrol17253af2020-04-02 21:11:19 +020099this="amarisoftepc.build-${BUILD_NUMBER-$(date +%Y-%m-%d_%H_%M_%S)}"
100tar="${this}.tgz"
101tar -czf "$tar" -C inst-amarisoftepc/ .
102md5sum "$tar" > "${this}.md5"