Pau Espin Pedrol | 17253af | 2020-04-02 21:11:19 +0200 | [diff] [blame] | 1 | #!/bin/sh |
| 2 | set -e -x |
| 3 | |
| 4 | amarisoft_tgz="$1" |
| 5 | |
Pau Espin Pedrol | a560ea7 | 2020-04-03 17:45:42 +0200 | [diff] [blame] | 6 | BUILD_AMARISOFT_TRX_ZMQ="${BUILD_AMARISOFT_TRX_ZMQ:-1}" |
Pau Espin Pedrol | 4130eef | 2020-07-13 15:52:19 +0200 | [diff] [blame] | 7 | HAVE_AMARISOFT_LTEUE="${HAVE_AMARISOFT_LTEUE:-1}" |
Pau Espin Pedrol | a560ea7 | 2020-04-03 17:45:42 +0200 | [diff] [blame] | 8 | |
Pau Espin Pedrol | 17253af | 2020-04-02 21:11:19 +0200 | [diff] [blame] | 9 | if [ ! -f "$amarisoft_tgz" ]; then |
| 10 | echo "Amarisoft tgz doesn't exist: $amarisoft_tgz" |
| 11 | exit 1 |
| 12 | fi |
| 13 | |
| 14 | base="$PWD" |
Pau Espin Pedrol | a560ea7 | 2020-04-03 17:45:42 +0200 | [diff] [blame] | 15 | if [ "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 Pedrol | f1b43f9 | 2020-07-13 15:44:20 +0200 | [diff] [blame] | 19 | branch="master" |
Pau Espin Pedrol | a560ea7 | 2020-04-03 17:45:42 +0200 | [diff] [blame] | 20 | . "$(dirname "$0")/jenkins-build-common.sh" |
Pau Espin Pedrol | 17253af | 2020-04-02 21:11:19 +0200 | [diff] [blame] | 21 | |
Pau Espin Pedrol | a560ea7 | 2020-04-03 17:45:42 +0200 | [diff] [blame] | 22 | #TODO: make sure libconfig, zeroMQ is installed |
Pau Espin Pedrol | f1b43f9 | 2020-07-13 15:44:20 +0200 | [diff] [blame] | 23 | build_repo $project_name_srslte $branch -DENABLE_UHD=False -DENABLE_BLADERF=False -DENABLE_SOAPYSDR=False -DENABLE_ZEROMQ=True |
Pau Espin Pedrol | 17253af | 2020-04-02 21:11:19 +0200 | [diff] [blame] | 24 | |
Pau Espin Pedrol | a560ea7 | 2020-04-03 17:45:42 +0200 | [diff] [blame] | 25 | 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 |
| 34 | fi |
Pau Espin Pedrol | 17253af | 2020-04-02 21:11:19 +0200 | [diff] [blame] | 35 | |
| 36 | rm -rf inst-tmp && mkdir inst-tmp |
| 37 | rm -rf inst-tmp-uhd && mkdir inst-tmp-uhd |
| 38 | tar -zxf $amarisoft_tgz -C inst-tmp/ |
AlaiaL | 26ee595 | 2021-03-23 12:33:08 +0100 | [diff] [blame] | 39 | for file in inst-tmp/*/trx_uhd*.tar.gz; do tar -zxf "$file" -C inst-tmp/; done |
Pau Espin Pedrol | 17253af | 2020-04-02 21:11:19 +0200 | [diff] [blame] | 40 | |
| 41 | # Build trx_uhd.so: |
AlaiaL | 26ee595 | 2021-03-23 12:33:08 +0100 | [diff] [blame] | 42 | for path in ${base}/inst-tmp/trx_uhd-linux*/; do (cd "$path"; make; cd ${base}); done |
Pau Espin Pedrol | 17253af | 2020-04-02 21:11:19 +0200 | [diff] [blame] | 43 | |
| 44 | # Create amarisoftenb inst: |
| 45 | rm -rf inst-amarisoftenb && mkdir inst-amarisoftenb || exit 1 |
| 46 | tar --strip-components=1 -zxf inst-tmp/*/lteenb-linux*.tar.gz -C inst-amarisoftenb/ |
Pau Espin Pedrol | a560ea7 | 2020-04-03 17:45:42 +0200 | [diff] [blame] | 47 | if [ "x${BUILD_AMARISOFT_TRX_ZMQ}" = "x1" ]; then |
AlaiaL | 26ee595 | 2021-03-23 12:33:08 +0100 | [diff] [blame] | 48 | 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 Pedrol | 3f2a5e5 | 2020-04-06 16:32:11 +0200 | [diff] [blame] | 50 | patchelf --set-rpath '$ORIGIN/' inst-amarisoftenb/trx_zmq.so |
AlaiaL | 26ee595 | 2021-03-23 12:33:08 +0100 | [diff] [blame] | 51 | cd inst-amarisoftenb && ln -s libsrsran_rf.so libsrsran_rf.so.0 && cd .. |
Pau Espin Pedrol | a560ea7 | 2020-04-03 17:45:42 +0200 | [diff] [blame] | 52 | fi |
AlaiaL | 26ee595 | 2021-03-23 12:33:08 +0100 | [diff] [blame] | 53 | |
| 54 | # Untar trx_sdr and copy the libraries to enb. |
| 55 | tar -xzf inst-tmp/*/trx_sdr*.tar.gz -C inst-tmp/ |
| 56 | cp ${base}/inst-tmp/trx_sdr-linux-2021-03-15/trx_sdr.so inst-amarisoftenb/ |
| 57 | cp ${base}/inst-tmp/trx_sdr-linux-2021-03-15/libsdr.so inst-amarisoftenb/ |
| 58 | cp ${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. |
| 61 | cp ${base}/inst-tmp/trx_uhd-linux-2021-03-15/trx_uhd.so inst-amarisoftenb/ |
Pau Espin Pedrol | 17253af | 2020-04-02 21:11:19 +0200 | [diff] [blame] | 62 | this="amarisoftenb.build-${BUILD_NUMBER-$(date +%Y-%m-%d_%H_%M_%S)}" |
| 63 | tar="${this}.tgz" |
| 64 | tar -czf "$tar" -C inst-amarisoftenb/ . |
| 65 | md5sum "$tar" > "${this}.md5" |
| 66 | |
| 67 | # Create amarisoftue inst: |
Pau Espin Pedrol | 4130eef | 2020-07-13 15:52:19 +0200 | [diff] [blame] | 68 | if [ "x${HAVE_AMARISOFT_LTEUE}" = "x1" ]; then |
| 69 | rm -rf inst-amarisoftue && mkdir inst-amarisoftue || exit 1 |
AlaiaL | 26ee595 | 2021-03-23 12:33:08 +0100 | [diff] [blame] | 70 | tar --strip-components=1 -zxf inst-tmp/*/lteue-linux-2018-10-18.tar.gz -C inst-amarisoftue/ |
Pau Espin Pedrol | 4130eef | 2020-07-13 15:52:19 +0200 | [diff] [blame] | 71 | if [ "x${BUILD_AMARISOFT_TRX_ZMQ}" = "x1" ]; then |
AlaiaL | 26ee595 | 2021-03-23 12:33:08 +0100 | [diff] [blame] | 72 | cp ${base}/${project_name_srslte}/build/lib/src/phy/rf/libsrsran_rf.so inst-amarisoftue/ |
Pau Espin Pedrol | 4130eef | 2020-07-13 15:52:19 +0200 | [diff] [blame] | 73 | 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 |
AlaiaL | 26ee595 | 2021-03-23 12:33:08 +0100 | [diff] [blame] | 75 | cd inst-amarisoftue && ln -s libsrsran_rf.so libsrsran_rf.so.0 && cd .. |
Pau Espin Pedrol | 4130eef | 2020-07-13 15:52:19 +0200 | [diff] [blame] | 76 | fi |
AlaiaL | 26ee595 | 2021-03-23 12:33:08 +0100 | [diff] [blame] | 77 | cp ${base}/inst-tmp/trx_uhd-linux-2018-10-18/trx_uhd.so inst-amarisoftue/ |
Pau Espin Pedrol | 4130eef | 2020-07-13 15:52:19 +0200 | [diff] [blame] | 78 | 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 Pedrol | a560ea7 | 2020-04-03 17:45:42 +0200 | [diff] [blame] | 82 | fi |
Pau Espin Pedrol | 17253af | 2020-04-02 21:11:19 +0200 | [diff] [blame] | 83 | |
| 84 | # Create amarisoftepc inst: |
| 85 | rm -rf inst-amarisoftepc && mkdir inst-amarisoftepc || exit 1 |
| 86 | tar --strip-components=1 -zxf inst-tmp/*/ltemme-linux*.tar.gz -C inst-amarisoftepc/ |
AlaiaL | 26ee595 | 2021-03-23 12:33:08 +0100 | [diff] [blame] | 87 | |
| 88 | # place newer libssl-1.1 and libcrypto-1.1 for older OS distributions inside the EPC folder |
| 89 | cp inst-tmp/*/libs/libssl* inst-amarisoftepc/ |
| 90 | cp inst-tmp/*/libs/libcrypto* inst-amarisoftepc/ |
| 91 | |
Andre Puschmann | 585e35b | 2021-03-08 16:03:26 +0100 | [diff] [blame] | 92 | # Copy ltesim_server from UE package if available |
| 93 | if [ "x${HAVE_AMARISOFT_LTEUE}" = "x1" ]; then |
AlaiaL | 26ee595 | 2021-03-23 12:33:08 +0100 | [diff] [blame] | 94 | # 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 Puschmann | 585e35b | 2021-03-08 16:03:26 +0100 | [diff] [blame] | 97 | cp inst-amarisoftue/ltesim_server inst-amarisoftepc/ |
| 98 | fi |
Pau Espin Pedrol | 17253af | 2020-04-02 21:11:19 +0200 | [diff] [blame] | 99 | this="amarisoftepc.build-${BUILD_NUMBER-$(date +%Y-%m-%d_%H_%M_%S)}" |
| 100 | tar="${this}.tgz" |
| 101 | tar -czf "$tar" -C inst-amarisoftepc/ . |
| 102 | md5sum "$tar" > "${this}.md5" |