packaging: changed asan macro check for "bad %if condition"
[platform/upstream/prelink.git] / testsuite / reloc9.sh
1 #!/bin/bash
2 . `dirname $0`/functions.sh
3 # Disable this test under SELinux
4 if test -x /usr/sbin/getenforce; then
5   case "`/usr/sbin/getenforce 2>/dev/null`" in
6     Permissive|Disabled) ;;
7     *) exit 77 ;;
8   esac
9 fi
10 rm -f reloc9 reloc9lib*.so reloc9.log
11 rm -f prelink.cache
12 NOCOPYRELOC=-Wl,-z,nocopyreloc
13 case "`uname -m`" in
14   x86_64|s390*|sparc*) if file reloc1lib1.so | grep -q 64-bit; then NOCOPYRELOC=; fi;;
15 esac
16 $CC -shared -O2 -Wl,-z,nocombreloc -fpic -o reloc9lib1.so $srcdir/reloc3lib1.c
17 $CC -shared -O2 -Wl,-z,nocombreloc -fpic -o reloc9lib2.so $srcdir/reloc1lib2.c reloc9lib1.so
18 BINS="reloc9"
19 LIBS="reloc9lib1.so reloc9lib2.so"
20 $CCLINK -o reloc9 -Wl,-z,nocombreloc $NOCOPYRELOC $srcdir/reloc7.c -Wl,--rpath-link,. reloc9lib2.so -lc reloc9lib1.so
21 savelibs
22 echo $PRELINK ${PRELINK_OPTS--vm} ./reloc9 > reloc9.log
23 $PRELINK ${PRELINK_OPTS--vm} ./reloc9 >> reloc9.log 2>&1 || exit 1
24 grep -q ^`echo $PRELINK | sed 's/ .*$/: /'` reloc9.log && exit 2
25 LD_LIBRARY_PATH=. ./reloc9 >> reloc9.log || exit 3
26 readelf -a ./reloc9 >> reloc9.log 2>&1 || exit 4
27 # So that it is not prelinked again
28 chmod -x ./reloc9
29 comparelibs >> reloc9.log 2>&1 || exit 5