jenkins-build-common: adds support to the new variables for patchelf.

2 variables are added in order to increase the flexibility of the add_rpath function.
patchelf_rpath_extra_args: adds more arguments to the rpath patch. For example "--force-rpath"
patchelf_rpath_dir: path to the libraries. This path is appended to the default '$ORIGIN/../lib/'

This commit add the jenkins-build-srslte-bbu.sh script, that builds the given repository filling the information for the 2 newly added variables.

Change-Id: I9f510112c63e7598add8c00f8573e34cac1b6064
changes/43/24643/2
Alejandro Leal Conejos 2 years ago
parent 855e712bc0
commit e3f6a3b527
  1. 15
      contrib/jenkins-build-common.sh
  2. 20
      contrib/jenkins-build-srslte-bbu.sh

@ -204,11 +204,22 @@ add_rpath() {
#
# Add an rpath relative to the binary and library if the directory
# exists.
rpath_args='--set-rpath'
rpath_dir='$ORIGIN/../lib/'
if [ -n "$patchelf_rapth_extra_args" ]; then
rpath_args="$patchelf_rapth_extra_args $rpath_args"
fi
if [ -n "$patchelf_rpath_dir" ]; then
rpath_dir="$rpath_dir:$patchelf_rpath_dir"
fi
if [ -d bin/ ]; then
find bin -depth -type f -exec patchelf --set-rpath '$ORIGIN/../lib/' {} \;
find bin -depth -type f -exec patchelf $rpath_args "$rpath_dir" {} \;
fi
if [ -d sbin/ ]; then
find sbin -depth -type f -exec patchelf --set-rpath '$ORIGIN/../lib/' {} \;
find sbin -depth -type f -exec patchelf $rpath_args "$rpath_dir" {} \;
fi
if [ -d lib/ ]; then
find lib -depth -type f -name "lib*.so.*" -exec patchelf --set-rpath '$ORIGIN/' {} \;

@ -0,0 +1,20 @@
#!/bin/sh
set -e -x
if [ -z "$trial_binaries" ]; then
trial_binaries="srsue srsenb srsepc"
fi
export patchelf_rpath_dir="/mnt/nfs/bdlibs"
export patchelf_rapth_extra_args="--force-rpath"
base="$PWD"
name="srslte"
git_url="${git_url:-https://github.com/srsLTE}"
project_name="${project_name:-srsLTE}"
. "$(dirname "$0")/jenkins-build-common.sh"
#TODO: make sure libconfig, zeroMQ is installed
build_repo $project_name $configure_opts
create_bin_tgz "$trial_binaries"
Loading…
Cancel
Save