From: Richard W.M. Jones Date: Thu, 16 Jan 2020 17:15:41 +0000 (+0000) Subject: run.in: Add intelligent prepend function. X-Git-Tag: v6.1.0-rc1~462 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=ae428ca723219fbe64c79cc7d0137c82691553bb;p=thirdparty%2Flibvirt.git run.in: Add intelligent prepend function. This has been used in libguestfs and libnbd for quite a while as it makes the ./run script easier to read and write. See also: http://stackoverflow.com/a/9631350 Signed-off-by: Richard W.M. Jones Reviewed-by: Erik Skultety Reviewed-by: Daniel P. Berrangé --- diff --git a/run.in b/run.in index 8574f81463..3118f9a9a4 100644 --- a/run.in +++ b/run.in @@ -42,22 +42,20 @@ # #---------------------------------------------------------------------- +# Function to intelligently prepend a path to an environment variable. +# See http://stackoverflow.com/a/9631350 +prepend() +{ + eval $1="$2\${$1:+:\$$1}" +} + # Find this script. b=@abs_builddir@ -library_path="$b/src/.libs" -if [ -z "$LD_LIBRARY_PATH" ]; then - LD_LIBRARY_PATH=$library_path -else - LD_LIBRARY_PATH="$library_path:$LD_LIBRARY_PATH" -fi +prepend LD_LIBRARY_PATH "$b/src/.libs" export LD_LIBRARY_PATH -if [ -z "$PKG_CONFIG_PATH" ]; then - PKG_CONFIG_PATH="$b/src" -else - PKG_CONFIG_PATH="$b/src:$PKG_CONFIG_PATH" -fi +prepend PKG_CONFIG_PATH "$b/src" export PKG_CONFIG_PATH # Ensure that any 3rd party apps using libvirt.so from the build tree get