#! /bin/sh -e ARCH="$1" SCRATCH=scratch/no-rpath-$ARCH if [ -z "$ARCH" ]; then ARCH=$(basename $0 .sh | sed -e 's/.*-//') fi if [ -z "$ARCH" ] || [ $ARCH = prebuild ] ; then echo "Architecture required" exit 1 fi no_rpath_bin="${srcdir}/no-rpath-prebuild/no-rpath-$ARCH" if [ ! -f $no_rpath_bin ]; then echo "no 'no-rpath' binary for '$ARCH' in '${srcdir}/no-rpath-prebuild'" exit 1 fi rm -rf ${SCRATCH} mkdir -p ${SCRATCH} cp $no_rpath_bin ${SCRATCH}/no-rpath oldRPath=$(../src/patchelf --print-rpath ${SCRATCH}/no-rpath) if test -n "$oldRPath"; then exit 1; fi ../src/patchelf \ --set-interpreter "$(../src/patchelf --print-interpreter ../src/patchelf)" \ --set-rpath /foo:/bar:/xxxxxxxxxxxxxxx ${SCRATCH}/no-rpath newRPath=$(../src/patchelf --print-rpath ${SCRATCH}/no-rpath) if ! echo "$newRPath" | grep -q '/foo:/bar'; then echo "incomplete RPATH" exit 1 fi if [ "$(../src/patchelf --print-interpreter $no_rpath_bin)" \ = "$(../src/patchelf --print-interpreter ../src/patchelf)" ]; then cd ${SCRATCH} && ./no-rpath fi