| 
									
										
										
										
											2006-12-15 17:03:59 +00:00
										 |  |  | #! /bin/sh | 
					
						
							| 
									
										
										
										
											2022-09-27 07:47:59 +00:00
										 |  |  | # | 
					
						
							|  |  |  | #   This program is free software: you can redistribute it and/or modify | 
					
						
							|  |  |  | #   it under the terms of the GNU General Public License as published by | 
					
						
							|  |  |  | #   the Free Software Foundation, either version 3 of the License, or | 
					
						
							|  |  |  | #   (at your option) any later version. | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | #   This program is distributed in the hope that it will be useful, | 
					
						
							|  |  |  | #   but WITHOUT ANY WARRANTY; without even the implied warranty of | 
					
						
							|  |  |  | #   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | 
					
						
							|  |  |  | #   GNU General Public License for more details. | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | #   You should have received a copy of the GNU General Public License | 
					
						
							|  |  |  | #   along with this program.  If not, see <http://www.gnu.org/licenses/>. | 
					
						
							|  |  |  | # | 
					
						
							| 
									
										
										
										
											2006-12-15 17:03:59 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-09-16 11:10:58 +00:00
										 |  |  | : ${TMPDIR:=/tmp} | 
					
						
							|  |  |  | export TMPDIR | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # basic /bin/sh syntax | 
					
						
							|  |  |  | SUFFIX=`${THIS_SH} -c 'echo $(( $RANDOM + $BASHPID ))'` | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-09-27 07:47:59 +00:00
										 |  |  | BASH_TSTOUT=${TMPDIR}/bashtst-$SUFFIX  # for now | 
					
						
							| 
									
										
										
										
											2016-09-16 11:10:58 +00:00
										 |  |  | export BASH_TSTOUT | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-09-27 07:47:59 +00:00
										 |  |  | trap 'rm -f $BASH_TSTOUT' 0 1 2 3 15 | 
					
						
							| 
									
										
										
										
											2016-09-16 11:10:58 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2006-12-15 17:03:59 +00:00
										 |  |  | PATH=.:$PATH	# just to get recho/zecho/printenv if not run via `make tests' | 
					
						
							|  |  |  | export PATH | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-09-27 07:47:59 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2006-12-15 17:03:59 +00:00
										 |  |  | # unset BASH_ENV only if it is set | 
					
						
							|  |  |  | [ "${BASH_ENV+set}" = "set" ] && unset BASH_ENV | 
					
						
							|  |  |  | # ditto for SHELLOPTS | 
					
						
							|  |  |  | #[ "${SHELLOPTS+set}" = "set" ] && unset SHELLOPTS | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | : ${THIS_SH:=../bash} | 
					
						
							|  |  |  | export THIS_SH | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-09-27 07:47:59 +00:00
										 |  |  | : ${BUILD_DIR:=..} | 
					
						
							|  |  |  | export BUILD_DIR | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2006-12-15 17:03:59 +00:00
										 |  |  | ${THIS_SH} ./version | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-09-27 07:47:59 +00:00
										 |  |  | rm -f ${BASH_TSTOUT} | 
					
						
							| 
									
										
										
										
											2006-12-15 17:03:59 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | echo Any output from any test, unless otherwise noted, indicates a possible anomaly | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | for x in run-* | 
					
						
							|  |  |  | do | 
					
						
							|  |  |  | 	case $x in | 
					
						
							| 
									
										
										
										
											2013-03-15 15:46:33 +00:00
										 |  |  | 	$0|run-all|run-minimal|run-gprof|run-jobs) ;; | 
					
						
							| 
									
										
										
										
											2006-12-15 17:03:59 +00:00
										 |  |  | 	*.orig|*~) ;; | 
					
						
							| 
									
										
										
										
											2022-09-27 07:47:59 +00:00
										 |  |  | 	*)	echo $x ; sh $x ; rm -f ${BASH_TSTOUT} ;; | 
					
						
							| 
									
										
										
										
											2006-12-15 17:03:59 +00:00
										 |  |  | 	esac | 
					
						
							|  |  |  | done | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-09-27 07:47:59 +00:00
										 |  |  | trap 'rm -f $tmp' EXIT HUP INT QUIT TERM | 
					
						
							| 
									
										
										
										
											2010-03-02 16:43:52 +00:00
										 |  |  | tmp=$(mktemp /tmp/hello.XXXXXXXX) || exit 1 | 
					
						
							|  |  |  | echo '#!/bin/sh' > $tmp | 
					
						
							|  |  |  | echo exit >> $tmp | 
					
						
							|  |  |  | chmod 755 $tmp | 
					
						
							|  |  |  | ${THIS_SH} -c $tmp | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | typeset -i count=500 | 
					
						
							|  |  |  | echo '#########################' | 
					
						
							|  |  |  | echo 'fork + /bin/sh -c runtime' | 
					
						
							|  |  |  | time while ((count-- > 0)) ; do | 
					
						
							|  |  |  | 	${THIS_SH} -c $tmp | 
					
						
							|  |  |  | done | 
					
						
							|  |  |  | echo '#########################' | 
					
						
							| 
									
										
										
										
											2013-03-15 15:46:33 +00:00
										 |  |  | set -x | 
					
						
							|  |  |  | read -t1 < /dev/tty | 
					
						
							|  |  |  | set +x | 
					
						
							|  |  |  | echo '#########################' | 
					
						
							| 
									
										
										
										
											2006-12-15 17:03:59 +00:00
										 |  |  | exit 0 |