xref: /aosp_15_r20/external/ltp/tools/lib.sh (revision 49cdfc7efb34551c7342be41a7384b9c40d7cab7)
1*49cdfc7eSAndroid Build Coastguard Worker#!/bin/sh
2*49cdfc7eSAndroid Build Coastguard Worker# Copyright (c) 2023 Petr Vorel <[email protected]>
3*49cdfc7eSAndroid Build Coastguard Worker
4*49cdfc7eSAndroid Build Coastguard Workerask()
5*49cdfc7eSAndroid Build Coastguard Worker{
6*49cdfc7eSAndroid Build Coastguard Worker	local msg="$1"
7*49cdfc7eSAndroid Build Coastguard Worker	local answer
8*49cdfc7eSAndroid Build Coastguard Worker
9*49cdfc7eSAndroid Build Coastguard Worker	printf "\n$msg. Proceed? [N/y]: "
10*49cdfc7eSAndroid Build Coastguard Worker	read answer
11*49cdfc7eSAndroid Build Coastguard Worker	case "$answer" in
12*49cdfc7eSAndroid Build Coastguard Worker		[Yy]*) : ;;
13*49cdfc7eSAndroid Build Coastguard Worker		*) exit 2
14*49cdfc7eSAndroid Build Coastguard Worker	esac
15*49cdfc7eSAndroid Build Coastguard Worker}
16*49cdfc7eSAndroid Build Coastguard Worker
17*49cdfc7eSAndroid Build Coastguard Workerquit()
18*49cdfc7eSAndroid Build Coastguard Worker{
19*49cdfc7eSAndroid Build Coastguard Worker	printf "\n$@\n" >&2
20*49cdfc7eSAndroid Build Coastguard Worker	exit 1
21*49cdfc7eSAndroid Build Coastguard Worker}
22*49cdfc7eSAndroid Build Coastguard Worker
23*49cdfc7eSAndroid Build Coastguard Workerrod()
24*49cdfc7eSAndroid Build Coastguard Worker{
25*49cdfc7eSAndroid Build Coastguard Worker	eval "$@" || quit "$@ failed"
26*49cdfc7eSAndroid Build Coastguard Worker}
27*49cdfc7eSAndroid Build Coastguard Worker
28*49cdfc7eSAndroid Build Coastguard Workertitle()
29*49cdfc7eSAndroid Build Coastguard Worker{
30*49cdfc7eSAndroid Build Coastguard Worker	echo "===== $1 ====="
31*49cdfc7eSAndroid Build Coastguard Worker}
32