Modernize run-tests

OBS-URL: https://build.opensuse.org/package/show/Base:System/bash?expand=0&rev=354
This commit is contained in:
Dr. Werner Fink 2022-09-27 07:47:59 +00:00 committed by Git OBS Bridge
parent 9ce5cec29a
commit 0bcfbac780
2 changed files with 28 additions and 5 deletions

View File

@ -1,3 +1,8 @@
-------------------------------------------------------------------
Tue Sep 27 07:44:16 UTC 2022 - Dr. Werner Fink <werner@suse.de>
- Modernize run-tests
------------------------------------------------------------------- -------------------------------------------------------------------
Sat Sep 24 13:57:27 UTC 2022 - Christopher Yeleighton <giecrilj@stegny.2a.pl> Sat Sep 24 13:57:27 UTC 2022 - Christopher Yeleighton <giecrilj@stegny.2a.pl>

View File

@ -1,4 +1,18 @@
#! /bin/sh #! /bin/sh
#
# 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/>.
#
: ${TMPDIR:=/tmp} : ${TMPDIR:=/tmp}
export TMPDIR export TMPDIR
@ -6,14 +20,15 @@ export TMPDIR
# basic /bin/sh syntax # basic /bin/sh syntax
SUFFIX=`${THIS_SH} -c 'echo $(( $RANDOM + $BASHPID ))'` SUFFIX=`${THIS_SH} -c 'echo $(( $RANDOM + $BASHPID ))'`
BASH_TSTOUT=${TMPDIR}/bashtst-$SUFFIX # for now BASH_TSTOUT=${TMPDIR}/bashtst-$SUFFIX # for now
export BASH_TSTOUT export BASH_TSTOUT
trap 'rm -f $BASH_TSTOUT' 0 trap 'rm -f $BASH_TSTOUT' 0 1 2 3 15
PATH=.:$PATH # just to get recho/zecho/printenv if not run via `make tests' PATH=.:$PATH # just to get recho/zecho/printenv if not run via `make tests'
export PATH export PATH
# unset BASH_ENV only if it is set # unset BASH_ENV only if it is set
[ "${BASH_ENV+set}" = "set" ] && unset BASH_ENV [ "${BASH_ENV+set}" = "set" ] && unset BASH_ENV
# ditto for SHELLOPTS # ditto for SHELLOPTS
@ -22,9 +37,12 @@ export PATH
: ${THIS_SH:=../bash} : ${THIS_SH:=../bash}
export THIS_SH export THIS_SH
: ${BUILD_DIR:=..}
export BUILD_DIR
${THIS_SH} ./version ${THIS_SH} ./version
rm -f "$BASH_TSTOUT" rm -f ${BASH_TSTOUT}
echo Any output from any test, unless otherwise noted, indicates a possible anomaly echo Any output from any test, unless otherwise noted, indicates a possible anomaly
@ -33,11 +51,11 @@ do
case $x in case $x in
$0|run-all|run-minimal|run-gprof|run-jobs) ;; $0|run-all|run-minimal|run-gprof|run-jobs) ;;
*.orig|*~) ;; *.orig|*~) ;;
*) echo $x ; sh $x ;; *) echo $x ; sh $x ; rm -f ${BASH_TSTOUT} ;;
esac esac
done done
trap 'rm -f $tmp' EXIT TERM INT QUIT trap 'rm -f $tmp' EXIT HUP INT QUIT TERM
tmp=$(mktemp /tmp/hello.XXXXXXXX) || exit 1 tmp=$(mktemp /tmp/hello.XXXXXXXX) || exit 1
echo '#!/bin/sh' > $tmp echo '#!/bin/sh' > $tmp
echo exit >> $tmp echo exit >> $tmp