14887Schin# SHOPT_* option probe 24887Schin 34887Schintst cross{ 44887Schin : check for shell magic #! 54887Schin cat > /tmp/file$$ <<! 64887Schin #! /bin/echo 74887Schin exit 1 84887Schin ! 94887Schin chmod 755 /tmp/file$$ 104887Schin if /tmp/file$$ > /dev/null 114887Schin then echo "#define SHELLMAGIC 1" 124887Schin fi 134887Schin rm -f /tmp/file$$ 144887Schin 154887Schin option() # name value 164887Schin { 174887Schin case $2 in 184887Schin 0) echo "#ifndef SHOPT_$1" 194887Schin echo "# define SHOPT_$1 1" 204887Schin echo "#endif" 214887Schin ;; 224887Schin *) echo "#undef SHOPT_$1" 234887Schin ;; 244887Schin esac 254887Schin } 264887Schin 27*8462SApril.Chin@Sun.COM ls /dev/fd/9 9<&0 >/dev/null 2>&1 284887Schin option DEVFD $? 29*8462SApril.Chin@Sun.COM exec 9<&- 304887Schin case `echo a | tr a '\012' | wc -l` in 314887Schin *1*) option MULTIBYTE 0 ;; 324887Schin esac 334887Schin test -x /bin/pfexec -o -x /usr/bin/pfexec 344887Schin option PFSH $? 354887Schin /bin/test ! -l . 2> /dev/null 364887Schin option TEST_L $? 374887Schin test -f /etc/ksh.kshrc -o -f /etc/bash.bashrc && 384887Schin option SYSRC 0 394887Schin test -f /bin/universe && univ=`/bin/universe` > /dev/null 2>&1 -a ucb = "$univ" 404887Schin option UCB $? 414887Schin}end 424887Schin 434887Schincat{ 444887Schin #if !_PACKAGE_ast && ( (MB_LEN_MAX-1)<=0 || !defined(_lib_mbtowc) ) 454887Schin # undef SHOPT_MULTIBYTE 464887Schin #endif 474887Schin}end 48