1 #!/usr/bin/ksh 2 # 3 # 4 # This file and its contents are supplied under the terms of the 5 # Common Development and Distribution License ("CDDL"), version 1.0. 6 # You may only use this file in accordance with the terms of version 7 # 1.0 of the CDDL. 8 # 9 # A full copy of the text of the CDDL should have accompanied this 10 # source. A copy of the CDDL is also available via the Internet at 11 # http://www.illumos.org/license/CDDL. 12 # 13 14 # 15 # Copyright 2014 Garrett D'Amore <garrett@damore.org> 16 # 17 18 export STF_SUITE=/opt/libc-tests 19 20 # First we set $dir to dirname $0, using efficient ksh builtins. 21 case $0 in 22 */*) 23 dir=${0%/*} 24 prog=${0##*/} 25 ;; 26 *) 27 dir=. 28 prog=${0} 29 ;; 30 esac 31 32 cfg=symbols/${prog%.ksh}.cfg 33 34 if [[ ! -f ${cfg} && $cfg == symbols/setup.cfg ]] 35 then 36 # compiler check only 37 cfg=-C 38 fi 39 40 prog=symbols_test 41 42 for a in $* 43 do 44 if [[ $a == "-d" ]] 45 then 46 debug=yes 47 fi 48 done 49 50 # We look for architecture specific versions of the program, 51 # searching in several candidate directories. We run each one as 52 # we find it. 53 for f in $(/usr/bin/isainfo) 54 do 55 found= 56 [[ -n $debug ]] && print "Checking for arch $f:" 57 for p in \ 58 ${dir}/${prog}.${f} \ 59 ${dir}/${f}/${prog}.${f} \ 60 ${dir}/${f}/${prog} 61 do 62 [[ -n $found ]] && continue 63 [[ -n $debug ]] && print -n " $p" 64 if [[ -f $p ]]; then 65 [[ -n $debug ]] && print " FOUND" 66 [[ -n $debug ]] && print "Executing $p $* ${cfg}" 67 found=yes 68 $p $* ${cfg} || exit 1 69 else 70 [[ -n $debug ]] && print 71 fi 72 done 73 [[ -z $found ]] && [[ -n $debug ]] && print "NOT PRESENT" 74 done 75 exit 0