1#!/usr/bin/env bash 2 3# Sets the LD_LIBRARY_PATH required for running ITs dependent on libjvm. 4# See CONTRIBUTING.md for details. 5 6JAVA_HOME="${JAVA_HOME:-$(java -XshowSettings:properties -version \ 7 2>&1 > /dev/null |\ 8 grep 'java.home' |\ 9 awk '{print $3}')}" 10 11if [[ "$(uname -s)" == "Darwin" ]]; then 12 LIB_NAME="libjli" 13else 14 LIB_NAME="libjvm" 15fi 16 17# As JDK 8 and 9+ use different relative paths for libjvm, find the library: 18LIBJVM_PATH="$(find "${JAVA_HOME}" -type f -name "${LIB_NAME}.*" -print0 -quit | xargs -0 -n1 dirname)" 19 20export LD_LIBRARY_PATH="${LIBJVM_PATH}" 21 22# on macOS, cargo use DYLD_FALLBACK_LIBRARY_PATH to locate dynamic libraries. 23# See https://doc.rust-lang.org/cargo/reference/environment-variables.html#dynamic-library-paths 24export DYLD_FALLBACK_LIBRARY_PATH="${LIBJVM_PATH}":$DYLD_FALLBACK_LIBRARY_PATH 25