#! /bin/sh -e SCRATCH=scratch/$(basename $0 .sh) rpath=$(../src/patchelf --print-rpath ./libbar.so) echo "RPATH before: $rpath" if ! echo "$rpath" | grep -q /no-such-path; then echo "incomplete RPATH" exit 1 fi rm -rf ${SCRATCH} mkdir -p ${SCRATCH} cp libbar.so ${SCRATCH}/ ../src/patchelf --shrink-rpath ${SCRATCH}/libbar.so rpath=$(../src/patchelf --print-rpath ${SCRATCH}/libbar.so) echo "RPATH after: $rpath" if echo "$rpath" | grep -q /no-such-path; then echo "RPATH not shrunk" exit 1 fi cp libfoo.so ${SCRATCH}/ exitCode=0 cd ${SCRATCH} && LD_LIBRARY_PATH=. ../../main || exitCode=$? if test "$exitCode" != 46; then echo "bad exit code!" exit 1 fi